diff --git a/apps/pm/services.py b/apps/pm/services.py index 16a6af8e..b65c6daa 100644 --- a/apps/pm/services.py +++ b/apps/pm/services.py @@ -261,7 +261,7 @@ class PmService: from apps.wpm.services import mlog_submit, update_mtask now = timezone.now() if mtask.state == Mtask.MTASK_ASSGINED: - mlogs = Mlog.objects.filter(mtask=mtask) + mlogs = Mlog.objects.filter(mtask=mtask, submit_time=None) if mlogs.count() == 0: raise ParseError(f'{mtask.mgroup.name}_未填写日志') for mlog in mlogs: diff --git a/apps/wpm/services.py b/apps/wpm/services.py index 0e4a5b75..4ee8af54 100644 --- a/apps/wpm/services.py +++ b/apps/wpm/services.py @@ -140,6 +140,8 @@ def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]): """ 生产日志提交后需要执行的操作 """ + if mlog.submit_time is not None: + return if now is None: now = timezone.now() if now.date() < mlog.handle_date: @@ -186,6 +188,8 @@ def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]): def mlog_revert(mlog: Mlog, user: User, now: Union[datetime.datetime, None]): """日志撤回 """ + if mlog.submit_time is None: + return if now is None: now = timezone.now() belong_dept = mlog.mgroup.belong_dept