feat: mlogbw也进行mlogb.cal_count_notok()
This commit is contained in:
parent
53c9afbca9
commit
be5dc161de
|
@ -497,13 +497,14 @@ class Mlogbw(BaseModel):
|
|||
note = models.TextField('备注', null=True, blank=True)
|
||||
|
||||
@classmethod
|
||||
def cal_count_notok(cls, mlogb: Mlog):
|
||||
def cal_count_notok(cls, mlogb: Mlogb):
|
||||
from apps.qm.models import Defect
|
||||
# 锁定mlogb以防止并发修改
|
||||
# mlogb:Mlogb = Mlogb.objects.select_for_update().get(pk=mlogb.pk)
|
||||
count = Mlogbw.objects.filter(mlogb=mlogb).count()
|
||||
if mlogb.material_in:
|
||||
mlogb.count_use = count
|
||||
mlogb.save(update_fields=["count_use"])
|
||||
elif mlogb.material_out:
|
||||
mlogb.count_real = count
|
||||
count_notok = 0
|
||||
|
@ -520,7 +521,8 @@ class Mlogbw(BaseModel):
|
|||
MlogbDefect.objects.filter(mlogb=mlogb).exclude(id__in=md_ids).delete()
|
||||
mlogb.count_notok = count_notok
|
||||
mlogb.count_ok = count - mlogb.count_notok
|
||||
mlogb.save()
|
||||
mlogb.save()
|
||||
mlogb.cal_count_notok()
|
||||
|
||||
class Handover(CommonADModel):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue