feat: 交接需要校验物料是否一致
This commit is contained in:
parent
369c452dd5
commit
6d904341a0
|
@ -952,9 +952,9 @@ class HandoverSerializer(CustomModelSerializer):
|
|||
if attrs["type"] == Handover.H_CHANGE:
|
||||
if "material_changed" not in attrs:
|
||||
raise ParseError("必须指定改版后的物料")
|
||||
|
||||
|
||||
new_state = None
|
||||
if mtype == Handover.H_MERGE:
|
||||
new_state = None
|
||||
new_wm:WMaterial = attrs.get("new_wm", None)
|
||||
if new_wm:
|
||||
attrs['new_batch'] = new_wm.batch
|
||||
|
@ -992,15 +992,17 @@ class HandoverSerializer(CustomModelSerializer):
|
|||
tracking = attrs["material"].tracking
|
||||
for ind, item in enumerate(attrs['handoverb']):
|
||||
wm = item["wm"]
|
||||
if mtype == Handover.H_MERGE:
|
||||
if new_state is None:
|
||||
new_state = wm.state
|
||||
new_defect = wm.defect
|
||||
else:
|
||||
if new_state != wm.state:
|
||||
raise ParseError(f'第{ind+1}行-合并的物料状态不一致')
|
||||
if new_defect != wm.defect:
|
||||
raise ParseError(f'第{ind+1}行-合并的物料缺陷不一致')
|
||||
if new_state is None:
|
||||
new_material = wm.material
|
||||
new_state = wm.state
|
||||
new_defect = wm.defect
|
||||
else:
|
||||
if new_material != wm.material:
|
||||
raise ParseError(f'第{ind+1}行-的物料不一致')
|
||||
if new_state != wm.state:
|
||||
raise ParseError(f'第{ind+1}行-的物料状态不一致')
|
||||
if new_defect != wm.defect:
|
||||
raise ParseError(f'第{ind+1}行-的物料缺陷不一致')
|
||||
if tracking == Material.MA_TRACKING_SINGLE:
|
||||
handoverbw = item.get("handoverbw", [])
|
||||
if handoverbw:
|
||||
|
|
Loading…
Reference in New Issue