fix: 添加保存num_issue接口
This commit is contained in:
parent
1269e40a6f
commit
cbf274cc7c
|
|
@ -140,13 +140,13 @@ class ValidateMixin:
|
|||
|
||||
class BaseMeta:
|
||||
fields = '__all__'
|
||||
read_only_fields = ['create_time', 'update_time', 'create_by', 'update_by', 'is_deleted']
|
||||
read_only_fields = ['create_time', 'update_time', 'create_by', 'update_by', 'is_deleted', 'belong_dept']
|
||||
|
||||
class PgoalDeptSerializer(ValidateMixin, serializers.ModelSerializer):
|
||||
goal_file_ = FileSimpleSerializer(source='goal_file', read_only=True)
|
||||
class Meta(BaseMeta):
|
||||
model = PgoalDept
|
||||
read_only_fields = BaseMeta.read_only_fields + ['goal_value_a', 'goal_value_c', 'goal_files', 'goal_key']
|
||||
read_only_fields = BaseMeta.read_only_fields + ['goal_value_a', 'goal_value_c', 'goal_files', 'goal_key', 'goal_file_', 'goal_o_file']
|
||||
|
||||
|
||||
class RcSerializer(ValidateMixin, serializers.ModelSerializer):
|
||||
|
|
@ -176,4 +176,12 @@ class OinspectSerializer(ValidateMixin, serializers.ModelSerializer):
|
|||
|
||||
|
||||
class NoRecordSerializer(serializers.Serializer):
|
||||
key = serializers.ChoiceField(label='字段key', choices=['num_error', 'num_overdue', 'num_complaint', 'num_pt', 'num_risk', 'num_oinspect'])
|
||||
key = serializers.ChoiceField(label='字段key', choices=['num_error', 'num_overdue', 'num_complaint', 'num_pt', 'num_risk', 'num_oinspect'])
|
||||
|
||||
|
||||
class UpdateFieldSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Task2Do
|
||||
fields = ['num_issue', 'num_expect']
|
||||
extra_kwargs = {'num_issue': {'required': True}, 'num_expect': {'required': True}}
|
||||
|
|
@ -475,7 +475,7 @@ class Task2ViewSet(CreateUpdateCustomMixin, ModelViewSet):
|
|||
if task2.type == Task2.TASK2_F:
|
||||
count_all = 5
|
||||
for i in vdata['ids']:
|
||||
Task2Do.objects.get_or_create(task2=task2, belong_dept=i, defaults={'task2': task2, 'belong_dept': i, 'count_all': count_all})
|
||||
Task2Do.objects.get_or_create(task2=task2, belong_dept=i, defaults={'task2': task2, 'belong_dept': i, 'count_all': count_all, 'create_by': self.request.user})
|
||||
return Response()
|
||||
|
||||
|
||||
|
|
@ -484,7 +484,7 @@ class Task2DoViewSet(ListModelMixin, GenericViewSet):
|
|||
queryset = Task2Do.objects.select_related('belong_dept', 'task2').all()
|
||||
serializer_class = Task2DoSerializer
|
||||
ordering = ['belong_dept__sort']
|
||||
|
||||
filterset_fields = ['task2', 'belong_dept']
|
||||
cfields = ['num_issue', 'num_expect', 'num_error', 'num_overdue', 'num_complaint', 'num_pt', 'num_risk', 'num_oinspect']
|
||||
|
||||
@classmethod
|
||||
|
|
@ -498,6 +498,20 @@ class Task2DoViewSet(ListModelMixin, GenericViewSet):
|
|||
instance.count_up = count_up
|
||||
instance.save()
|
||||
|
||||
@action(methods=['put'], detail=False, perms_map = {'post':'task2do'}, serializer_class=UpdateFieldSerializer)
|
||||
def save_num(self, request, *args, **kwargs):
|
||||
"""保存数值
|
||||
|
||||
保存数值
|
||||
"""
|
||||
obj = self.get_object()
|
||||
obj.num_issue = request.data.get('num_issue', 0)
|
||||
obj.num_expect = request.data.get('num_expect', 0)
|
||||
obj.update_by = request.user
|
||||
obj.save()
|
||||
self.countup_task2do(obj)
|
||||
return Response()
|
||||
|
||||
@action(methods=['put'], detail=True, perms_map = {'post':'task2do'}, serializer_class=NoRecordSerializer)
|
||||
def no_record(self, request, *args, **kwargs):
|
||||
"""没有记录
|
||||
|
|
@ -532,6 +546,7 @@ class Domixin:
|
|||
perms_map = {'get': '*', 'put': 'task2do', 'post': 'task2do', 'delete': 'task2do'}
|
||||
ordering = ['create_time']
|
||||
ordering_fields = ['create_time', 'belong_dept__sort']
|
||||
filterset_fields = ['task2do', 'task2do__task2', 'task2do__belong_dept']
|
||||
|
||||
def countnum_task2do_field(self, task2do):
|
||||
for k, v in self.count_dict:
|
||||
|
|
|
|||
Loading…
Reference in New Issue