import request from '@/config/axios'

// PMS 货位 VO
export interface IotCargoLocationVO {
  id: number // 主键
  deptId: number // 部门id
  factoryId: number // 工厂id(SAP) 专业公司
  factoryCode: string // 工厂编码
  costCenterId: number // 成本中心id (system_sap_org表id)
  costCenterCode: string // 成本中心 code
  storageLocationId: number // 库存地点id (system_sap_org表id)
  storageLocationCode: string // 库存地点编码
  storageLocationName: string // 库存地点名称
  storageAreaId: number // 库区id
  storageAreaName: string // 库区名称
  shelvesId: number // 货架id
  shelvesName: string // 货架名称
  code: string // 货位编码
  name: string // 货位名称
  type: number // 货位类型
  row: number // 排号（货架的水平分区）
  layer: number // 层号（货架的垂直分区）
  columnNumber: number // 列号（货架的纵深分区）
  capacity: number // 货位容量（单位：可自定义，如件数、体积m³、重量kg）
  currentUsage: number // 当前已使用容量
  sort: number // 显示顺序
  status: number // 状态 0启用  1停用
  remark: string // 备注
}

// PMS 货位 API
export const IotCargoLocationApi = {
  // 查询PMS 货位分页
  getIotCargoLocationPage: async (params: any) => {
    return await request.get({ url: `/pms/iot-cargo-location/page`, params })
  },

  // 查询PMS 货位详情
  getIotCargoLocation: async (id: number) => {
    return await request.get({ url: `/pms/iot-cargo-location/get?id=` + id })
  },

  // 新增PMS 货位
  createIotCargoLocation: async (data: IotCargoLocationVO) => {
    return await request.post({ url: `/pms/iot-cargo-location/create`, data })
  },

  // 修改PMS 货位
  updateIotCargoLocation: async (data: IotCargoLocationVO) => {
    return await request.put({ url: `/pms/iot-cargo-location/update`, data })
  },

  // 删除PMS 货位
  deleteIotCargoLocation: async (id: number) => {
    return await request.delete({ url: `/pms/iot-cargo-location/delete?id=` + id })
  },

  // 导出PMS 货位 Excel
  exportIotCargoLocation: async (params) => {
    return await request.download({ url: `/pms/iot-cargo-location/export-excel`, params })
  },
}
