任务报送批量确认

This commit is contained in:
caoqianming 2021-04-30 13:24:34 +08:00
parent eada0465d9
commit f0ec4691bc
4 changed files with 59 additions and 3 deletions

View File

@ -96,4 +96,11 @@ export function getmytasklist(query) {
method: 'get',
params: query
})
}
export function confirmTaskdept(id) {
return request({
url: `/supervision/taskdept/${id}/confirm/`,
method: 'put'
})
}

View File

@ -124,6 +124,25 @@
{{ scope.row.confirm_rate }}%
</template>
</el-table-column>
<el-table-column
align="center"
label="操作"
width="240px"
fixed="right"
>
<template slot-scope="scope">
<el-link
v-if="
scope.row.confirm_rate != 100 &&
checkPermission(['record_confirm'])
"
type="warning"
size="small"
@click="handleConfirmDept(scope)"
>确认</el-link
>
</template>
</el-table-column>
</el-table>
</el-card>
<el-card style="margin-top: 2px">
@ -309,7 +328,7 @@
}
</style>
<script>
import { gettask, inittask, gettaskdeptall, starttask, appendtask } from "@/api/task";
import { gettask, inittask, gettaskdeptall, starttask, appendtask, confirmTaskdept } from "@/api/task";
import { getRecordList, updateRecords } from "@/api/record";
import Pagination from "@/components/Pagination";
import taskinit from "@/views/supervision/taskinit";
@ -442,6 +461,12 @@ export default {
}
this.selectRecords = selects;
},
handleConfirmDept(scope){
confirmTaskdept(scope.row.id).then(res=>{
this.getRecordList()
this.gettaskdeptall()
})
},
handleUp2(){
if (this.selectRecords.length) {
this.$prompt('请输入备注内容', '提示').then(({ value }) => {

View File

@ -1,12 +1,13 @@
from apps.supervision.serializers import TaskDeptSerializer
from django.urls import path, include
from rest_framework import routers
from .views import ContentViewSet, TaskViewSet,RecordViewSet
from .views import ContentViewSet, TaskViewSet,RecordViewSet, TaskDeptViewSet
router = routers.DefaultRouter()
router.register('content', ContentViewSet, basename="content")
router.register('task', TaskViewSet, basename="task")
router.register('record', RecordViewSet, basename="record")
router.register('taskdept', TaskDeptViewSet, basename="taskdept")
urlpatterns = [
path('', include(router.urls))
]

View File

@ -331,3 +331,26 @@ class RecordViewSet(PageOrNot, CreateUpdateCustomMixin, ModelViewSet):
return Response('记录状态错误', status=status.HTTP_400_BAD_REQUEST)
class TaskDeptViewSet(ModelViewSet):
"""
任务关联部门 操作
"""
perms_map = {'get': '*', 'post': 'task_update',
'put': 'task_update', 'delete': 'task_update'}
queryset = TaskDept.objects.all()
serializer_class = TaskDeptSerializer
filterset_fields = ['task','dept']
ordering = ['dept__sort']
@action(methods=['put'], detail=True, perms_map = {'put':'record_confirm'})
def confirm(self, request, *args, **kwargs):
"""
批量确认
"""
obj = self.get_object()
if obj.up_rate == 100:
Record.objects.filter(task=obj.task, belong_dept=obj.dept).update(state='已确认')
obj.confirm_rate = 100
obj.save()
return Response(status=status.HTTP_200_OK)
return Response('报送未完成', status=status.HTTP_400_BAD_REQUEST)