import request from '@/config/axios'

// PMS 保养计划明细设备BOM挂载物料关联 VO
export interface IotMainPlanBomMaterialVO {
  id: number // 主键
  mainPlanId: number // 保养计划id
  mainPlanDetailId: number // 保养计划明细id
  deviceCategoryId: number // 所属设备分类
  bomNodeId: number // 保养计划明细设备BOM节点id
  name: string // 设备分类公共BOM节点名称
  code: string // 设备分类公共BOM节点编码
  materialId: number // 物料id
  quantity: number // 数量
  unitPrice: number // 单价(元)
  kilometerCycle: number // 公里数周期(千米)
  kiloCycleLead: number // 公里数周期-提前量(千米)
  timePeriod: number // 时间周期(小时)
  timePeriodLead: number // 时间周期-提前量(小时)
  naturalDatePeriod: number // 自然日周期(天)
  naturalDatePeroidLead: number // 自然日周期-提前量(天)
  sort: number // 排序
  status: number // 状态 0启用  1停用
  remark: string // 备注
}

// PMS 保养计划明细设备BOM挂载物料关联 API
export const IotMainPlanBomMaterialApi = {
  // 查询PMS 保养计划明细设备BOM挂载物料关联分页
  getIotMainPlanBomMaterialPage: async (params: any) => {
    return await request.get({ url: `/rq/iot-main-plan-bom-material/page`, params })
  },

  // 查询PMS 保养计划明细设备BOM挂载物料关联详情
  getIotMainPlanBomMaterial: async (id: number) => {
    return await request.get({ url: `/rq/iot-main-plan-bom-material/get?id=` + id })
  },

  // 新增PMS 保养计划明细设备BOM挂载物料关联
  createIotMainPlanBomMaterial: async (data: IotMainPlanBomMaterialVO) => {
    return await request.post({ url: `/rq/iot-main-plan-bom-material/create`, data })
  },

  // 修改PMS 保养计划明细设备BOM挂载物料关联
  updateIotMainPlanBomMaterial: async (data: IotMainPlanBomMaterialVO) => {
    return await request.put({ url: `/rq/iot-main-plan-bom-material/update`, data })
  },

  // 删除PMS 保养计划明细设备BOM挂载物料关联
  deleteIotMainPlanBomMaterial: async (id: number) => {
    return await request.delete({ url: `/rq/iot-main-plan-bom-material/delete?id=` + id })
  },

  // 导出PMS 保养计划明细设备BOM挂载物料关联 Excel
  exportIotMainPlanBomMaterial: async (params) => {
    return await request.download({ url: `/rq/iot-main-plan-bom-material/export-excel`, params })
  },
}
