diff --git a/apps/wpm/models.py b/apps/wpm/models.py index 50d3e68a..4276c7b9 100644 --- a/apps/wpm/models.py +++ b/apps/wpm/models.py @@ -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: 生成记录的缺陷记录"""