feat: 添加mlog和handover的锁
This commit is contained in:
parent
8a039094cf
commit
316931fb40
|
@ -24,6 +24,7 @@ from django.db.models import Count, Q
|
|||
from apps.utils.tasks import ctask_run
|
||||
from apps.mtm.models import Process
|
||||
from apps.mtm.services_2 import cal_material_count
|
||||
from apps.utils.lock import lock_model_record_d_func
|
||||
|
||||
myLogger = logging.getLogger('log')
|
||||
|
||||
|
@ -146,7 +147,7 @@ def get_pcoal_heat(year_s: int, month_s: int, day_s: int):
|
|||
myLogger.error(f'获取煤粉热值失败,{e}, {year_s}, {month_s}, {day_s}', exc_info=True)
|
||||
return 25000
|
||||
|
||||
|
||||
@lock_model_record_d_func(Mlog)
|
||||
def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]):
|
||||
"""
|
||||
生产日志提交后需要执行的操作
|
||||
|
@ -398,7 +399,7 @@ def mlog_submit(mlog: Mlog, user: User, now: Union[datetime.datetime, None]):
|
|||
if wprIds:
|
||||
ana_wpr_thread(wprIds, mlog.mgroup)
|
||||
|
||||
|
||||
@lock_model_record_d_func(Mlog)
|
||||
def mlog_revert(mlog: Mlog, user: User, now: Union[datetime.datetime, None]):
|
||||
"""日志撤回
|
||||
"""
|
||||
|
@ -710,7 +711,7 @@ def update_mtask(mtask: Mtask, fill_way: int = 10):
|
|||
utask.state = Utask.UTASK_SUBMIT
|
||||
utask.save()
|
||||
|
||||
|
||||
@lock_model_record_d_func(Handover)
|
||||
def handover_submit(handover:Handover, user: User, now: Union[datetime.datetime, None]):
|
||||
"""
|
||||
交接提交后需要执行的操作
|
||||
|
@ -938,7 +939,7 @@ def handover_submit(handover:Handover, user: User, now: Union[datetime.datetime,
|
|||
|
||||
ana_batch_thread(xbatchs=batches)
|
||||
|
||||
|
||||
@lock_model_record_d_func(Handover)
|
||||
def handover_revert(handover:Handover, handler:User=None):
|
||||
if handover.submit_time is None:
|
||||
raise ParseError('该交接单未提交!')
|
||||
|
|
|
@ -37,6 +37,7 @@ from django.db.models import Q
|
|||
from apps.utils.tools import convert_ordereddict, update_dict
|
||||
from django.db.models import Count
|
||||
from datetime import datetime, timedelta
|
||||
from apps.utils.lock import lock_model_record_d_method
|
||||
|
||||
|
||||
# Create your views here.
|
||||
|
@ -226,7 +227,7 @@ class MlogViewSet(CustomModelViewSet):
|
|||
# data = list(data_dict.values())
|
||||
return data
|
||||
|
||||
@transaction.atomic
|
||||
@lock_model_record_d_method(Mlog)
|
||||
def perform_destroy(self, instance):
|
||||
if instance.submit_time is not None:
|
||||
raise ParseError('日志已提交不可变动')
|
||||
|
@ -438,7 +439,7 @@ class HandoverViewSet(CustomModelViewSet):
|
|||
'material__number', 'material__specification', 'batch', 'material__model', 'b_handover__batch', "new_batch", "wm__batch"]
|
||||
prefetch_related_fields = ["b_handover"]
|
||||
|
||||
@transaction.atomic
|
||||
@lock_model_record_d_method(Handover)
|
||||
def perform_destroy(self, instance:Handover):
|
||||
user = self.request.user
|
||||
if instance.submit_time is not None:
|
||||
|
|
Loading…
Reference in New Issue