liu
5 天以前 749cb2f4ad815c5a68c19fe961d5ca2149a84dd4
src/api/erp/purchase/request/index.ts
@@ -1,4 +1,4 @@
import type { PageParam, PageResult } from '../../../../packages/effects/request/src';
import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
@@ -17,13 +17,18 @@
    supplierId?: number; // 供应商编号
    supplierName?: string; // 供应商名称
    discountPercent?: number; // 优惠率
    fileUrl?: string; // 附件地址
    attachmentList?: { id: number; name?: string; url?: string }[]; // 附件列表
    remark?: string; // 备注
    totalCount?: number; // 总数量
    totalPrice?: number; // 总金额
    productNames?: string; // 产品名称列表
    orderId?: number; // 生成的采购订单编号
    orderNo?: string; // 生成的采购订单号
    // ========== 审批信息(轻量级状态机审批) ==========
    reviewerId?: number; // 审核人编号
    reviewerName?: string; // 审核人姓名
    reviewTime?: Date | string; // 审核时间
    reviewRemark?: string; // 审核意见(不通过时为驳回原因)
    items?: PurchaseRequestItem[]; // 申请明细
    createTime?: string; // 创建时间
  }
@@ -46,50 +51,73 @@
/** 创建采购申请 */
export function createPurchaseRequest(data: ErpPurchaseRequestApi.PurchaseRequest) {
  return requestClient.post('/erp/purchase-request/create', data);
  return requestClient.post('/purchase/request/create', data);
}
/** 更新采购申请 */
export function updatePurchaseRequest(data: ErpPurchaseRequestApi.PurchaseRequest) {
  return requestClient.put('/erp/purchase-request/update', data);
  return requestClient.put('/purchase/request/update', data);
}
/** 提交采购申请审批 */
export function submitPurchaseRequest(id: number, processDefinitionKey: string) {
  return requestClient.put('/erp/purchase-request/submit', null, { params: { id, processDefinitionKey } });
/**
 * 提交审批(未提交/审核不通过 → 审批中)
 *
 * 审批人由「系统管理 - 审批配置」统一配置,提交时无需指定。
 */
export function submitPurchaseRequest(id: number) {
  return requestClient.put('/purchase/request/submit', null, {
    params: { id },
  });
}
/** 获得审批人编号集合,供列表页判断是否展示审核按钮 */
export function getPurchaseRequestApproverUserIds() {
  return requestClient.get<number[]>('/purchase/request/approver-ids');
}
/**
 * 审核(审批中 → 审核通过/审核不通过)
 *
 * 仅审批配置中指定的审批人本人可调用;pass=false 时 reviewRemark(不通过原因)必填。
 */
export function auditPurchaseRequest(
  id: number,
  pass: boolean,
  reviewRemark?: string,
) {
  return requestClient.put('/purchase/request/audit', {
    id,
    pass,
    reviewRemark,
  });
}
/** 生成采购订单 */
export function generatePurchaseOrder(id: number, supplierId: number) {
  return requestClient.post<number>('/erp/purchase-request/generate-order', null, { params: { id, supplierId } });
  return requestClient.post<number>('/purchase/request/generate-order', null, { params: { id, supplierId } });
}
/** 删除采购申请 */
export function deletePurchaseRequest(ids: number[]) {
  return requestClient.delete('/erp/purchase-request/delete', { params: { ids: ids.join(',') } });
  return requestClient.delete('/purchase/request/delete', { params: { ids: ids.join(',') } });
}
/** 获取采购申请详情 */
export function getPurchaseRequest(id: number) {
  return requestClient.get<ErpPurchaseRequestApi.PurchaseRequest>(
    `/erp/purchase-request/get?id=${id}`,
    `/purchase/request/get?id=${id}`,
  );
}
/** 获取采购申请分页 */
export function getPurchaseRequestPage(params: PageParam) {
  return requestClient.get<PageResult<ErpPurchaseRequestApi.PurchaseRequest>>(
    '/erp/purchase-request/page',
    '/purchase/request/page',
    { params },
  );
}
/** 导出采购申请 Excel */
export function exportPurchaseRequest(params: any) {
  return requestClient.download('/erp/purchase-request/export-excel', { params });
}
/** 获取审批流程列表 */
export function getApproveProcessList(id: number) {
  return requestClient.get(`/erp/purchase-request/approve-process-list`, { params: { id } });
  return requestClient.download('/purchase/request/export-excel', { params });
}