feat: 单个mlog submit
This commit is contained in:
parent
1a640d9a70
commit
8abc008ddf
|
@ -4,6 +4,7 @@ from rest_framework.decorators import action
|
|||
from rest_framework.exceptions import ParseError
|
||||
from rest_framework.mixins import DestroyModelMixin, ListModelMixin, UpdateModelMixin
|
||||
from rest_framework.response import Response
|
||||
from rest_framework.serializers import Serializer
|
||||
|
||||
from apps.mtm.models import Material
|
||||
from apps.pm.models import Mtask
|
||||
|
@ -13,7 +14,7 @@ from apps.utils.mixins import BulkCreateModelMixin
|
|||
from .filters import SfLogExpFilter, SfLogFilter, WMaterialFilter, MlogFilter
|
||||
from .models import SfLog, SfLogExp, StLog, WMaterial, Mlog, Handover
|
||||
from .serializers import SflogExpSerializer, SfLogSerializer, StLogSerializer, WMaterialSerializer, MlogSerializer, MlogRelatedSerializer, DeptBatchSerializer, HandoverSerializer, GenHandoverSerializer
|
||||
|
||||
from .services import mlog_submit, update_mtask
|
||||
# Create your views here.
|
||||
|
||||
|
||||
|
@ -129,6 +130,20 @@ class MlogViewSet(CustomModelViewSet):
|
|||
raise ParseError('任务已提交日志不可变动')
|
||||
return super().perform_destroy(instance)
|
||||
|
||||
@action(methods=['post'], detail=True, perms_map={'post': 'mlog.submit'}, serializer_class=Serializer)
|
||||
@transaction.atomic
|
||||
def submit(self, request):
|
||||
"""日志提交(变动车间库存)
|
||||
|
||||
日志提交
|
||||
"""
|
||||
ins: Mlog = self.get_object()
|
||||
if ins.submit_time is None:
|
||||
mlog_submit(ins, self.request.user, None)
|
||||
if ins.mtask:
|
||||
update_mtask(ins.mtask)
|
||||
return Response()
|
||||
|
||||
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=MlogRelatedSerializer)
|
||||
@transaction.atomic
|
||||
def related_first(self, request):
|
||||
|
|
Loading…
Reference in New Issue