diff --git a/apps/wpm/models.py b/apps/wpm/models.py index 31337a0f..6491731b 100644 --- a/apps/wpm/models.py +++ b/apps/wpm/models.py @@ -633,6 +633,8 @@ class BatchSt(BaseModel): return node, False else: version = 1 + if mio is None and handover is None and mlog is None: + raise ParseError("mio or handover or mlog must be provided") # 带有来源的批次获取,需检查批次号是否可用 if cls.objects.filter(batch=batch).exists(): if reuse_node: @@ -641,11 +643,8 @@ class BatchSt(BaseModel): raise ParseError(f"{batch}-该批次号因物料不同不可引用") return node, False else: - raise ParseError(f"{batch}-该批次号不可使用") - # latest_version = BatchSt.objects.filter(batch=batch).aggregate(Max("version"))["version__max"] - # version = latest_version + 1 - if mio is None and handover is None and mlog is None: - raise ParseError("mio or handover or mlog must be provided") + latest_version = BatchSt.objects.filter(batch=batch).aggregate(Max("version"))["version__max"] + version = latest_version + 1 ins = cls.objects.create(batch=batch, mio=mio, handover=handover, mlog=mlog, material_start=material_start, version=version) return ins, True