wlzboy
2025-10-26 2c86a8bd60deed0dd0e044bad6fb83f75d19a332
ruoyi-ui/src/api/task.js
New file
@@ -0,0 +1,247 @@
import request from '@/utils/request'
// 查询任务管理列表
export function listTask(query) {
  return request({
    url: '/task/list',
    method: 'get',
    params: query
  })
}
// 查询任务管理详细
export function getTask(taskId) {
  return request({
    url: '/task/' + taskId,
    method: 'get'
  })
}
// 新增任务管理
export function addTask(data) {
  return request({
    url: '/task',
    method: 'post',
    data: data
  })
}
// 修改任务管理
export function updateTask(data) {
  return request({
    url: '/task',
    method: 'put',
    data: data
  })
}
// 删除任务管理
export function delTask(taskIds) {
  return request({
    url: '/task/' + taskIds,
    method: 'delete'
  })
}
// 分配任务
export function assignTask(taskId, data) {
  return request({
    url: '/task/' + taskId + '/assign',
    method: 'put',
    data: data
  })
}
// 更新任务状态
export function changeTaskStatus(taskId, data) {
  return request({
    url: '/task/' + taskId + '/status',
    method: 'put',
    data: data
  })
}
// 查询任务统计信息
export function getTaskStatistics() {
  return request({
    url: '/task/statistics',
    method: 'get'
  })
}
// 查询超时任务列表
export function getOverdueTasks() {
  return request({
    url: '/task/overdue',
    method: 'get'
  })
}
// 查询我的任务列表
export function getMyTasks() {
  return request({
    url: '/task/my',
    method: 'get'
  })
}
// 上传任务附件
export function uploadAttachment(taskId, file) {
  const formData = new FormData()
  formData.append('file', file)
  return request({
    url: '/task/attachment/upload/' + taskId,
    method: 'post',
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}
// 删除任务附件
export function deleteAttachment(attachmentId) {
  return request({
    url: '/task/attachment/' + attachmentId,
    method: 'delete'
  })
}
// 查询任务附件列表
export function getTaskAttachments(taskId) {
  return request({
    url: '/task/attachment/list/' + taskId,
    method: 'get'
  })
}
// 查询任务关联的车辆列表
export function getTaskVehicles(taskId) {
  return request({
    url: '/task/vehicle/list/' + taskId,
    method: 'get'
  })
}
// 查询可用车辆列表
export function getAvailableVehicles(deptId, taskType) {
  return request({
    url: '/task/vehicle/available',
    method: 'get',
    params: { deptId, taskType }
  })
}
// 分配车辆给任务
export function assignVehicleToTask(taskId, data) {
  return request({
    url: '/task/vehicle/assign/' + taskId,
    method: 'post',
    data: data
  })
}
// 批量分配车辆给任务
export function assignVehiclesToTask(taskId, data) {
  return request({
    url: '/task/vehicle/assign-batch/' + taskId,
    method: 'post',
    data: data
  })
}
// 取消任务车辆分配
export function unassignVehicleFromTask(taskId, vehicleId) {
  return request({
    url: '/task/vehicle/' + taskId + '/' + vehicleId,
    method: 'delete'
  })
}
// ========== 任务车辆关联管理相关API ==========
// 查询任务车辆关联列表
export function listTaskVehicle(query) {
  return request({
    url: '/task/vehicle/management/list',
    method: 'get',
    params: query
  })
}
// 查询任务车辆关联详细
export function getTaskVehicle(id) {
  return request({
    url: '/task/vehicle/management/' + id,
    method: 'get'
  })
}
// 新增任务车辆关联
export function addTaskVehicle(data) {
  return request({
    url: '/task/vehicle/management',
    method: 'post',
    data: data
  })
}
// 修改任务车辆关联
export function updateTaskVehicle(data) {
  return request({
    url: '/task/vehicle/management',
    method: 'put',
    data: data
  })
}
// 删除任务车辆关联
export function delTaskVehicle(ids) {
  return request({
    url: '/task/vehicle/management/' + ids,
    method: 'delete'
  })
}
// 根据任务ID查询关联车辆列表
export function getVehiclesByTaskId(taskId) {
  return request({
    url: '/task/vehicle/management/task/' + taskId,
    method: 'get'
  })
}
// 分配车辆给任务(管理接口)
export function assignVehicleToTaskManagement(data) {
  return request({
    url: '/task/vehicle/management/assign',
    method: 'post',
    data: data
  })
}
// 批量分配车辆给任务(管理接口)
export function assignVehiclesToTaskManagement(data) {
  return request({
    url: '/task/vehicle/management/assign-batch',
    method: 'post',
    data: data
  })
}
// 取消任务车辆分配(管理接口)
export function unassignVehicleFromTaskManagement(taskId, vehicleId) {
  return request({
    url: '/task/vehicle/management/unassign/' + taskId + '/' + vehicleId,
    method: 'delete'
  })
}
// 更新任务车辆关联状态
export function updateTaskVehicleStatus(id, status) {
  return request({
    url: '/task/vehicle/management/status/' + id,
    method: 'put',
    params: { status }
  })
}