feat: 日志操作时对有ticket的进行处理
This commit is contained in:
parent
c3338d05c2
commit
7d2d74ee80
|
|
@ -21,6 +21,7 @@ from .serializers import (SflogExpSerializer, SfLogSerializer, StLogSerializer,
|
||||||
MlogbOutUpdateSerializer, FmlogSerializer, FmlogUpdateSerializer, BatchStSerializer)
|
MlogbOutUpdateSerializer, FmlogSerializer, FmlogUpdateSerializer, BatchStSerializer)
|
||||||
from .services import mlog_submit, handover_submit, mlog_revert
|
from .services import mlog_submit, handover_submit, mlog_revert
|
||||||
from apps.wpm.services import mlog_submit_validate, generate_new_batch
|
from apps.wpm.services import mlog_submit_validate, generate_new_batch
|
||||||
|
from apps.wf.models import State
|
||||||
# Create your views here.
|
# Create your views here.
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -164,12 +165,18 @@ class MlogViewSet(CustomModelViewSet):
|
||||||
def perform_destroy(self, instance):
|
def perform_destroy(self, instance):
|
||||||
if instance.submit_time is not None:
|
if instance.submit_time is not None:
|
||||||
raise ParseError('日志已提交不可变动')
|
raise ParseError('日志已提交不可变动')
|
||||||
|
if instance.ticket and instance.ticket.state != State.STATE_TYPE_START:
|
||||||
|
raise ParseError('该日志存在审批!')
|
||||||
# delete_auditlog(instance, instance.id)
|
# delete_auditlog(instance, instance.id)
|
||||||
|
if instance.ticket:
|
||||||
|
instance.ticket.delete()
|
||||||
instance.delete()
|
instance.delete()
|
||||||
|
|
||||||
@transaction.atomic
|
@transaction.atomic
|
||||||
def perform_update(self, serializer):
|
def perform_update(self, serializer):
|
||||||
ins = serializer.instance
|
ins = serializer.instance
|
||||||
|
if ins.ticket and ins.ticket.state != State.STATE_TYPE_START:
|
||||||
|
raise ParseError('该日志在审批中不可修改!')
|
||||||
if ins.submit_time is not None:
|
if ins.submit_time is not None:
|
||||||
raise ParseError('该日志已提交!')
|
raise ParseError('该日志已提交!')
|
||||||
# val_old = MlogSerializer(instance=ins).data
|
# val_old = MlogSerializer(instance=ins).data
|
||||||
|
|
@ -195,6 +202,8 @@ class MlogViewSet(CustomModelViewSet):
|
||||||
修改日志
|
修改日志
|
||||||
"""
|
"""
|
||||||
ins = self.get_object()
|
ins = self.get_object()
|
||||||
|
if ins.ticket and ins.ticket.state != State.STATE_TYPE_START:
|
||||||
|
raise ParseError('该日志在审批中不可修改!')
|
||||||
sr = MlogChangeSerializer(instance=ins, data=request.data)
|
sr = MlogChangeSerializer(instance=ins, data=request.data)
|
||||||
sr.is_valid(raise_exception=True)
|
sr.is_valid(raise_exception=True)
|
||||||
sr.save()
|
sr.save()
|
||||||
|
|
@ -229,6 +238,8 @@ class MlogViewSet(CustomModelViewSet):
|
||||||
撤回日志提交
|
撤回日志提交
|
||||||
"""
|
"""
|
||||||
ins: Mlog = self.get_object()
|
ins: Mlog = self.get_object()
|
||||||
|
if ins.ticket:
|
||||||
|
raise ParseError('该日志存在审批!')
|
||||||
user = request.user
|
user = request.user
|
||||||
if ins.submit_time is None:
|
if ins.submit_time is None:
|
||||||
raise ParseError('日志未提交不可撤销')
|
raise ParseError('日志未提交不可撤销')
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue