import request from '@/utils/request'

// 查询MRP运算结果复查列表
export function listMrp(query) {
  return request({
    url: '/system/mrp/list',
    method: 'get',
    params: query
  })
}

// 查询MRP运算结果复查详细
export function getMrp(id) {
  return request({
    url: '/system/mrp/' + id,
    method: 'get'
  })
}

// 新增MRP运算结果复查
export function addMrp(data) {
  return request({
    url: '/system/mrp',
    method: 'post',
    data: data
  })
}

// 修改MRP运算结果复查
export function updateMrp(data) {
  return request({
    url: '/system/mrp',
    method: 'put',
    data: data
  })
}

// 删除MRP运算结果复查
export function delMrp(id) {
  return request({
    url: '/system/mrp/' + id,
    method: 'delete'
  })
}

// 导出MRP运算结果复查列表
export function exportMrp(query) {
  return request({
    url: '/system/mrp/export',
    method: 'post',
    data: query,
    responseType: 'blob',
    timeout: 5 * 60 * 1000 // 导出可能需要较长时间，设置5分钟超时
  })
}

// ========== MRP2 相关方法 ==========

// 查询MRP2运算结果列表
export function getMRP2Results(query) {
  return request({
    url: '/system/mrp2/list',
    method: 'get',
    params: query
  })
}

// 查询MRP2运算结果详细
export function getMRP2Result(id) {
  return request({
    url: '/system/mrp2/' + id,
    method: 'get'
  })
}

// 新增MRP2运算结果
export function addMRP2Result(data) {
  return request({
    url: '/system/mrp2',
    method: 'post',
    data: data
  })
}

// 修改MRP2运算结果
export function updateMRP2Result(data) {
  return request({
    url: '/system/mrp2',
    method: 'put',
    data: data
  })
}

// 删除MRP2运算结果
export function delMRP2Result(id) {
  return request({
    url: '/system/mrp2/' + id,
    method: 'delete'
  })
}

// 导出MRP2运算结果
export function exportMRP2Data(query) {
  return request({
    url: '/system/mrp2/export',
    method: 'post',
    data: query,
    responseType: 'blob'
  })
}

// 执行MRP2运算
export function executeMRP2Calculation(data) {
  return request({
    url: '/system/mrp2/calculate',
    method: 'post',
    data: data
  })
}

// 获取MRP2统计信息
export function getMRP2Stats(query) {
  return request({
    url: '/system/mrp2/stats',
    method: 'get',
    params: query
  })
}