diff --git a/apps/wpm/serializers.py b/apps/wpm/serializers.py index 7e6e3567..c5946c96 100644 --- a/apps/wpm/serializers.py +++ b/apps/wpm/serializers.py @@ -37,15 +37,17 @@ class StLogSerializer(CustomModelSerializer): def create(self, validated_data): current_sflog_id = validated_data.pop('current_sflog') - current_note = validated_data.pop('note', '') + current_note = validated_data.pop('current_note', '') with transaction.atomic(): - validated_data['sflog'] = get_sflog( + sflog = get_sflog( validated_data['mgroup'], validated_data['start_time']) - if current_sflog_id != validated_data['sflog'].id: + if current_sflog_id != sflog.id: raise ParseError('值班时间与发生时间不一致') instance = super().create(validated_data) + instance.sflog = sflog + instance.save() SfLogExp.objects.create( - sflog=current_sflog, stlog=instance, create_by=self.context['request'].user, note=current_note) + sflog=sflog, stlog=instance, create_by=self.context['request'].user, note=current_note) return instance def update(self, instance, validated_data):