spring
2026-07-03 2540d86f0dbd77f654f558c3bf9d5ddbe7422f16
src/api/mes/pd/project/index.ts
@@ -2,43 +2,49 @@
import { requestClient } from '#/api/request';
import { isPdMockEnabled } from '../mock/enabled';
import { pdMockStore } from '../mock/store';
export namespace MesPdProjectApi {
  /** 产品设计项目 */
  export interface Project {
    id?: number;
    code?: string;
    name?: string;
    /** 任务编码 */
    taskCode?: string;
    /** 任务名称 */
    taskName?: string;
    /** 产品编码 */
    productCode?: string;
    /** 产品名称 */
    productName?: string;
    /** 版本号 */
    version?: string;
    /** 状态 */
    status?: number;
    designerId?: number;
    designerName?: string;
    reviewerId?: number;
    reviewerName?: string;
    planStartDate?: number;
    planEndDate?: number;
    actualFinishDate?: number;
    /** 主设计师(用户ID) */
    chiefDesigner?: number;
    /** 主设计师名称 */
    chiefDesignerNickname?: string;
    /** 审核人(用户ID) */
    reviewer?: number;
    /** 审核人名称 */
    reviewerNickname?: string;
    /** 计划完成时间 */
    planFinishTime?: number;
    /** 备注 */
    remark?: string;
    /** 创建时间 */
    createTime?: number;
  }
  export interface PageParams extends PageParam {
    code?: string;
    name?: string;
    taskCode?: string;
    taskName?: string;
    productCode?: string;
    productName?: string;
    status?: number;
    designerId?: number;
    planFinishTime?: number[];
  }
}
export function getPdProjectPage(params: MesPdProjectApi.PageParams) {
  if (isPdMockEnabled()) {
    return pdMockStore.getProjectPage(params);
  }
  return requestClient.get<PageResult<MesPdProjectApi.Project>>(
    '/mes/pd/project/page',
    { params },
@@ -46,73 +52,50 @@
}
export function getPdProject(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.getProject(id);
  }
  return requestClient.get<MesPdProjectApi.Project>(
    `/mes/pd/project/get?id=${id}`,
  );
}
export function createPdProject(data: MesPdProjectApi.Project) {
  if (isPdMockEnabled()) {
    return pdMockStore.createProject(data);
  }
  return requestClient.post<number>('/mes/pd/project/create', data);
}
export function updatePdProject(data: MesPdProjectApi.Project) {
  if (isPdMockEnabled()) {
    return pdMockStore.updateProject(data);
  }
  return requestClient.put('/mes/pd/project/update', data);
}
export function deletePdProject(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.deleteProject(id);
  }
  return requestClient.delete(`/mes/pd/project/delete?id=${id}`);
}
export function exportPdProject(params: MesPdProjectApi.PageParams) {
  if (isPdMockEnabled()) {
    return Promise.resolve(new Blob());
  }
  return requestClient.download('/mes/pd/project/export-excel', { params });
}
export function submitPdProjectReview(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.submitProjectReview(id);
  }
  return requestClient.put('/mes/pd/project/submit-review', undefined, {
    params: { id },
  });
}
/** 发布(待发布→待上传) */
export function publishPdProject(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.publishProject(id);
  }
  return requestClient.put('/mes/pd/project/publish', undefined, {
    params: { id },
  });
}
export function approvePdProject(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.approveProject(id);
  }
  return requestClient.put('/mes/pd/project/approve', undefined, {
/** 上传资料(待上传→待审核),后端自动创建资料审核记录 */
export function uploadPdProject(id: number) {
  return requestClient.put('/mes/pd/project/upload', undefined, {
    params: { id },
  });
}
/** 审核(待审核→待归档) */
export function auditPdProject(id: number) {
  return requestClient.put('/mes/pd/project/audit', undefined, {
    params: { id },
  });
}
/** 归档(待归档→已归档),后端自动创建归档台账记录 */
export function archivePdProject(id: number) {
  if (isPdMockEnabled()) {
    return pdMockStore.archiveProject(id);
  }
  return requestClient.put('/mes/pd/project/archive', undefined, {
    params: { id },
  });