web工单处理
This commit is contained in:
@@ -158,6 +158,15 @@
|
||||
@cancel="showDetailDialog = false"
|
||||
/>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 指派工单弹窗 -->
|
||||
<WorkcaseAssign
|
||||
v-model="showAssignDialog"
|
||||
:workcase-id="assignWorkcaseId"
|
||||
:current-processor="assignCurrentProcessor"
|
||||
action="assign"
|
||||
@success="handleAssignSuccess"
|
||||
/>
|
||||
</AdminLayout>
|
||||
</template>
|
||||
|
||||
@@ -168,6 +177,7 @@ import { Plus, Search } from 'lucide-vue-next'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { workcaseAPI } from '@/api/workcase'
|
||||
import WorkcaseDetail from '@/views/public/workcase/WorkcaseDetail/WorkcaseDetail.vue'
|
||||
import { WorkcaseAssign } from '@/components'
|
||||
import type { TbWorkcaseDTO, TbWorkcaseProcessDTO } from '@/types/workcase'
|
||||
import type { PageRequest, PageParam } from 'shared/types'
|
||||
|
||||
@@ -183,6 +193,11 @@ const showDetailDialog = ref(false)
|
||||
const currentWorkcase = ref<TbWorkcaseDTO>({})
|
||||
const loading = ref(false)
|
||||
|
||||
// 指派弹窗相关
|
||||
const showAssignDialog = ref(false)
|
||||
const assignWorkcaseId = ref('')
|
||||
const assignCurrentProcessor = ref('')
|
||||
|
||||
const formData = ref<TbWorkcaseDTO>({
|
||||
username: '',
|
||||
phone: '',
|
||||
@@ -254,30 +269,19 @@ const createWorkcaseAPI = async () => {
|
||||
}
|
||||
|
||||
/**
|
||||
* 指派工单 - API调用
|
||||
* 指派工单 - 打开指派弹窗
|
||||
*/
|
||||
const assignWorkcaseAPI = async (workcase: TbWorkcaseDTO) => {
|
||||
const { value: processor } = await ElMessageBox.prompt('请输入处理人ID', '指派工单', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消'
|
||||
}).catch(() => ({ value: '' }))
|
||||
|
||||
if (!processor) return
|
||||
|
||||
const process: TbWorkcaseProcessDTO = {
|
||||
workcaseId: workcase.workcaseId,
|
||||
action: 'assign',
|
||||
processor: processor,
|
||||
message: '工单指派'
|
||||
}
|
||||
|
||||
const res = await workcaseAPI.createWorkcaseProcess(process)
|
||||
if (res.success) {
|
||||
ElMessage.success('指派成功')
|
||||
loadWorkcases()
|
||||
} else {
|
||||
ElMessage.error(res.message || '指派失败')
|
||||
}
|
||||
assignWorkcaseId.value = workcase.workcaseId || ''
|
||||
assignCurrentProcessor.value = workcase.processor || ''
|
||||
showAssignDialog.value = true
|
||||
}
|
||||
|
||||
/**
|
||||
* 指派成功回调
|
||||
*/
|
||||
const handleAssignSuccess = () => {
|
||||
loadWorkcases()
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user