刘光辉
3 小时以前 cf11e63b659afcc9792ab3e395f1b45d844431a8
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
import { defHttp } from '#/api/request';
 
export type DmsPrintType = 'ARCHIVE_BOX' | 'BLANK_FORM' | 'CONTROLLED_DOCUMENT' | 'LABEL' | 'OTHER' | 'RECORD_DOCUMENT';
export type DmsPrintSource = 'FILE_PREVIEW' | 'FORM_DETAIL' | 'LIST_BATCH';
 
export interface DmsPrintOperationTarget {
  batchNo?: string;
  documentCode?: string;
  documentId?: string;
  documentName?: string;
  targetId: string;
  targetType: 'BLANK_FORM' | 'BUSINESS_RECORD' | 'DOCUMENT';
  versionNo?: string;
}
 
export interface DmsPrintOperationCreateRequest {
  clientEventId: string;
  copies: number;
  printName: string;
  printType: DmsPrintType;
  remark?: string;
  sourceType: DmsPrintSource;
  targets: DmsPrintOperationTarget[];
}
 
export type DmsPrintOperationOptions = Omit<DmsPrintOperationCreateRequest, 'clientEventId' | 'copies'> & {
  clientEventId?: string;
  copies?: number;
};
 
export interface DmsPrintOperationLog {
  batchNo?: string;
  copies: number;
  documentCode: string;
  documentId?: string;
  documentName: string;
  id: string;
  operatedAt: string;
  operationId: string;
  operatorId: string;
  operatorName: string;
  printType: DmsPrintType;
  remark?: string;
  requestIp?: string;
  sourceMenuId?: string;
  sourceMenuName?: string;
  sourceType: DmsPrintSource;
  status: 'INITIATED';
  targetId: string;
  targetType: DmsPrintOperationTarget['targetType'];
  userAgent?: string;
  versionNo?: string;
}
 
export interface DmsPrintOperationQuery {
  batchNo?: string;
  currentPage: number;
  documentCode?: string;
  documentName?: string;
  endTime?: string;
  keyword?: string;
  operatorId?: string;
  operatorName?: string;
  pageSize: number;
  printType?: DmsPrintType;
  startTime?: string;
  versionNo?: string;
}
 
interface ApiResult<T> {
  code: number;
  data: T;
  msg?: string;
}
 
export interface PageResult<T> {
  list: T[];
  pagination: { currentPage: number; pageSize: number; total: number };
}
 
const prefix = '/api/dms/print-operations';
const silentErrorOptions = { errorMessageMode: 'none' as const };
 
export function createDmsPrintOperation(data: DmsPrintOperationCreateRequest) {
  return defHttp.post<ApiResult<{ operationId: string; recordCount: number }>>({ url: prefix, data }, silentErrorOptions);
}
 
export function getDmsPrintOperationPage(params: DmsPrintOperationQuery) {
  return defHttp.get<ApiResult<PageResult<DmsPrintOperationLog>>>({ url: prefix, params }, silentErrorOptions);
}
 
export function getDmsPrintOperationDetail(id: string) {
  return defHttp.get<ApiResult<DmsPrintOperationLog>>({ url: `${prefix}/${id}` }, silentErrorOptions);
}
 
export function exportDmsPrintOperations(params: DmsPrintOperationQuery) {
  return defHttp.get<Blob>({ url: `${prefix}/export`, params, responseType: 'blob' }, { isTransformResponse: false });
}