From 845a510068817a84ba130ae81119e01a322c5fc9 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Mon, 18 Dec 2023 08:08:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20mlog=E6=92=A4=E5=9B=9E1=E6=9C=AA?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/services.py | 4 ++++ apps/wpm/views.py | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/apps/wpm/services.py b/apps/wpm/services.py index b5c4f462..de1f4c14 100644 --- a/apps/wpm/services.py +++ b/apps/wpm/services.py @@ -184,6 +184,10 @@ def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]): mlog.submit_user = user mlog.save() +def mlog_revert(mlog: Mlog): + """日志撤回 + """ + pass def update_mtask(mtask: Mtask): from apps.pm.models import Utask diff --git a/apps/wpm/views.py b/apps/wpm/views.py index f07e037f..9df354d8 100644 --- a/apps/wpm/views.py +++ b/apps/wpm/views.py @@ -174,6 +174,20 @@ class MlogViewSet(CustomModelViewSet): create_auditlog('submit', ins, vdata_new, vdata_old) return Response() + @action(methods=['post'], detail=True, perms_map={'post': 'mlog.submit'}, serializer_class=Serializer) + @transaction.atomic + def revert(self, request, *args, **kwargs): + """撤回日志提交 + + 撤回日志提交 + """ + ins: Mlog = self.get_object() + user = request.user + if user != ins.submit_user: + raise ParseError('非提交人不可撤销!') + + return Response() + @action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=MlogRelatedSerializer) @transaction.atomic def related_first(self, request, *args, **kwargs):