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