fix: mlog 的cal_count_notok_full的bug 2

This commit is contained in:
caoqianming 2025-06-06 16:46:41 +08:00
parent c2770eed57
commit 6e93d7cd68
1 changed files with 11 additions and 11 deletions

View File

@ -420,17 +420,17 @@ class Mlogb(BaseModel):
if self.count_ok_full < 0:
raise ParseError("完全合格数不能小于0")
self.save(update_fields=["count_ok", "count_notok", "count_ok_full"])
# mlog = self.mlog
# if mlog:
# mqs2 = MlogbDefect.get_defect_qs_from_mlog(mlog, "out")
# count_notok = mqs2.filter(defect__okcate=30).aggregate(total=Sum("count"))["total"] or 0
# count_notok_full = mqs2.exclude(defect__okcate=10).aggregate(total=Sum("count"))["total"] or 0
# mlog.count_ok_full = self.count_real - count_notok_full
# if mlog.count_ok_full < 0:
# raise ParseError("完全合格数不能小于0")
# mlog.count_notok = count_notok
# mlog.count_ok = self.count_real - count_notok
# mlog.save(update_fields=["count_ok", "count_notok", "count_ok_full"])
mlog = self.mlog
if mlog:
mqs2 = MlogbDefect.get_defect_qs_from_mlog(mlog, "out")
count_notok = mqs2.filter(defect__okcate=30).aggregate(total=Sum("count"))["total"] or 0
count_notok_full = mqs2.exclude(defect__okcate=10).aggregate(total=Sum("count"))["total"] or 0
mlog.count_ok_full = self.count_real - count_notok_full
if mlog.count_ok_full < 0:
raise ParseError("完全合格数不能小于0")
mlog.count_notok = count_notok
mlog.count_ok = self.count_real - count_notok
mlog.save(update_fields=["count_ok", "count_notok", "count_ok_full"])
class MlogbDefect(BaseModel):
"""TN: 生成记录的缺陷记录"""