import type { PageParam, PageResult } from '#/packages/effects/request/src';
|
|
import { requestClient } from '#/api/request';
|
|
export namespace MesPdArchiveApi {
|
/** 归档台账(分页聚合) */
|
export interface Archive {
|
id?: number;
|
/** 最新归档编号 */
|
archiveCode?: string;
|
/** 设计项目ID */
|
projectId?: number;
|
/** 任务编码 */
|
taskCode?: string;
|
/** 任务名称 */
|
taskName?: string;
|
/** 产品编码 */
|
productCode?: string;
|
/** 产品名称 */
|
productName?: string;
|
/** 该项目下归档记录总数 */
|
archiveCount?: number;
|
/** 归档人ID */
|
archiver?: number;
|
/** 归档人名称 */
|
archiverNickname?: string;
|
/** 归档状态(字典 mes_pd_archive_status) */
|
archiveStatus?: number;
|
/** 归档时间 */
|
archiveTime?: number;
|
/** 备注 */
|
remark?: string;
|
/** 创建时间 */
|
createTime?: number;
|
/** 更新人ID */
|
updater?: string;
|
/** 更新人名称 */
|
updaterNickname?: string;
|
/** 更新时间 */
|
updateTime?: number;
|
}
|
|
export interface PageParams extends PageParam {
|
archiveCode?: string;
|
projectId?: number;
|
archiveStatus?: number;
|
productCode?: string;
|
productName?: string;
|
}
|
|
/** 详情 - 项目信息 */
|
export interface ProjectInfo {
|
id?: number;
|
taskCode?: string;
|
taskName?: string;
|
productCode?: string;
|
productName?: string;
|
version?: string;
|
status?: number;
|
chiefDesigner?: number;
|
chiefDesignerNickname?: string;
|
reviewer?: number;
|
reviewerNickname?: string;
|
planFinishTime?: number;
|
remark?: string;
|
createTime?: number;
|
}
|
|
/** 详情 - 归档记录 */
|
export interface ArchiveInfo {
|
id?: number;
|
archiveCode?: string;
|
archiver?: number;
|
archiverNickname?: string;
|
archiveStatus?: number;
|
archiveTime?: number;
|
remark?: string;
|
createTime?: number;
|
}
|
|
/** 详情 - 设计资料 */
|
export interface DocumentInfo {
|
id?: number;
|
documentType?: string;
|
documentName?: string;
|
documentVersion?: string;
|
fileName?: string;
|
fileUrl?: string;
|
uploadUserId?: number;
|
uploadUserNickname?: string;
|
uploadTime?: number;
|
remark?: string;
|
createTime?: number;
|
}
|
|
/** 详情(按产品查询) */
|
export interface DetailItem {
|
project: ProjectInfo;
|
archives: ArchiveInfo[];
|
documents: DocumentInfo[];
|
}
|
}
|
|
/** 归档台账分页(按项目/产品聚合) */
|
export function getPdArchivePage(params: MesPdArchiveApi.PageParams) {
|
return requestClient.get<PageResult<MesPdArchiveApi.Archive>>(
|
'/mes/pd/archive/page',
|
{ params },
|
);
|
}
|
|
/** 归档台账详情(按产品编码查询) */
|
export function getPdArchiveDetailByProduct(productCode: string) {
|
return requestClient.get<MesPdArchiveApi.DetailItem[]>(
|
'/mes/pd/archive/detail-by-product',
|
{ params: { productCode } },
|
);
|
}
|
|
export function getPdArchive(id: number) {
|
return requestClient.get<MesPdArchiveApi.Archive>(
|
`/mes/pd/archive/get?id=${id}`,
|
);
|
}
|
|
export function updatePdArchive(data: MesPdArchiveApi.Archive) {
|
return requestClient.put('/mes/pd/archive/update', data);
|
}
|
|
export function deletePdArchive(id: number) {
|
return requestClient.delete(`/mes/pd/archive/delete?id=${id}`);
|
}
|
|
export function exportPdArchive(params: MesPdArchiveApi.PageParams) {
|
return requestClient.download('/mes/pd/archive/export-excel', { params });
|
}
|