zhangwencui
3 天以前 a2002ba0e8aa2a0e4eee61b5205748d8f6e454fc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
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 });
}