diff --git a/client/src/views/supervision/recorddo.vue b/client/src/views/supervision/recorddo.vue index 10a87ba..3fde0c2 100644 --- a/client/src/views/supervision/recorddo.vue +++ b/client/src/views/supervision/recorddo.vue @@ -23,7 +23,7 @@ v-model="record.note" placeholder="" type="textarea" - :readonly="data.action!= 'update'" + :readonly="data.action!= 'update' && data.action != 'reject'" > @@ -51,13 +51,14 @@
@@ -115,9 +116,9 @@ export default { initList(){ for(var i=0;i{ this.$message.success('成功') + this.$emit('handleDo') }) } else if(this.data.action=='up'){ + var files = [] + for(var i=0;i{ this.$message.success('成功') + this.$emit('handleDo') }) } else if(this.data.action=='reject'){ rejectRecord(this.record.id, this.record).then(res=>{ this.$message.success('成功') + this.$emit('handleDo') }) + } else if(this.data.action=='confirm'){ confirmRecord(this.record.id).then(res=>{ this.$message.success('成功') + this.$emit('handleDo') }) } - this.$emit('handleDo') + } }, }; diff --git a/client/src/views/supervision/report.vue b/client/src/views/supervision/report.vue index aad5598..5cf05c4 100644 --- a/client/src/views/supervision/report.vue +++ b/client/src/views/supervision/report.vue @@ -1,92 +1,80 @@ \ No newline at end of file diff --git a/server/apps/supervision/filters.py b/server/apps/supervision/filters.py index b3416b7..4bc0dfb 100644 --- a/server/apps/supervision/filters.py +++ b/server/apps/supervision/filters.py @@ -10,4 +10,4 @@ class RecordFilter(filters.FilterSet): state = filters.CharFilter(field_name='state',lookup_expr='icontains') class Meta: model = Record - fields = ['up_date','content__name','belong_dept','state', 'task'] + fields = ['up_date','content__name','belong_dept','state', 'task', 'content'] diff --git a/server/apps/supervision/views.py b/server/apps/supervision/views.py index f45906d..2137426 100644 --- a/server/apps/supervision/views.py +++ b/server/apps/supervision/views.py @@ -108,8 +108,8 @@ def cal_task_rate(task): count = objs.count() up_rate = objs.filter(state__in=['已确认','已上报']).count()/count confirm_rate = objs.filter(state='已确认').count()/count - task.up_rate = int(up_rate) - task.confirm_rate = int(confirm_rate) + task.up_rate = int(up_rate*100) + task.confirm_rate = int(confirm_rate*100) task.save() class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelViewSet): @@ -118,7 +118,7 @@ class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelView queryset = Record.objects.all() serializer_class = RecordSerializer search_fields = ['content__name','task__name'] - ordering = ['-create_time'] + ordering = ['create_time'] filter_class = RecordFilter # 过滤类 def update(self, request, *args, **kwargs): @@ -134,8 +134,9 @@ class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelView """ obj = self.get_object() if obj.state == '待上报' or obj.state == '待整改': - if request.data.get('files', None): - obj.files = request.data['files'] + if 'files' in request.data: + obj.files.clear() + obj.files.add(*request.data['files']) if request.data.get('noteb', None): obj.noteb = request.data['noteb'] if request.data.get('is_yes', True): @@ -144,6 +145,8 @@ class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelView obj.up_user = request.user obj.up_date = timezone.now() obj.save() + if obj.task: + cal_task_rate(obj.task) return Response(status=status.HTTP_200_OK) return Response('记录状态错误', status=status.HTTP_400_BAD_REQUEST) @@ -156,10 +159,13 @@ class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelView if obj.state == '已上报': if request.data.get('note', None): obj.note = request.data['note'] + obj.state = '待整改' obj.save() + if obj.task: + cal_task_rate(obj.task) return Response(status=status.HTTP_200_OK) else: - return Response('请填写备注', status=status.HTTP_200_OK) + return Response('请填写备注', status=status.HTTP_400_BAD_REQUEST) return Response('记录状态错误', status=status.HTTP_400_BAD_REQUEST) @action(methods=['put'], detail=True, perms_map = {'post':'record_confirm'}) @@ -171,6 +177,8 @@ class RecordViewSet(RbacFilterSet, PageOrNot, CreateUpdateCustomMixin, ModelView if obj.state == '已上报': obj.state = '已确认' obj.save() + if obj.task: + cal_task_rate(obj.task) return Response(status=status.HTTP_200_OK) return Response('记录状态错误', status=status.HTTP_400_BAD_REQUEST)