import request from '@/config/axios'

// 保养工单 VO
export interface IotMainWorkOrderVO {
  id: number // 主键id
  planId: number // 保养计划id
  planSerialNumber: string // 保养计划编号
  deptId: number // 组织id
  orderNumber: string // 工单号
  name: string // 工单名称 (吐哈-C14-保养计划)
  type: number // 工单类型(1计划生成  2临时新建)
  responsiblePerson: string // 负责人id 多个以逗号分隔
  responsiblePersonName: string // 负责人id 多个以逗号分隔
  cost: number // 保养费用
  result: number // 保养结果(1待执行 2已执行)
  otherCost: number // 其他费用
  laborCost: number // 人工费用
  outsourcingFlag: number // 是否委外 0否  1是
  actualStartTime: Date // 实际保养开始时间
  actualEndTime: Date // 实际保养结束时间
  remark: string // 备注
  status: number // 状态 0启用  1停用
  processInstanceId: string // 流程实例id
  auditStatus: number // 审批状态 未提交、审批中、审批通过、审批不通过、已取消
}

// 保养工单 API
export const IotMainWorkOrderApi = {
  // 查询保养工单分页
  getIotMainWorkOrderPage: async (params: any) => {
    return await request.get({ url: `/pms/iot-main-work-order/page`, params })
  },

  // 查询保养工单详情
  getIotMainWorkOrder: async (id: number) => {
    return await request.get({ url: `/pms/iot-main-work-order/get?id=` + id })
  },

  // 新增保养工单
  createIotMainWorkOrder: async (data: IotMainWorkOrderVO) => {
    return await request.post({ url: `/pms/iot-main-work-order/create`, data })
  },

  // 修改保养工单
  updateIotMainWorkOrder: async (data: IotMainWorkOrderVO) => {
    return await request.put({ url: `/pms/iot-main-work-order/update`, data })
  },

  // 删除保养工单
  deleteIotMainWorkOrder: async (id: number) => {
    return await request.delete({ url: `/pms/iot-main-work-order/delete?id=` + id })
  },

  // 导出保养工单 Excel
  exportIotMainWorkOrder: async (params) => {
    return await request.download({ url: `/pms/iot-main-work-order/export-excel`, params })
  },
}
