diff --git a/hb_server/apps/wf/models.py b/hb_server/apps/wf/models.py index 740928c..c4cfc29 100644 --- a/hb_server/apps/wf/models.py +++ b/hb_server/apps/wf/models.py @@ -169,7 +169,7 @@ class TicketFlow(BaseModel): 工单流转日志 """ ticket = models.ForeignKey(Ticket, on_delete=models.CASCADE, verbose_name='关联工单') - transition = models.ForeignKey(Transition, verbose_name='流转id', help_text='与worklow.Transition关联, 为0时表示认为干预的操作', on_delete=models.CASCADE) + transition = models.ForeignKey(Transition, verbose_name='流转id', help_text='与worklow.Transition关联, 为0时表示认为干预的操作', on_delete=models.CASCADE, null=True, blank=True) suggestion = models.CharField('处理意见', max_length=10000, default='', blank=True) participant_type = models.IntegerField('处理人类型', default=0, help_text='0.无处理人,1.个人,2.多人', choices=State.type2_choices) participant = models.ForeignKey(User, verbose_name='处理人', on_delete=models.SET_NULL, null=True, blank=True) diff --git a/hb_server/apps/wf/serializers.py b/hb_server/apps/wf/serializers.py index cddfaff..e674c31 100644 --- a/hb_server/apps/wf/serializers.py +++ b/hb_server/apps/wf/serializers.py @@ -23,7 +23,7 @@ class WorkflowSimpleSerializer(serializers.ModelSerializer): class StateSimpleSerializer(serializers.ModelSerializer): class Meta: model = State - fields = ['id', 'name'] + fields = ['id', 'name', 'type'] class TransitionSerializer(serializers.ModelSerializer): source_state_ = StateSimpleSerializer(source='source_state', read_only=True) diff --git a/hb_server/apps/wf/views.py b/hb_server/apps/wf/views.py index 3c2e13b..9df0518 100644 --- a/hb_server/apps/wf/views.py +++ b/hb_server/apps/wf/views.py @@ -259,6 +259,11 @@ class TicketViewSet(OptimizationMixin, CreateUpdateCustomMixin, CreateModelMixin ticket.participant = request.user.id ticket.save() # 接单日志 + # 更新工单流转记录 + TicketFlow.objects.create(ticket=ticket, state=ticket.state, ticket_data=WfService.get_ticket_all_field_value(ticket), + suggestion='接单处理', participant_type=State.PARTICIPANT_TYPE_PERSONAL, + participant=request.user, transition=None) + return Response() else: raise APIException('无需接单')