feat: mlogchange支持work_start_time

This commit is contained in:
caoqianming 2025-09-02 12:15:29 +08:00
parent 45af751350
commit 28671451b0
1 changed files with 7 additions and 9 deletions

View File

@ -639,8 +639,6 @@ class MlogSerializer(CustomModelSerializer):
attrs['handle_date'] = mtask.end_date
if attrs['handle_date'] != handle_date:
raise ParseError('任务日期与生产日期不一致')
else:
attrs['handle_date'] = handle_date
else:
attrs['handle_date'] = handle_date
@ -688,8 +686,6 @@ class MlogInitSerializer(CustomModelSerializer):
supplier = attrs.get('supplier', None)
if not supplier:
raise ParseError('外协必须选择外协单位')
if attrs.get('work_start_time', None) and 'handle_date' not in attrs:
attrs['handle_date'] = localdate(attrs['work_end_time'])
# 如果已经确定产出则自动获取qct
if attrs.get("material_out", None):
attrs["qct"] = Qct.get(attrs["material_out"], "process", "out")
@ -700,12 +696,14 @@ class MlogInitSerializer(CustomModelSerializer):
class MlogChangeSerializer(CustomModelSerializer):
class Meta:
model = Mlog
fields = ['id', 'work_end_time', 'handle_user', 'note', 'oinfo_json', 'test_file', 'test_user', 'test_time', 'equipment', "team"]
fields = ['id', 'work_start_time', 'work_end_time', 'handle_user', 'note', 'oinfo_json', 'test_file', 'test_user', 'test_time', 'equipment', "team"]
# def validate(self, attrs):
# if attrs.get('work_end_time', None):
# attrs['handle_date'] = localdate(attrs['work_end_time'])
# return attrs
def update(self, instance, validated_data):
work_start_time = validated_data.get('work_start_time', None)
if work_start_time:
mgroup:Mgroup = instance.mgroup
validated_data["handle_date"], validated_data["shift"] = mgroup.get_shift(work_start_time)
return super().update(instance, validated_data)
class CountJsonSerializer(serializers.Serializer):