From acad9c6acff819b34de64d7ac347781dc5f1fb3e Mon Sep 17 00:00:00 2001 From: caoqianming Date: Sun, 28 Apr 2024 13:10:01 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20stlog=20create=E6=97=B6validate3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/serializers.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) 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):