| | |
| | | @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad" |
| | | @selection-change="selectionTransferTask"> |
| | | <template #menu-left> |
| | | <el-button type="primary" plain @click="reassign">重新指派</el-button> |
| | | <el-button type="primary" v-if="permission.manual_dispatch" plain @click="reassign">手动派工 |
| | | <el-button type="primary" plain @click="reassign(0)">重新指派</el-button> |
| | | <el-button type="primary" v-if="permission.manual_dispatch" plain @click="reassign(1)">手动派工 |
| | | </el-button> |
| | | <el-button type="primary" v-if="permission.auto_dispatch" plain @click="reassign">自动派工 |
| | | <el-button type="primary" v-if="permission.auto_dispatch" plain @click="reassign(2)">自动派工 |
| | | </el-button> |
| | | </template> |
| | | <template #menu="scope"> |
| | |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | <el-dialog title="指派" append-to-body v-model="reassignBox" width="30%"> |
| | | <el-dialog title=" " append-to-body v-model="reassignBox" width="30%"> |
| | | <avue-form ref="reassginform" :option="reassignOption" v-model="reassignForm" @submit="toPerson"></avue-form> |
| | | </el-dialog> |
| | | <el-drawer title="审批" append-to-body v-model="approveBox" size="100%" v-if="approveBox"> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { getList, approve, getAssignee,reassgin } from '@/api/flow/todolist'; |
| | | import { getList, approve, getAssignee,reassgin,manualDispatch,autoDispatch } from '@/api/flow/todolist'; |
| | | import { mapGetters } from 'vuex'; |
| | | import dayjs from 'dayjs'; |
| | | import TodolistLeft from './components/TodolistLeft.vue'; |
| | |
| | | TodolistRightTop |
| | | }, |
| | | data() { |
| | | let rejectText = '驳回';//+this.row.categoryName; |
| | | console.log(this,'ttt'); |
| | | return { |
| | | |
| | | applist: [], |
| | |
| | | span: 24, |
| | | dicData: [ |
| | | { label: '通过', value: 'Y' }, |
| | | { label: rejectText, value: 'N' }, |
| | | { label: '驳回', value: 'N' }, |
| | | ], |
| | | rules: [{ required: true, message: '请选择审批结果', trigger: 'blur' }], |
| | | }, |
| | |
| | | data: [], |
| | | transferTaskSelection: [], |
| | | reassignBox: false, |
| | | reassignType: 0, // 0:重新指派,1:自动派工 2: 自动派工 |
| | | reassignOption: { |
| | | submitBtn: true, |
| | | emptyBtn: false, |
| | |
| | | selectionTransferTask(list) { |
| | | this.transferTaskSelection = list; |
| | | }, |
| | | reassign() {// 重新指派 |
| | | reassign(val) {// 重新指派 |
| | | this.reassignType = val; |
| | | if (this.transferTaskSelection.length === 0) { |
| | | this.$message.warning('请选择需要重新指派的任务'); |
| | | this.$message.warning('请选择需要操作的任务'); |
| | | return; |
| | | } |
| | | if (this.transferTaskSelection.length > 1) { |
| | | if (this.transferTaskSelection.length > 1 && this.reassignType === 0) { |
| | | this.$message.warning('请选择一条'); |
| | | return; |
| | | } |
| | | this.reassignBox = true; |
| | | if(val === 2) { |
| | | this.$confirm('请确认是否进行批量自动派工?', '', { |
| | | confirmButtonText: this.$t('submitText'), |
| | | cancelButtonText: this.$t('cancelText'), |
| | | type: 'warning', |
| | | }).then(() => { |
| | | autoDispatch({ |
| | | taskIds: this.transferTaskSelection.map(v => v.taskId), |
| | | processInstanceIds: this.transferTaskSelection.map(v => v.processInstanceId), |
| | | }).then(res => { |
| | | if(res.data.code !== 200) { |
| | | this.$message.error(res.data.msg); |
| | | return; |
| | | } |
| | | this.$message.success('操作成功'); |
| | | this.onLoad(this.page, this.query); |
| | | |
| | | }).catch(err => { |
| | | this.$message.success('操作失败'); |
| | | }) |
| | | }); |
| | | } else { |
| | | this.reassignBox = true; |
| | | } |
| | | |
| | | |
| | | }, |
| | | toPerson(form, done) { |
| | | this.$confirm('请确认是否指派', '', { |
| | | confirmButtonText: this.$t('submitText'), |
| | | cancelButtonText: this.$t('cancelText'), |
| | | type: 'warning', |
| | | }).then(() => { |
| | | console.log('toPerson', form); |
| | | reassgin({ |
| | | ...form, |
| | | taskId: this.transferTaskSelection[0].taskId, |
| | | processInstanceId: this.transferTaskSelection[0].processInstanceId, |
| | | }).then(res => { |
| | | this.$message.success('指派成功'); |
| | | this.reassignBox = false; |
| | | this.$refs?.reassginform?.resetForm(); |
| | | this.onLoad(this.page, this.query); |
| | | done() |
| | | let tip = '' |
| | | this.reassignType === 1 ? tip = '请确认是否手动派工' : this.reassignType === 2 ? tip = '请确认是否自动派工' : tip = '请确认是否重新指派'; |
| | | if (this.reassignType === 0) { |
| | | this.$confirm(tip, '', { |
| | | confirmButtonText: this.$t('submitText'), |
| | | cancelButtonText: this.$t('cancelText'), |
| | | type: 'warning', |
| | | }).then(() => { |
| | | reassgin({ |
| | | ...form, |
| | | taskId: this.transferTaskSelection[0].taskId, |
| | | processInstanceId: this.transferTaskSelection[0].processInstanceId, |
| | | }).then(res => { |
| | | if(res.data.code !== 200) { |
| | | this.$message.error(res.data.msg); |
| | | return; |
| | | } |
| | | this.$message.success('操作成功'); |
| | | this.reassignBox = false; |
| | | this.$refs?.reassginform?.resetForm(); |
| | | this.onLoad(this.page, this.query); |
| | | done() |
| | | |
| | | }).catch(err => { |
| | | console.error(err); |
| | | done() |
| | | }) |
| | | }); |
| | | }).catch(err => { |
| | | this.$message.error('操作失败'); |
| | | done() |
| | | }) |
| | | }); |
| | | |
| | | } else if (this.reassignType === 1) { |
| | | this.$confirm(tip, '', { |
| | | confirmButtonText: this.$t('submitText'), |
| | | cancelButtonText: this.$t('cancelText'), |
| | | type: 'warning', |
| | | }).then(() => { |
| | | manualDispatch({ |
| | | assignee: form.newAssigneeId, |
| | | comment: form.comment, |
| | | taskIds: this.transferTaskSelection.map(v => v.taskId), |
| | | processInstanceIds: this.transferTaskSelection.map(v => v.processInstanceId), |
| | | }).then(res => { |
| | | if(res.data.code !== 200) { |
| | | this.$message.error(res.data.msg); |
| | | return; |
| | | } |
| | | this.$message.success('操作成功'); |
| | | this.reassignBox = false; |
| | | this.$refs?.reassginform?.resetForm(); |
| | | this.onLoad(this.page, this.query); |
| | | done() |
| | | |
| | | }).catch(err => { |
| | | console.error(err); |
| | | done() |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | done(); |
| | | }, |
| | | handleAction(row, index) { |