84 lines
1.8 KiB
TypeScript

import request from '@/utils/request'
import type { Task } from './task'
/**
* 管理员分配任务
*/
export const assignTask = (taskId: number, designerId: number) => {
return request.post<Task>(`/admin/tasks/${taskId}/assign`, null, {
params: { designerId }
})
}
/**
* 管理员转移任务
*/
export const transferTask = (taskId: number, newDesignerId: number, reason: string) => {
return request.post<Task>(`/admin/tasks/${taskId}/transfer`, {
newDesignerId,
reason
})
}
/**
* 批量分配任务
*/
export const batchAssignTasks = (taskIds: number[], designerId: number) => {
return request.post<number>('/admin/tasks/batch-assign', {
taskIds,
designerId
})
}
/**
* 调整任务优先级
*/
export const adjustTaskPriority = (taskId: number, priority: string) => {
return request.put<Task>(`/admin/tasks/${taskId}/priority`, null, {
params: { priority }
})
}
/**
* 获取任务池列表(待分配的任务)
*/
export const getTaskPool = () => {
return request.get<Task[]>('/admin/tasks/pool')
}
/**
* 获取所有进行中的任务
*/
export const getInProgressTasks = () => {
return request.get<Task[]>('/admin/tasks/in-progress')
}
/**
* 强制完成任务
*/
export const forceCompleteTask = (taskId: number, reason: string) => {
return request.post<Task>(`/admin/tasks/${taskId}/force-complete`, {
reason
})
}
/**
* 管理员取消任务
*/
export const cancelTask = (taskId: number, reason: string) => {
return request.post<Task>(`/admin/tasks/${taskId}/cancel`, {
reason
})
}
/**
* 任务节点调拨到指定接单部门
*/
export const redirectTaskItemToDept = (itemNo: string, targetDeptId: number, reason?: string) => {
return request.post<Record<string, any>>('/admin/tasks/items/redirect-dept', {
itemNo,
targetDeptId,
reason
})
}