weighTicket.js 2.79 KB
import request from '@/utils/request'
import { ContentTypeEnum } from '@/utils/httpEnum'

// 过磅码单(对齐 PC 端 api/warehouse-manage/weight-ticket)
const baseUrl = '/procurement/weighing/ticket'

/**
 * 分页查询过磅单列表
 * params: pageIndex, pageSize, code, planCode, supplierName, companyShortId,
 *         approvalStatus, createBy, startTime, endTime, deleted(boolean)
 */
export function weighTicketQueryApi(params) {
  return request({
    url: baseUrl + '/query',
    method: 'get',
    params
  })
}

/**
 * 生成过磅单编号(直接返回编号字符串)
 */
export function weighTicketGenerateCodeApi() {
  return request({
    url: baseUrl + '/generateCode',
    method: 'get'
  })
}

/**
 * 查询过磅单可选计划列表
 * params: pageIndex, pageSize, code(计划编号), companyName(收料单位)
 */
export function weighingTicketPlansApi(params) {
  return request({
    url: baseUrl + '/weighingTicketPlans',
    method: 'get',
    params
  })
}

/**
 * 根据计划id集合查询计划明细行
 * ids: 计划id数组
 */
export function weighTicketPlanLinesApi(ids) {
  return request({
    url: baseUrl + '/planLines',
    method: 'get',
    params: { ids: (ids || []).join(',') }
  })
}

/**
 * 查询过磅单详情
 */
export function weighTicketDetailApi(params) {
  return request({
    url: baseUrl,
    method: 'get',
    params
  })
}

/**
 * 提交审核
 */
export function weighTicketSubmitAuditApi(id) {
  return request({
    url: baseUrl + '/submit?id=' + id,
    method: 'put'
  })
}

/**
 * 作废过磅单
 */
export function weighTicketCancelApi(id) {
  return request({
    url: baseUrl + '/delete?id=' + id,
    method: 'put'
  })
}

/**
 * 新增过磅单
 */
export function weighTicketCreateApi(data) {
  return request({
    url: baseUrl + '/create',
    method: 'post',
    data,
    contentType: ContentTypeEnum.JSON
  })
}

/**
 * 修改过磅单
 */
export function weighTicketUpdateApi(data) {
  return request({
    url: baseUrl,
    method: 'put',
    data,
    contentType: ContentTypeEnum.JSON
  })
}

/**
 * 上传签字凭证
 * data: { id, fileIds(逗号分隔), fileNames(逗号分隔) }
 */
export function weighTicketUploadSignApi(data) {
  return request({
    url: baseUrl + '/attachment/sign',
    method: 'put',
    data,
    contentType: ContentTypeEnum.JSON
  })
}

/**
 * 上传延期说明附件
 * data: { id, fileIds(逗号分隔), fileNames(逗号分隔) }
 */
export function weighTicketUploadDelayApi(data) {
  return request({
    url: baseUrl + '/attachment/delay',
    method: 'put',
    data,
    contentType: ContentTypeEnum.JSON
  })
}

/**
 * 公司简称下拉数据(PC: base-data/short-name)
 */
export function companyShortQueryApi(params) {
  return request({
    url: '/basedata/company/short/query',
    method: 'get',
    params
  })
}