import request from '@/utils/request'

// 查询项目令号列表
export function listOrderPro(query) {
  return request({
    url: '/system/orderPro/list',
    method: 'get',
    params: query
  })
}

// 查询项目令号详细
export function getOrderPro(id) {
  return request({
    url: '/system/orderPro/' + id,
    method: 'get'
  })
}
export function processList(params) {
  return request({
    url: '/system/orderPro/processlist',
    method: 'get',
    params: params
  });
}
// 调用 MRP 运算结果
export function getMRPResults(id) {
  return request({
    url: `/system/orderPro/getMRPResults/${id}`,
    method: 'post',
    timeout: 15 * 60 * 1000 // 设置 15 分钟超时
  })
}
// 新增项目令号
export function addOrderPro(data) {
  return request({
    url: '/system/orderPro',
    method: 'post',
    data: data
  })
}

// 修改项目令号
export function updateOrderPro(data) {
  return request({
    url: '/system/orderPro',
    method: 'put',
    data: data
  })
}

// 删除项目令号
export function delOrderPro(id) {
  return request({
    url: '/system/orderPro/' + id,
    method: 'delete'
  })
}

// 获取图纸类型数据
export function getDrawingTypeDict() {
  return request({
    url: '/system/configIni/list',
    method: 'get',
    params: {
      pageNum: 1,
      pageSize: 1000 // 获取足够多的数据
    }
  })
}

export function addProduct(data) {
  return request({
    url: '/system/orderPro/addProduct',
    method: 'post',
    data
  });
}
// 新增：修改产品（PUT）
export function updateProduct(data) {
  return request({
    url: '/system/save',
    method: 'put',
    data
  });
}
// 查询此项目用到的产品列表
export function listSave(query) {
  return request({
    url: '/system/save/list',
    method: 'get',
    params: query
  })
}
// 执行出图
export function executDrawing(data) {
  return request({
    url: '/system/orderPro/executDrawing',
    method: 'post',
    data
  })
}

// 删除销齿链型号
export function delSave(ids) {
  return request({
    url: '/system/save/' + ids,
    method: 'delete'
  })
}

// 下载PDF
export function uploadPDF(id) {
  return request({
    url: '/system/orderPro/uploadPDF',
    method: 'get',
    params: { id },
    responseType: 'blob', // 设置响应类型为blob，用于文件下载
    headers: { 'Content-Type': 'application/json; application/octet-stream' }
  })
}

// 下载生产工艺计划表
export function exportRoute(id) {
  return request({
    url: `/system/orderPro/exportRoute?id=${id}`,
    method: 'post',
    responseType: 'blob'
  })
}
