Commit b31916ea3003d11f9ebc0a28159acfa0a3f78bba
Merge branch 'productCollect'
Showing
15 changed files
with
2241 additions
and
82 deletions
.umirc.ts
@@ -151,10 +151,28 @@ export default defineConfig({ | @@ -151,10 +151,28 @@ export default defineConfig({ | ||
151 | access: 'canReadAdmin', | 151 | access: 'canReadAdmin', |
152 | }, | 152 | }, |
153 | { | 153 | { |
154 | - name: '礼品申领', | ||
155 | - path: '/productCollectBill', | ||
156 | - component: './productCollectBill', | 154 | + name: '礼品管理', |
155 | + path: '/product', | ||
157 | icon: 'BookOutlined', | 156 | icon: 'BookOutlined', |
157 | + routes: [ | ||
158 | + { | ||
159 | + name: '礼品采购', | ||
160 | + path: 'procure', | ||
161 | + access: 'canReadProductManagerAndProcureAndAdmin', | ||
162 | + component: './product/procure', | ||
163 | + }, | ||
164 | + { | ||
165 | + name: '礼品库存', | ||
166 | + path: 'product', | ||
167 | + access: 'canReadProductManagerAndAdmin', | ||
168 | + component: './product/product', | ||
169 | + }, | ||
170 | + { | ||
171 | + name: '礼品申领', | ||
172 | + path: 'productCollect', | ||
173 | + component: './product/productCollect', | ||
174 | + }, | ||
175 | + ], | ||
158 | }, | 176 | }, |
159 | { | 177 | { |
160 | name: '客户管理', | 178 | name: '客户管理', |
README.md
src/access.ts
@@ -11,6 +11,7 @@ export default (initialState: API.UserInfo) => { | @@ -11,6 +11,7 @@ export default (initialState: API.UserInfo) => { | ||
11 | const canReadSales = | 11 | const canReadSales = |
12 | roles?.includes('SALES_MANAGER') || roles?.includes('SALES_REPRESENTATIVE'); | 12 | roles?.includes('SALES_MANAGER') || roles?.includes('SALES_REPRESENTATIVE'); |
13 | const canReadSalesManager = roles?.includes('SALES_MANAGER'); | 13 | const canReadSalesManager = roles?.includes('SALES_MANAGER'); |
14 | + const canReadProductManager = roles?.includes('PRODUCT_MANAGER'); | ||
14 | return { | 15 | return { |
15 | canReadAdmin: canReadAdmin, | 16 | canReadAdmin: canReadAdmin, |
16 | canReadProcure: canReadProcure || canReadAdmin, | 17 | canReadProcure: canReadProcure || canReadAdmin, |
@@ -25,5 +26,8 @@ export default (initialState: API.UserInfo) => { | @@ -25,5 +26,8 @@ export default (initialState: API.UserInfo) => { | ||
25 | canReadAdminAndSalesManager: canReadAdmin || canReadSalesManager, | 26 | canReadAdminAndSalesManager: canReadAdmin || canReadSalesManager, |
26 | canReadAdminAndSalesAndWarehouseKeeper: | 27 | canReadAdminAndSalesAndWarehouseKeeper: |
27 | canReadAdmin || canReadSales || canReadWarehouseKeeper, | 28 | canReadAdmin || canReadSales || canReadWarehouseKeeper, |
29 | + canReadProductManagerAndProcureAndAdmin: | ||
30 | + canReadAdmin || canReadProductManager || canReadProcure, | ||
31 | + canReadProductManagerAndAdmin: canReadAdmin || canReadProductManager, | ||
28 | }; | 32 | }; |
29 | }; | 33 | }; |
src/models/enum.ts
@@ -3,6 +3,7 @@ import { | @@ -3,6 +3,7 @@ import { | ||
3 | postServiceConstInvoiceReissueRecordStatus, | 3 | postServiceConstInvoiceReissueRecordStatus, |
4 | postServiceConstPayees, | 4 | postServiceConstPayees, |
5 | postServiceConstProductCollectBillStatus, | 5 | postServiceConstProductCollectBillStatus, |
6 | + postServiceConstProducts, | ||
6 | postServiceConstStores, | 7 | postServiceConstStores, |
7 | } from '@/services'; | 8 | } from '@/services'; |
8 | import { useCallback } from 'react'; | 9 | import { useCallback } from 'react'; |
@@ -28,11 +29,16 @@ export default () => { | @@ -28,11 +29,16 @@ export default () => { | ||
28 | const result = await postServiceConstStores(); | 29 | const result = await postServiceConstStores(); |
29 | return result.data; | 30 | return result.data; |
30 | }, []); | 31 | }, []); |
32 | + const getProducts = useCallback(async () => { | ||
33 | + const res = await postServiceConstProducts(); | ||
34 | + return res.data; | ||
35 | + }, []); | ||
31 | return { | 36 | return { |
32 | getPayees, | 37 | getPayees, |
33 | getInvoiceReissueRecordStatus, | 38 | getInvoiceReissueRecordStatus, |
34 | getInvoiceFlushStatus, | 39 | getInvoiceFlushStatus, |
35 | getProductCollectBillAuditStatus, | 40 | getProductCollectBillAuditStatus, |
36 | getWarehouse, | 41 | getWarehouse, |
42 | + getProducts, | ||
37 | }; | 43 | }; |
38 | }; | 44 | }; |
src/pages/product/procure/components/AddOrUpdate.tsx
0 → 100644
1 | +import { | ||
2 | + postOrderErpTicketsUpload, | ||
3 | + postProcureBillAddOrModify, | ||
4 | +} from '@/services'; | ||
5 | +import { useModel } from '@@/exports'; | ||
6 | +import { UploadOutlined } from '@ant-design/icons'; | ||
7 | +import { | ||
8 | + ActionType, | ||
9 | + EditableProTable, | ||
10 | + ModalForm, | ||
11 | + ProCard, | ||
12 | + ProColumns, | ||
13 | + ProForm, | ||
14 | + ProFormDependency, | ||
15 | + ProFormField, | ||
16 | + ProFormSwitch, | ||
17 | + ProFormTextArea, | ||
18 | +} from '@ant-design/pro-components'; | ||
19 | +import { Button, Form, Upload, message } from 'antd'; | ||
20 | +import React, { useEffect, useRef, useState } from 'react'; | ||
21 | + | ||
22 | +export default ({ record, onfinish }) => { | ||
23 | + const [editableKeys, setEditableRowKeys] = useState<React.Key[]>([]); | ||
24 | + const [controlled, setControlled] = useState<boolean>(false); | ||
25 | + const [processedRecord, setProcessedRecord] = useState(record); | ||
26 | + const formRef = useRef(null); | ||
27 | + const editorFormRef = useRef(null); | ||
28 | + const { getProducts } = useModel('enum'); | ||
29 | + const actionRef = useRef<ActionType>(); | ||
30 | + // 使用 useEffect 为 procureBillDetailList 中的每个元素添加 key | ||
31 | + useEffect(() => { | ||
32 | + if (record?.procureBillDetailList) { | ||
33 | + const updatedProcureBillDetailList = record.procureBillDetailList.map( | ||
34 | + (item) => ({ | ||
35 | + ...item, | ||
36 | + key: item.key || `key-${Math.random().toString(36).substr(2, 9)}`, // 动态生成唯一 key | ||
37 | + }), | ||
38 | + ); | ||
39 | + setProcessedRecord({ | ||
40 | + ...record, | ||
41 | + procureBillDetailList: updatedProcureBillDetailList, | ||
42 | + }); | ||
43 | + } | ||
44 | + }, [record]); | ||
45 | + | ||
46 | + const columns: ProColumns[] = [ | ||
47 | + { | ||
48 | + title: '商品', | ||
49 | + dataIndex: 'productId', | ||
50 | + valueType: 'select', | ||
51 | + request: async () => { | ||
52 | + const res = await getProducts(); | ||
53 | + return res.map((item) => ({ | ||
54 | + ...item, | ||
55 | + label: item.name, | ||
56 | + value: item.id, | ||
57 | + productUnitName: item.baseUnitName, | ||
58 | + productUnitPrice: item.unitPrice, | ||
59 | + })); | ||
60 | + }, | ||
61 | + fieldProps: (_, { rowIndex }) => ({ | ||
62 | + onSelect: (value, option) => { | ||
63 | + console.log('option111111' + JSON.stringify(option)); | ||
64 | + const currentTableData = editorFormRef.current?.getRowsData?.(); | ||
65 | + if (currentTableData) { | ||
66 | + const updatedData = [...currentTableData]; | ||
67 | + updatedData[rowIndex] = { | ||
68 | + ...updatedData[rowIndex], | ||
69 | + productUnitName: option.productUnitName, | ||
70 | + productUnitPrice: option.productUnitPrice, | ||
71 | + }; | ||
72 | + formRef.current?.setFieldsValue({ | ||
73 | + procureBillDetailList: updatedData, | ||
74 | + }); | ||
75 | + } | ||
76 | + }, | ||
77 | + }), | ||
78 | + }, | ||
79 | + { | ||
80 | + title: '单位', | ||
81 | + dataIndex: 'productUnitName', | ||
82 | + valueType: 'text', | ||
83 | + editable: false, | ||
84 | + }, | ||
85 | + { | ||
86 | + title: '单价', | ||
87 | + dataIndex: 'productUnitPrice', | ||
88 | + valueType: 'digit', | ||
89 | + editable: false, | ||
90 | + }, | ||
91 | + { | ||
92 | + title: '数量', | ||
93 | + dataIndex: 'number', | ||
94 | + valueType: 'digit', | ||
95 | + }, | ||
96 | + { | ||
97 | + title: '备注', | ||
98 | + dataIndex: 'notes', | ||
99 | + valueType: 'textarea', | ||
100 | + }, | ||
101 | + { | ||
102 | + title: '附件', | ||
103 | + dataIndex: 'annexUpload', | ||
104 | + renderFormItem: (_, { record }) => ( | ||
105 | + <Upload | ||
106 | + fileList={ | ||
107 | + record.annexList?.map((url) => ({ | ||
108 | + uid: url, | ||
109 | + name: url.split('/').pop(), | ||
110 | + status: 'done', | ||
111 | + url, | ||
112 | + })) || [] | ||
113 | + } | ||
114 | + onPreview={(file) => { | ||
115 | + window.open(file.url || file.thumbUrl); // 打开文件预览 | ||
116 | + }} | ||
117 | + customRequest={async (options) => { | ||
118 | + const { file, onSuccess, onError } = options; | ||
119 | + | ||
120 | + const formData = new FormData(); | ||
121 | + formData.append('file', file); | ||
122 | + | ||
123 | + try { | ||
124 | + const res = await postOrderErpTicketsUpload({ | ||
125 | + data: formData, | ||
126 | + headers: { 'Content-Type': 'multipart/form-data' }, | ||
127 | + }); | ||
128 | + | ||
129 | + if (res.message === '成功') { | ||
130 | + message.success(`${file.name} 上传成功`); | ||
131 | + | ||
132 | + // 更新文件列表 | ||
133 | + const currentData = formRef.current?.getFieldValue( | ||
134 | + 'procureBillDetailList', | ||
135 | + ); | ||
136 | + const currentRow = currentData.find( | ||
137 | + (row) => row.key === record.key, | ||
138 | + ); | ||
139 | + const existingAnnex = currentRow?.annexList || []; // 取现有的 annex 数据 | ||
140 | + | ||
141 | + const updatedAnnex = [...existingAnnex, res.data]; // 合并新的文件 URL | ||
142 | + | ||
143 | + // 更新表单数据 | ||
144 | + const updatedData = currentData.map((row) => | ||
145 | + row.key === record.key | ||
146 | + ? { ...row, annexList: updatedAnnex } | ||
147 | + : row, | ||
148 | + ); | ||
149 | + formRef.current?.setFieldValue( | ||
150 | + 'procureBillDetailList', | ||
151 | + updatedData, | ||
152 | + ); | ||
153 | + | ||
154 | + onSuccess?.('上传成功'); | ||
155 | + } else { | ||
156 | + message.error(`${file.name} 上传失败`); | ||
157 | + onError?.(new Error('上传失败')); | ||
158 | + } | ||
159 | + } catch (error) { | ||
160 | + message.error(`${file.name} 上传错误`); | ||
161 | + onError?.(error); | ||
162 | + } | ||
163 | + }} | ||
164 | + onRemove={(file) => { | ||
165 | + const currentData = | ||
166 | + formRef.current?.getFieldValue('procureBillDetailList') || []; | ||
167 | + const updatedData = currentData.map((row) => { | ||
168 | + if (row.key === record.key) { | ||
169 | + return { | ||
170 | + ...row, | ||
171 | + annexList: row.annexList.filter((url) => url !== file.url), // 移除对应文件 URL | ||
172 | + }; | ||
173 | + } | ||
174 | + return row; | ||
175 | + }); | ||
176 | + | ||
177 | + formRef.current?.setFieldsValue({ | ||
178 | + procureBillDetailList: updatedData, | ||
179 | + }); | ||
180 | + | ||
181 | + // 触发状态更新 | ||
182 | + setProcessedRecord((prevRecord) => ({ | ||
183 | + ...prevRecord, | ||
184 | + procureBillDetailList: updatedData, | ||
185 | + })); | ||
186 | + }} | ||
187 | + > | ||
188 | + <Button icon={<UploadOutlined />}>上传附件</Button> | ||
189 | + </Upload> | ||
190 | + ), | ||
191 | + render: (_, record) => ( | ||
192 | + <div> | ||
193 | + {record.annexList?.map((url, index) => { | ||
194 | + const shortName = | ||
195 | + url.split('/').pop()?.slice(0, 15) || `附件 ${index + 1}`; | ||
196 | + return ( | ||
197 | + <a | ||
198 | + key={index} | ||
199 | + href={url} | ||
200 | + target="_blank" | ||
201 | + rel="noopener noreferrer" | ||
202 | + title={url} // 悬停显示完整链接 | ||
203 | + style={{ | ||
204 | + display: 'block', | ||
205 | + marginBottom: '4px', | ||
206 | + whiteSpace: 'nowrap', | ||
207 | + overflow: 'hidden', | ||
208 | + textOverflow: 'ellipsis', | ||
209 | + maxWidth: '200px', // 限制显示宽度 | ||
210 | + }} | ||
211 | + > | ||
212 | + {shortName.length < url.split('/').pop()?.length | ||
213 | + ? `${shortName}...` | ||
214 | + : shortName} | ||
215 | + </a> | ||
216 | + ); | ||
217 | + })} | ||
218 | + </div> | ||
219 | + ), | ||
220 | + }, | ||
221 | + { | ||
222 | + title: '附件', | ||
223 | + hideInTable: true, | ||
224 | + dataIndex: 'annexList', | ||
225 | + }, | ||
226 | + { | ||
227 | + title: '操作', | ||
228 | + valueType: 'option', | ||
229 | + render: (text, record, _, action) => [ | ||
230 | + <a | ||
231 | + key="editable" | ||
232 | + onClick={() => { | ||
233 | + action?.startEditable?.(record.key); | ||
234 | + }} | ||
235 | + > | ||
236 | + 编辑 | ||
237 | + </a>, | ||
238 | + <a | ||
239 | + key="delete" | ||
240 | + onClick={() => { | ||
241 | + const tableDataSource = formRef.current?.getFieldValue( | ||
242 | + 'procureBillDetailList', | ||
243 | + ); | ||
244 | + formRef.current?.setFieldsValue({ | ||
245 | + table: tableDataSource.filter((item) => item.key !== record.key), | ||
246 | + }); | ||
247 | + }} | ||
248 | + > | ||
249 | + 删除 | ||
250 | + </a>, | ||
251 | + ], | ||
252 | + }, | ||
253 | + ]; | ||
254 | + | ||
255 | + const [form] = Form.useForm(); | ||
256 | + return ( | ||
257 | + <ModalForm | ||
258 | + formRef={formRef} | ||
259 | + initialValues={processedRecord} | ||
260 | + validateTrigger="onBlur" | ||
261 | + title="新建表单" | ||
262 | + trigger={ | ||
263 | + record?.id ? ( | ||
264 | + <Button type="link">修改</Button> | ||
265 | + ) : ( | ||
266 | + <Button type="primary">新建</Button> | ||
267 | + ) | ||
268 | + } | ||
269 | + form={form} | ||
270 | + autoFocusFirstInput | ||
271 | + width={1500} | ||
272 | + modalProps={{ | ||
273 | + destroyOnClose: true, | ||
274 | + onCancel: () => console.log('run'), | ||
275 | + }} | ||
276 | + submitTimeout={2000} | ||
277 | + onFinish={async (values) => { | ||
278 | + const res = await postProcureBillAddOrModify({ | ||
279 | + data: { | ||
280 | + ...record, | ||
281 | + ...values, | ||
282 | + }, | ||
283 | + }); | ||
284 | + if (res) { | ||
285 | + message.success(res.message); | ||
286 | + onfinish(); | ||
287 | + } | ||
288 | + return true; | ||
289 | + }} | ||
290 | + > | ||
291 | + <EditableProTable | ||
292 | + rowKey="key" | ||
293 | + scroll={{ | ||
294 | + x: 960, | ||
295 | + }} | ||
296 | + editableFormRef={editorFormRef} | ||
297 | + headerTitle="可编辑表格" | ||
298 | + maxLength={5} | ||
299 | + name="procureBillDetailList" | ||
300 | + controlled={controlled} | ||
301 | + recordCreatorProps={{ | ||
302 | + position: 'bottom', | ||
303 | + record: () => ({ | ||
304 | + key: `key-${Math.random().toString(36).substr(2, 9)}`, | ||
305 | + }), | ||
306 | + }} | ||
307 | + actionRef={actionRef} | ||
308 | + toolBarRender={() => [ | ||
309 | + <ProFormSwitch | ||
310 | + key="render" | ||
311 | + fieldProps={{ | ||
312 | + style: { | ||
313 | + marginBlockEnd: 0, | ||
314 | + }, | ||
315 | + checked: controlled, | ||
316 | + onChange: (value) => { | ||
317 | + setControlled(value); | ||
318 | + }, | ||
319 | + }} | ||
320 | + checkedChildren="数据更新通知 Form" | ||
321 | + unCheckedChildren="保存后通知 Form" | ||
322 | + noStyle | ||
323 | + />, | ||
324 | + <Button | ||
325 | + key="rows" | ||
326 | + onClick={() => { | ||
327 | + const rows = editorFormRef.current?.getRowsData?.(); | ||
328 | + console.log(rows); | ||
329 | + }} | ||
330 | + > | ||
331 | + 获取 table 的数据 | ||
332 | + </Button>, | ||
333 | + ]} | ||
334 | + columns={columns} | ||
335 | + editable={{ | ||
336 | + type: 'multiple', | ||
337 | + editableKeys, | ||
338 | + onChange: setEditableRowKeys, | ||
339 | + actionRender: (row, config, defaultDom) => { | ||
340 | + return [defaultDom.save, defaultDom.delete, defaultDom.cancel]; | ||
341 | + }, | ||
342 | + }} | ||
343 | + /> | ||
344 | + <ProForm.Item> | ||
345 | + <ProCard title="表格数据" headerBordered collapsible defaultCollapsed> | ||
346 | + <ProFormDependency name={['procureBillDetailList']}> | ||
347 | + {({ procureBillDetailList }) => ( | ||
348 | + <ProFormField | ||
349 | + ignoreFormItem | ||
350 | + fieldProps={{ | ||
351 | + style: { | ||
352 | + width: '100%', | ||
353 | + }, | ||
354 | + }} | ||
355 | + mode="read" | ||
356 | + valueType="jsonCode" | ||
357 | + text={JSON.stringify(procureBillDetailList)} | ||
358 | + /> | ||
359 | + )} | ||
360 | + </ProFormDependency> | ||
361 | + </ProCard> | ||
362 | + </ProForm.Item> | ||
363 | + <ProFormTextArea name="notes" label="备注" /> | ||
364 | + </ModalForm> | ||
365 | + ); | ||
366 | +}; |
src/pages/product/procure/components/Audit.tsx
0 → 100644
1 | +import { RESPONSE_CODE } from '@/constants/enum'; | ||
2 | +import { postProcureBillAudit } from '@/services'; | ||
3 | +import { ModalForm, ProFormTextArea } from '@ant-design/pro-components'; | ||
4 | +import { Button, Form, message } from 'antd'; | ||
5 | + | ||
6 | +export default ({ recordId, onClose }) => { | ||
7 | + const [form] = Form.useForm<{ name: string; company: string }>(); | ||
8 | + return ( | ||
9 | + <ModalForm | ||
10 | + title="审核" | ||
11 | + trigger={<Button type="link">审核</Button>} | ||
12 | + form={form} | ||
13 | + autoFocusFirstInput | ||
14 | + modalProps={{ | ||
15 | + destroyOnClose: true, | ||
16 | + onCancel: () => console.log('run'), | ||
17 | + }} | ||
18 | + submitTimeout={2000} | ||
19 | + submitter={{ | ||
20 | + searchConfig: { | ||
21 | + submitText: '通过', | ||
22 | + resetText: '取消', | ||
23 | + }, | ||
24 | + render: (props, defaultDoms) => { | ||
25 | + return [ | ||
26 | + defaultDoms[0], | ||
27 | + <Button | ||
28 | + type={'primary'} | ||
29 | + key="ok" | ||
30 | + onClick={async () => { | ||
31 | + const res = await postProcureBillAudit({ | ||
32 | + data: { | ||
33 | + ...form.getFieldsValue(), | ||
34 | + id: recordId, | ||
35 | + passed: false, | ||
36 | + }, | ||
37 | + }); | ||
38 | + if (res.result === RESPONSE_CODE.SUCCESS) { | ||
39 | + message.success('提交成功'); | ||
40 | + } | ||
41 | + props.submit(); | ||
42 | + }} | ||
43 | + > | ||
44 | + 驳回 | ||
45 | + </Button>, | ||
46 | + <Button | ||
47 | + type={'primary'} | ||
48 | + key="ok" | ||
49 | + onClick={async () => { | ||
50 | + const res = await postProcureBillAudit({ | ||
51 | + data: { | ||
52 | + ...form.getFieldsValue(), | ||
53 | + id: recordId, | ||
54 | + passed: true, | ||
55 | + }, | ||
56 | + }); | ||
57 | + if (res.result === RESPONSE_CODE.SUCCESS) { | ||
58 | + message.success('提交成功'); | ||
59 | + } | ||
60 | + props.submit(); | ||
61 | + }} | ||
62 | + > | ||
63 | + 通过 | ||
64 | + </Button>, | ||
65 | + ]; | ||
66 | + }, | ||
67 | + }} | ||
68 | + onFinish={async () => { | ||
69 | + onClose(); | ||
70 | + return true; | ||
71 | + }} | ||
72 | + > | ||
73 | + <ProFormTextArea name="auditRemarks" label="备注" /> | ||
74 | + </ModalForm> | ||
75 | + ); | ||
76 | +}; |
src/pages/product/procure/index.tsx
0 → 100644
1 | +import ButtonConfirm from '@/components/ButtomConfirm'; | ||
2 | +import { RESPONSE_CODE } from '@/constants/enum'; | ||
3 | +import AddOrUpdate from '@/pages/product/procure/components/AddOrUpdate'; | ||
4 | +import { | ||
5 | + postProcureBillDelete, | ||
6 | + postProcureBillPage, | ||
7 | + postServiceConstProcureBillAuditStatus, | ||
8 | +} from '@/services'; | ||
9 | +import { enumToSelect } from '@/utils'; | ||
10 | +import { ProTable, type ActionType } from '@ant-design/pro-components'; | ||
11 | +import { message } from 'antd'; | ||
12 | +import { useRef } from 'react'; | ||
13 | +import Audit from './components/Audit'; | ||
14 | + | ||
15 | +export default () => { | ||
16 | + const actionRef = useRef<ActionType>(); | ||
17 | + const columns = [ | ||
18 | + { | ||
19 | + title: '单号', | ||
20 | + dataIndex: 'id', | ||
21 | + ellipsis: true, | ||
22 | + hideInSearch: true, | ||
23 | + }, | ||
24 | + { | ||
25 | + title: '创建时间', | ||
26 | + dataIndex: 'createTime', | ||
27 | + ellipsis: true, | ||
28 | + width: 180, | ||
29 | + hideInSearch: true, | ||
30 | + }, | ||
31 | + { | ||
32 | + title: '创建人', | ||
33 | + dataIndex: 'createByName', | ||
34 | + ellipsis: true, | ||
35 | + width: 180, | ||
36 | + hideInSearch: true, | ||
37 | + }, | ||
38 | + { | ||
39 | + title: '总金额', | ||
40 | + dataIndex: 'totalPrice', | ||
41 | + ellipsis: true, | ||
42 | + width: 180, | ||
43 | + hideInSearch: true, | ||
44 | + }, | ||
45 | + { | ||
46 | + title: '审核状态', | ||
47 | + dataIndex: 'auditStatusText', | ||
48 | + ellipsis: true, | ||
49 | + width: 180, | ||
50 | + hideInSearch: true, | ||
51 | + }, | ||
52 | + { | ||
53 | + title: '审核备注', | ||
54 | + dataIndex: 'auditNotes', | ||
55 | + ellipsis: true, | ||
56 | + width: 180, | ||
57 | + hideInSearch: true, | ||
58 | + }, | ||
59 | + { | ||
60 | + title: '备注', | ||
61 | + dataIndex: 'notes', | ||
62 | + ellipsis: true, | ||
63 | + width: 180, | ||
64 | + hideInSearch: true, | ||
65 | + }, | ||
66 | + { | ||
67 | + title: '采购单号', | ||
68 | + dataIndex: 'id', | ||
69 | + ellipsis: true, | ||
70 | + hideInTable: true, | ||
71 | + }, | ||
72 | + { | ||
73 | + title: '创建人', | ||
74 | + dataIndex: 'createByNameLike', | ||
75 | + ellipsis: true, | ||
76 | + hideInTable: true, | ||
77 | + }, | ||
78 | + { | ||
79 | + title: '创建时间', | ||
80 | + valueType: 'dateTimeRange', | ||
81 | + hideInTable: true, | ||
82 | + search: { | ||
83 | + transform: (value) => { | ||
84 | + if (value) { | ||
85 | + return { | ||
86 | + createTimeGe: value[0], | ||
87 | + createTimeLe: value[1], | ||
88 | + }; | ||
89 | + } | ||
90 | + }, | ||
91 | + }, | ||
92 | + }, | ||
93 | + { | ||
94 | + title: '审核状态', | ||
95 | + valueType: 'select', | ||
96 | + key: 'auditStatus', | ||
97 | + dataIndex: 'auditStatus', | ||
98 | + filters: true, | ||
99 | + onFilter: true, | ||
100 | + hideInTable: true, | ||
101 | + request: async () => { | ||
102 | + const res = await postServiceConstProcureBillAuditStatus(); | ||
103 | + return enumToSelect(res.data); | ||
104 | + }, | ||
105 | + }, | ||
106 | + { | ||
107 | + title: '操作', | ||
108 | + valueType: 'option', | ||
109 | + key: 'option', | ||
110 | + render: (text, record) => [ | ||
111 | + record.paths?.includes('UPDATE') && ( | ||
112 | + <AddOrUpdate | ||
113 | + key="update" | ||
114 | + record={record} | ||
115 | + onfinish={() => { | ||
116 | + actionRef.current?.reload(); | ||
117 | + }} | ||
118 | + /> | ||
119 | + ), | ||
120 | + record.paths?.includes('UPDATE') && ( | ||
121 | + <ButtonConfirm | ||
122 | + key="delete" | ||
123 | + className="p-0" | ||
124 | + title={'确认删除该记录?'} | ||
125 | + text="删除" | ||
126 | + onConfirm={async () => { | ||
127 | + let res = await postProcureBillDelete({ | ||
128 | + query: { id: record.id }, | ||
129 | + }); | ||
130 | + if (res) { | ||
131 | + message.success(res.message); | ||
132 | + actionRef.current?.reload(); | ||
133 | + } | ||
134 | + }} | ||
135 | + /> | ||
136 | + ), | ||
137 | + record.paths?.includes('AUDIT') && ( | ||
138 | + <Audit | ||
139 | + recordId={record.id} | ||
140 | + onClose={() => { | ||
141 | + actionRef.current?.reload(); | ||
142 | + }} | ||
143 | + ></Audit> | ||
144 | + ), | ||
145 | + ], | ||
146 | + }, | ||
147 | + ]; | ||
148 | + | ||
149 | + return ( | ||
150 | + <ProTable | ||
151 | + actionRef={actionRef} | ||
152 | + columns={columns} | ||
153 | + request={async (params) => { | ||
154 | + const res = await postProcureBillPage({ | ||
155 | + data: { | ||
156 | + ...params, | ||
157 | + }, | ||
158 | + }); | ||
159 | + if (res.result === RESPONSE_CODE.SUCCESS) { | ||
160 | + return { | ||
161 | + data: res?.data?.data, | ||
162 | + total: res?.data?.total || 0, | ||
163 | + }; | ||
164 | + } | ||
165 | + return { | ||
166 | + data: [], | ||
167 | + success: false, | ||
168 | + }; | ||
169 | + }} | ||
170 | + rowKey="id" | ||
171 | + pagination={{ | ||
172 | + showQuickJumper: true, | ||
173 | + }} | ||
174 | + expandable={{ | ||
175 | + expandedRowRender: (record) => ( | ||
176 | + <ProTable | ||
177 | + columns={[ | ||
178 | + { | ||
179 | + title: '商品名称', | ||
180 | + dataIndex: 'productName', | ||
181 | + key: 'productName', | ||
182 | + }, | ||
183 | + { | ||
184 | + title: '单位', | ||
185 | + dataIndex: 'productUnitName', | ||
186 | + key: 'productUnitName', | ||
187 | + }, | ||
188 | + { | ||
189 | + title: '单价', | ||
190 | + dataIndex: 'productUnitPrice', | ||
191 | + key: 'productUnitPrice', | ||
192 | + }, | ||
193 | + { title: '数量', dataIndex: 'number', key: 'number' }, | ||
194 | + { title: '小计', dataIndex: 'totalPrice', key: 'totalPrice' }, | ||
195 | + { | ||
196 | + title: '附件', | ||
197 | + dataIndex: 'annex', | ||
198 | + key: 'annex', | ||
199 | + render: (_, record) => ( | ||
200 | + <div> | ||
201 | + {record.annexList?.map((url, index) => { | ||
202 | + const shortName = | ||
203 | + url.split('/').pop()?.slice(0, 15) || | ||
204 | + `附件 ${index + 1}`; | ||
205 | + return ( | ||
206 | + <a | ||
207 | + key={index} | ||
208 | + href={url} | ||
209 | + target="_blank" | ||
210 | + rel="noopener noreferrer" | ||
211 | + title={url} // 悬停显示完整链接 | ||
212 | + style={{ | ||
213 | + display: 'block', | ||
214 | + marginBottom: '4px', | ||
215 | + whiteSpace: 'nowrap', | ||
216 | + overflow: 'hidden', | ||
217 | + textOverflow: 'ellipsis', | ||
218 | + maxWidth: '200px', // 限制显示宽度 | ||
219 | + }} | ||
220 | + > | ||
221 | + {shortName.length < url.split('/').pop()?.length | ||
222 | + ? `${shortName}...` | ||
223 | + : shortName} | ||
224 | + </a> | ||
225 | + ); | ||
226 | + })} | ||
227 | + </div> | ||
228 | + ), | ||
229 | + }, | ||
230 | + { title: '备注', dataIndex: 'notes', key: 'notes' }, | ||
231 | + ]} | ||
232 | + headerTitle={false} | ||
233 | + search={false} | ||
234 | + options={false} | ||
235 | + dataSource={record.procureBillDetailList} | ||
236 | + pagination={false} | ||
237 | + /> | ||
238 | + ), | ||
239 | + }} | ||
240 | + dateFormatter="string" | ||
241 | + headerTitle="采购管理" | ||
242 | + options={false} | ||
243 | + toolBarRender={() => [ | ||
244 | + <AddOrUpdate | ||
245 | + key="add" | ||
246 | + record={undefined} | ||
247 | + onfinish={() => actionRef.current?.reload()} | ||
248 | + />, | ||
249 | + ]} | ||
250 | + /> | ||
251 | + ); | ||
252 | +}; |
src/pages/productCollectBill/components/AddOrUpdate.tsx renamed to src/pages/product/product/components/AddOrUpdate.tsx
1 | -import { postProductCollectBillAddOrModify } from '@/services'; | ||
2 | -import { useModel } from '@@/exports'; | 1 | +import { postProductAddOrModify } from '@/services'; |
3 | import { | 2 | import { |
4 | ModalForm, | 3 | ModalForm, |
5 | ProFormDigit, | 4 | ProFormDigit, |
6 | - ProFormSelect, | ||
7 | ProFormText, | 5 | ProFormText, |
8 | - ProFormTextArea, | ||
9 | } from '@ant-design/pro-components'; | 6 | } from '@ant-design/pro-components'; |
10 | import { Button, Form, message } from 'antd'; | 7 | import { Button, Form, message } from 'antd'; |
11 | 8 | ||
12 | export default ({ record, onFinish }) => { | 9 | export default ({ record, onFinish }) => { |
13 | const [form] = Form.useForm(); | 10 | const [form] = Form.useForm(); |
14 | - const { getWarehouse } = useModel('enum'); | ||
15 | return ( | 11 | return ( |
16 | <ModalForm | 12 | <ModalForm |
17 | title="新建表单" | 13 | title="新建表单" |
@@ -30,8 +26,11 @@ export default ({ record, onFinish }) => { | @@ -30,8 +26,11 @@ export default ({ record, onFinish }) => { | ||
30 | }} | 26 | }} |
31 | submitTimeout={2000} | 27 | submitTimeout={2000} |
32 | onFinish={async (values) => { | 28 | onFinish={async (values) => { |
33 | - let res = await postProductCollectBillAddOrModify({ | ||
34 | - data: values, | 29 | + let res = await postProductAddOrModify({ |
30 | + data: { | ||
31 | + ...record, | ||
32 | + ...values, | ||
33 | + }, | ||
35 | }); | 34 | }); |
36 | if (res) { | 35 | if (res) { |
37 | message.success(res.message); | 36 | message.success(res.message); |
@@ -40,49 +39,35 @@ export default ({ record, onFinish }) => { | @@ -40,49 +39,35 @@ export default ({ record, onFinish }) => { | ||
40 | return true; | 39 | return true; |
41 | }} | 40 | }} |
42 | > | 41 | > |
43 | - <ProFormDigit | ||
44 | - label="id" | ||
45 | - name="id" | ||
46 | - initialValue={record?.id} | ||
47 | - width="sm" | ||
48 | - hidden={true} | 42 | + <ProFormText |
43 | + width="md" | ||
44 | + initialValue={record?.name} | ||
45 | + name="name" | ||
46 | + label="商品名称" | ||
47 | + rules={[{ required: true, message: '商品名称必填' }]} | ||
49 | /> | 48 | /> |
50 | <ProFormText | 49 | <ProFormText |
51 | width="md" | 50 | width="md" |
52 | - initialValue={record?.productName} | ||
53 | - name="productName" | ||
54 | - label="申领物品" | ||
55 | - rules={[{ required: true, message: '申领物品必填' }]} | 51 | + initialValue={record?.baseUnitName} |
52 | + name="baseUnitName" | ||
53 | + label="商品单位" | ||
54 | + rules={[{ required: true, message: '商品单位必填' }]} | ||
56 | /> | 55 | /> |
57 | <ProFormDigit | 56 | <ProFormDigit |
58 | - label="申领数量" | ||
59 | - name="productNumber" | ||
60 | - initialValue={record?.productNumber} | 57 | + label="商品单价" |
58 | + name="unitPrice" | ||
59 | + initialValue={record?.unitPrice} | ||
61 | width="sm" | 60 | width="sm" |
62 | - min={1} | ||
63 | - rules={[{ required: true, message: '申领数量必填' }]} | 61 | + min={0} |
62 | + rules={[{ required: true, message: '商品单价必填' }]} | ||
64 | /> | 63 | /> |
65 | - <ProFormSelect | ||
66 | - width="md" | ||
67 | - request={async () => { | ||
68 | - const res = await getWarehouse(); | ||
69 | - console.log('options:' + res); | ||
70 | - let options = Object.entries(res).map(([value, label]) => ({ | ||
71 | - label, | ||
72 | - value, | ||
73 | - })); | ||
74 | - console.log('options:' + options); | ||
75 | - return options; | ||
76 | - }} | ||
77 | - // initialValue={record?.warehouseCode} | ||
78 | - name="warehouseCode" | ||
79 | - label="申领仓库" | ||
80 | - rules={[{ required: true, message: '申领仓库为必填项' }]} | ||
81 | - /> | ||
82 | - <ProFormTextArea | ||
83 | - initialValue={record?.applyRemarks} | ||
84 | - name="applyRemarks" | ||
85 | - label="申领备注" | 64 | + <ProFormDigit |
65 | + label="商品库存" | ||
66 | + name="inventory" | ||
67 | + initialValue={record?.inventory} | ||
68 | + width="sm" | ||
69 | + min={0} | ||
70 | + rules={[{ required: true, message: '商品库存必填' }]} | ||
86 | /> | 71 | /> |
87 | </ModalForm> | 72 | </ModalForm> |
88 | ); | 73 | ); |
src/pages/product/product/index.tsx
0 → 100644
1 | +import ButtonConfirm from '@/components/ButtomConfirm'; | ||
2 | +import { RESPONSE_CODE } from '@/constants/enum'; | ||
3 | +import AddOrUpdate from '@/pages/product/product/components/AddOrUpdate'; | ||
4 | +import { postProductDelete, postProductPage } from '@/services'; | ||
5 | +import type { ActionType, ProColumns } from '@ant-design/pro-components'; | ||
6 | +import { ProTable } from '@ant-design/pro-components'; | ||
7 | +import { message } from 'antd'; | ||
8 | +import { useRef } from 'react'; | ||
9 | + | ||
10 | +export default () => { | ||
11 | + const actionRef = useRef<ActionType>(); | ||
12 | + const columns: ProColumns[] = [ | ||
13 | + { | ||
14 | + title: '编号', | ||
15 | + dataIndex: 'id', | ||
16 | + ellipsis: true, | ||
17 | + }, | ||
18 | + { | ||
19 | + title: '商品名称', | ||
20 | + dataIndex: 'name', | ||
21 | + ellipsis: true, | ||
22 | + hideInSearch: true, | ||
23 | + }, | ||
24 | + { | ||
25 | + title: '商品名称', | ||
26 | + dataIndex: 'nameLike', | ||
27 | + ellipsis: true, | ||
28 | + hideInTable: true, | ||
29 | + }, | ||
30 | + { | ||
31 | + title: '单位', | ||
32 | + dataIndex: 'baseUnitName', | ||
33 | + ellipsis: true, | ||
34 | + hideInSearch: true, | ||
35 | + }, | ||
36 | + { | ||
37 | + title: '单价', | ||
38 | + dataIndex: 'unitPrice', | ||
39 | + ellipsis: true, | ||
40 | + hideInSearch: true, | ||
41 | + }, | ||
42 | + { | ||
43 | + title: '库存', | ||
44 | + dataIndex: 'inventory', | ||
45 | + ellipsis: true, | ||
46 | + hideInSearch: true, | ||
47 | + }, | ||
48 | + | ||
49 | + { | ||
50 | + title: '操作', | ||
51 | + valueType: 'option', | ||
52 | + key: 'option', | ||
53 | + render: (text, record) => [ | ||
54 | + record.paths?.includes('UPDATE') && ( | ||
55 | + <AddOrUpdate | ||
56 | + key={'addOrUpdate'} | ||
57 | + record={record} | ||
58 | + onFinish={() => { | ||
59 | + actionRef.current?.reload(); | ||
60 | + }} | ||
61 | + /> | ||
62 | + ), | ||
63 | + record.paths?.includes('UPDATE') && ( | ||
64 | + <ButtonConfirm | ||
65 | + key="delete" | ||
66 | + className="p-0" | ||
67 | + title={'确认删除该记录?'} | ||
68 | + text="删除" | ||
69 | + onConfirm={async () => { | ||
70 | + let res = await postProductDelete({ | ||
71 | + query: { id: record.id }, | ||
72 | + }); | ||
73 | + if (res) { | ||
74 | + message.success(res.message); | ||
75 | + actionRef.current?.reload(); | ||
76 | + } | ||
77 | + }} | ||
78 | + /> | ||
79 | + ), | ||
80 | + ], | ||
81 | + }, | ||
82 | + ]; | ||
83 | + return ( | ||
84 | + <ProTable | ||
85 | + columns={columns} | ||
86 | + actionRef={actionRef} | ||
87 | + cardBordered | ||
88 | + request={async (params) => { | ||
89 | + const res = await postProductPage({ | ||
90 | + data: { | ||
91 | + ...params, | ||
92 | + }, | ||
93 | + }); | ||
94 | + if (res.result === RESPONSE_CODE.SUCCESS) { | ||
95 | + return { | ||
96 | + data: res?.data?.data, | ||
97 | + total: res?.data?.total || 0, | ||
98 | + }; | ||
99 | + } | ||
100 | + return { | ||
101 | + data: [], | ||
102 | + success: false, | ||
103 | + }; | ||
104 | + }} | ||
105 | + editable={{ | ||
106 | + type: 'multiple', | ||
107 | + }} | ||
108 | + columnsState={{ | ||
109 | + persistenceKey: 'pro-table-singe-demos', | ||
110 | + persistenceType: 'localStorage', | ||
111 | + defaultValue: { | ||
112 | + option: { fixed: 'right', disable: true }, | ||
113 | + }, | ||
114 | + onChange(value) { | ||
115 | + console.log('value: ', value); | ||
116 | + }, | ||
117 | + }} | ||
118 | + rowKey="id" | ||
119 | + search={{ | ||
120 | + labelWidth: 'auto', | ||
121 | + }} | ||
122 | + options={{ | ||
123 | + setting: { | ||
124 | + listsHeight: 400, | ||
125 | + }, | ||
126 | + }} | ||
127 | + form={{ | ||
128 | + // 由于配置了 transform,提交的参数与定义的不同这里需要转化一下 | ||
129 | + syncToUrl: (values, type) => { | ||
130 | + if (type === 'get') { | ||
131 | + return { | ||
132 | + ...values, | ||
133 | + created_at: [values.startTime, values.endTime], | ||
134 | + }; | ||
135 | + } | ||
136 | + return values; | ||
137 | + }, | ||
138 | + }} | ||
139 | + pagination={{ | ||
140 | + pageSize: 5, | ||
141 | + onChange: (page) => console.log(page), | ||
142 | + }} | ||
143 | + dateFormatter="string" | ||
144 | + headerTitle="商品列表" | ||
145 | + toolBarRender={() => [ | ||
146 | + <AddOrUpdate | ||
147 | + key="AddOrUpdate" | ||
148 | + record={null} | ||
149 | + onFinish={() => { | ||
150 | + actionRef.current?.reload(); | ||
151 | + }} | ||
152 | + />, | ||
153 | + ]} | ||
154 | + /> | ||
155 | + ); | ||
156 | +}; |
src/pages/product/productCollect/components/AddOrUpdate.tsx
0 → 100644
1 | +import { postProductCollectBillAddOrModify } from '@/services'; | ||
2 | +import { useModel } from '@@/exports'; | ||
3 | +import { | ||
4 | + ActionType, | ||
5 | + EditableProTable, | ||
6 | + ModalForm, | ||
7 | + ProCard, | ||
8 | + ProColumns, | ||
9 | + ProForm, | ||
10 | + ProFormDependency, | ||
11 | + ProFormField, | ||
12 | + ProFormSwitch, | ||
13 | + ProFormTextArea, | ||
14 | +} from '@ant-design/pro-components'; | ||
15 | +import { Button, Form, message } from 'antd'; | ||
16 | +import React, { useEffect, useRef, useState } from 'react'; | ||
17 | + | ||
18 | +export default ({ record, onfinish }) => { | ||
19 | + const [editableKeys, setEditableRowKeys] = useState<React.Key[]>([]); | ||
20 | + const [controlled, setControlled] = useState<boolean>(false); | ||
21 | + const [processedRecord, setProcessedRecord] = useState(record); | ||
22 | + const formRef = useRef(null); | ||
23 | + const editorFormRef = useRef(null); | ||
24 | + const { getProducts } = useModel('enum'); | ||
25 | + const actionRef = useRef<ActionType>(); | ||
26 | + useEffect(() => { | ||
27 | + if (record?.details) { | ||
28 | + const updateddetails = record.details.map((item) => ({ | ||
29 | + ...item, | ||
30 | + key: item.key || `key-${Math.random().toString(36).substr(2, 9)}`, // 动态生成唯一 key | ||
31 | + })); | ||
32 | + setProcessedRecord({ | ||
33 | + ...record, | ||
34 | + details: updateddetails, | ||
35 | + }); | ||
36 | + } | ||
37 | + }, [record]); | ||
38 | + | ||
39 | + const columns: ProColumns[] = [ | ||
40 | + { | ||
41 | + title: '商品', | ||
42 | + dataIndex: 'productId', | ||
43 | + valueType: 'select', | ||
44 | + request: async () => { | ||
45 | + const res = await getProducts(); | ||
46 | + return res.map((item) => ({ | ||
47 | + ...item, | ||
48 | + label: item.name, | ||
49 | + value: item.id, | ||
50 | + productUnitName: item.baseUnitName, | ||
51 | + productUnitPrice: item.unitPrice, | ||
52 | + })); | ||
53 | + }, | ||
54 | + fieldProps: (_, { rowIndex }) => ({ | ||
55 | + onSelect: (value, option) => { | ||
56 | + const currentTableData = editorFormRef.current?.getRowsData?.(); | ||
57 | + if (currentTableData) { | ||
58 | + const updatedData = [...currentTableData]; | ||
59 | + updatedData[rowIndex] = { | ||
60 | + ...updatedData[rowIndex], | ||
61 | + productUnitName: option.productUnitName, | ||
62 | + productUnitPrice: option.productUnitPrice, | ||
63 | + }; | ||
64 | + formRef.current?.setFieldsValue({ | ||
65 | + details: updatedData, | ||
66 | + }); | ||
67 | + } | ||
68 | + }, | ||
69 | + }), | ||
70 | + }, | ||
71 | + { | ||
72 | + title: '单位', | ||
73 | + dataIndex: 'productUnitName', | ||
74 | + valueType: 'text', | ||
75 | + editable: false, | ||
76 | + }, | ||
77 | + { | ||
78 | + title: '单价', | ||
79 | + dataIndex: 'productUnitPrice', | ||
80 | + valueType: 'digit', | ||
81 | + editable: false, | ||
82 | + }, | ||
83 | + { | ||
84 | + title: '数量', | ||
85 | + dataIndex: 'number', | ||
86 | + valueType: 'digit', | ||
87 | + }, | ||
88 | + { | ||
89 | + title: '备注', | ||
90 | + dataIndex: 'notes', | ||
91 | + valueType: 'textarea', | ||
92 | + }, | ||
93 | + { | ||
94 | + title: '操作', | ||
95 | + valueType: 'option', | ||
96 | + render: (text, record, _, action) => [ | ||
97 | + <a | ||
98 | + key="editable" | ||
99 | + onClick={() => { | ||
100 | + action?.startEditable?.(record.key); | ||
101 | + }} | ||
102 | + > | ||
103 | + 编辑 | ||
104 | + </a>, | ||
105 | + <a | ||
106 | + key="delete" | ||
107 | + onClick={() => { | ||
108 | + const tableDataSource = formRef.current?.getFieldValue('details'); | ||
109 | + formRef.current?.setFieldsValue({ | ||
110 | + table: tableDataSource.filter((item) => item.key !== record.key), | ||
111 | + }); | ||
112 | + }} | ||
113 | + > | ||
114 | + 删除 | ||
115 | + </a>, | ||
116 | + ], | ||
117 | + }, | ||
118 | + ]; | ||
119 | + | ||
120 | + const [form] = Form.useForm(); | ||
121 | + return ( | ||
122 | + <ModalForm | ||
123 | + formRef={formRef} | ||
124 | + initialValues={processedRecord} | ||
125 | + validateTrigger="onBlur" | ||
126 | + title="新建表单" | ||
127 | + trigger={ | ||
128 | + record?.id ? ( | ||
129 | + <Button type="link">修改</Button> | ||
130 | + ) : ( | ||
131 | + <Button type="primary">新建</Button> | ||
132 | + ) | ||
133 | + } | ||
134 | + form={form} | ||
135 | + autoFocusFirstInput | ||
136 | + width={1500} | ||
137 | + modalProps={{ | ||
138 | + destroyOnClose: true, | ||
139 | + onCancel: () => console.log('run'), | ||
140 | + }} | ||
141 | + submitTimeout={2000} | ||
142 | + onFinish={async (values) => { | ||
143 | + const res = await postProductCollectBillAddOrModify({ | ||
144 | + data: { | ||
145 | + ...record, | ||
146 | + ...values, | ||
147 | + }, | ||
148 | + }); | ||
149 | + if (res) { | ||
150 | + message.success(res.message); | ||
151 | + onfinish(); | ||
152 | + } | ||
153 | + return true; | ||
154 | + }} | ||
155 | + > | ||
156 | + <EditableProTable | ||
157 | + rowKey="key" | ||
158 | + scroll={{ | ||
159 | + x: 960, | ||
160 | + }} | ||
161 | + editableFormRef={editorFormRef} | ||
162 | + headerTitle="可编辑表格" | ||
163 | + maxLength={5} | ||
164 | + name="details" | ||
165 | + controlled={controlled} | ||
166 | + recordCreatorProps={{ | ||
167 | + position: 'bottom', | ||
168 | + record: () => ({ | ||
169 | + key: `key-${Math.random().toString(36).substr(2, 9)}`, | ||
170 | + }), | ||
171 | + }} | ||
172 | + actionRef={actionRef} | ||
173 | + toolBarRender={() => [ | ||
174 | + <ProFormSwitch | ||
175 | + key="render" | ||
176 | + fieldProps={{ | ||
177 | + style: { | ||
178 | + marginBlockEnd: 0, | ||
179 | + }, | ||
180 | + checked: controlled, | ||
181 | + onChange: (value) => { | ||
182 | + setControlled(value); | ||
183 | + }, | ||
184 | + }} | ||
185 | + checkedChildren="数据更新通知 Form" | ||
186 | + unCheckedChildren="保存后通知 Form" | ||
187 | + noStyle | ||
188 | + />, | ||
189 | + <Button | ||
190 | + key="rows" | ||
191 | + onClick={() => { | ||
192 | + const rows = editorFormRef.current?.getRowsData?.(); | ||
193 | + console.log(rows); | ||
194 | + }} | ||
195 | + > | ||
196 | + 获取 table 的数据 | ||
197 | + </Button>, | ||
198 | + ]} | ||
199 | + columns={columns} | ||
200 | + editable={{ | ||
201 | + type: 'multiple', | ||
202 | + editableKeys, | ||
203 | + onChange: setEditableRowKeys, | ||
204 | + actionRender: (row, config, defaultDom) => { | ||
205 | + return [defaultDom.save, defaultDom.delete, defaultDom.cancel]; | ||
206 | + }, | ||
207 | + }} | ||
208 | + /> | ||
209 | + <ProForm.Item> | ||
210 | + <ProCard title="表格数据" headerBordered collapsible defaultCollapsed> | ||
211 | + <ProFormDependency name={['details']}> | ||
212 | + {({ details }) => ( | ||
213 | + <ProFormField | ||
214 | + ignoreFormItem | ||
215 | + fieldProps={{ | ||
216 | + style: { | ||
217 | + width: '100%', | ||
218 | + }, | ||
219 | + }} | ||
220 | + mode="read" | ||
221 | + valueType="jsonCode" | ||
222 | + text={JSON.stringify(details)} | ||
223 | + /> | ||
224 | + )} | ||
225 | + </ProFormDependency> | ||
226 | + </ProCard> | ||
227 | + </ProForm.Item> | ||
228 | + <ProFormTextArea name="auditRemarks" label="备注" /> | ||
229 | + </ModalForm> | ||
230 | + ); | ||
231 | +}; |
src/pages/productCollectBill/components/Audit.tsx renamed to src/pages/product/productCollect/components/Audit.tsx
src/pages/product/productCollect/index.tsx
0 → 100644
1 | +import ButtonConfirm from '@/components/ButtomConfirm'; | ||
2 | +import { RESPONSE_CODE } from '@/constants/enum'; | ||
3 | +import AddOrUpdate from '@/pages/product/productCollect/components/AddOrUpdate'; | ||
4 | +import { | ||
5 | + postProductCollectBillDelete, | ||
6 | + postProductCollectBillPage, | ||
7 | + postServiceConstProductCollectBillStatus, | ||
8 | +} from '@/services'; | ||
9 | +import { enumToSelect } from '@/utils'; | ||
10 | +import { | ||
11 | + ProTable, | ||
12 | + type ActionType, | ||
13 | + type ProColumns, | ||
14 | +} from '@ant-design/pro-components'; | ||
15 | +import { message } from 'antd'; | ||
16 | +import { useRef } from 'react'; | ||
17 | +import Audit from './components/Audit'; | ||
18 | + | ||
19 | +export default () => { | ||
20 | + const actionRef = useRef<ActionType>(); | ||
21 | + const columns: ProColumns[] = [ | ||
22 | + { | ||
23 | + dataIndex: 'index', | ||
24 | + valueType: 'indexBorder', | ||
25 | + width: 48, | ||
26 | + }, | ||
27 | + { | ||
28 | + title: '申领人', | ||
29 | + dataIndex: 'createByName', | ||
30 | + ellipsis: true, | ||
31 | + width: 180, | ||
32 | + hideInSearch: true, | ||
33 | + }, | ||
34 | + { | ||
35 | + title: '申请时间', | ||
36 | + dataIndex: 'createTime', | ||
37 | + ellipsis: true, | ||
38 | + width: 180, | ||
39 | + hideInSearch: true, | ||
40 | + }, | ||
41 | + { | ||
42 | + title: '审核状态', | ||
43 | + dataIndex: 'auditStatusText', | ||
44 | + ellipsis: true, | ||
45 | + width: 180, | ||
46 | + hideInSearch: true, | ||
47 | + }, | ||
48 | + { | ||
49 | + title: '申领备注', | ||
50 | + dataIndex: 'applyRemarks', | ||
51 | + valueType: 'textarea', | ||
52 | + ellipsis: true, | ||
53 | + width: 180, | ||
54 | + hideInSearch: true, | ||
55 | + }, | ||
56 | + { | ||
57 | + title: '审核备注', | ||
58 | + dataIndex: 'auditRemarks', | ||
59 | + valueType: 'textarea', | ||
60 | + ellipsis: true, | ||
61 | + width: 180, | ||
62 | + hideInSearch: true, | ||
63 | + }, | ||
64 | + | ||
65 | + { | ||
66 | + title: '申领物品', | ||
67 | + dataIndex: 'productNameLike', | ||
68 | + ellipsis: true, | ||
69 | + width: 180, | ||
70 | + hideInTable: true, | ||
71 | + }, | ||
72 | + { | ||
73 | + title: '申领人', | ||
74 | + dataIndex: 'createByNameLike', | ||
75 | + hideInTable: true, | ||
76 | + }, | ||
77 | + { | ||
78 | + title: '申请时间', | ||
79 | + valueType: 'dateTimeRange', | ||
80 | + hideInTable: true, | ||
81 | + search: { | ||
82 | + transform: (value) => { | ||
83 | + if (value) { | ||
84 | + return { | ||
85 | + createTimeGe: value[0], | ||
86 | + createTimeLe: value[1], | ||
87 | + }; | ||
88 | + } | ||
89 | + }, | ||
90 | + }, | ||
91 | + }, | ||
92 | + { | ||
93 | + title: '审核状态', | ||
94 | + valueType: 'select', | ||
95 | + key: 'auditStatus', | ||
96 | + dataIndex: 'auditStatus', | ||
97 | + filters: true, | ||
98 | + onFilter: true, | ||
99 | + hideInTable: true, | ||
100 | + request: async () => { | ||
101 | + const res = await postServiceConstProductCollectBillStatus(); | ||
102 | + return enumToSelect(res.data); | ||
103 | + }, | ||
104 | + }, | ||
105 | + { | ||
106 | + title: '操作', | ||
107 | + valueType: 'option', | ||
108 | + key: 'option', | ||
109 | + render: (text, record) => [ | ||
110 | + record.paths?.includes('UPDATE') && ( | ||
111 | + <AddOrUpdate | ||
112 | + record={record} | ||
113 | + onfinish={() => { | ||
114 | + actionRef.current?.reload(); | ||
115 | + }} | ||
116 | + /> | ||
117 | + ), | ||
118 | + record.paths?.includes('UPDATE') && ( | ||
119 | + <ButtonConfirm | ||
120 | + key="delete" | ||
121 | + className="p-0" | ||
122 | + title={'确认删除该记录?'} | ||
123 | + text="删除" | ||
124 | + onConfirm={async () => { | ||
125 | + let res = await postProductCollectBillDelete({ | ||
126 | + query: { id: record.id }, | ||
127 | + }); | ||
128 | + if (res) { | ||
129 | + message.success(res.message); | ||
130 | + actionRef.current?.reload(); | ||
131 | + } | ||
132 | + }} | ||
133 | + /> | ||
134 | + ), | ||
135 | + record.paths?.includes('AUDIT') && ( | ||
136 | + <Audit | ||
137 | + recordId={record.id} | ||
138 | + onClose={() => { | ||
139 | + actionRef.current?.reload(); | ||
140 | + }} | ||
141 | + /> | ||
142 | + ), | ||
143 | + ], | ||
144 | + }, | ||
145 | + ]; | ||
146 | + | ||
147 | + return ( | ||
148 | + <ProTable | ||
149 | + actionRef={actionRef} | ||
150 | + columns={columns} | ||
151 | + request={async (params) => { | ||
152 | + const res = await postProductCollectBillPage({ | ||
153 | + data: { | ||
154 | + ...params, | ||
155 | + }, | ||
156 | + }); | ||
157 | + if (res.result === RESPONSE_CODE.SUCCESS) { | ||
158 | + return { | ||
159 | + data: res?.data?.data, | ||
160 | + total: res?.data?.total || 0, | ||
161 | + }; | ||
162 | + } | ||
163 | + return { | ||
164 | + data: [], | ||
165 | + success: false, | ||
166 | + }; | ||
167 | + }} | ||
168 | + rowKey="id" | ||
169 | + pagination={{ | ||
170 | + showQuickJumper: true, | ||
171 | + }} | ||
172 | + expandable={{ | ||
173 | + expandedRowRender: (record) => ( | ||
174 | + <ProTable | ||
175 | + columns={[ | ||
176 | + { | ||
177 | + title: '商品名称', | ||
178 | + dataIndex: 'productName', | ||
179 | + key: 'productName', | ||
180 | + }, | ||
181 | + { title: '数量', dataIndex: 'number', key: 'number' }, | ||
182 | + { title: '备注', dataIndex: 'notes', key: 'notes' }, | ||
183 | + ]} | ||
184 | + headerTitle={false} | ||
185 | + search={false} | ||
186 | + options={false} | ||
187 | + dataSource={record.details} | ||
188 | + pagination={false} | ||
189 | + /> | ||
190 | + ), | ||
191 | + }} | ||
192 | + dateFormatter="string" | ||
193 | + headerTitle="采购管理" | ||
194 | + options={false} | ||
195 | + toolBarRender={() => [ | ||
196 | + <AddOrUpdate | ||
197 | + key="add" | ||
198 | + record={undefined} | ||
199 | + onfinish={() => actionRef.current?.reload()} | ||
200 | + />, | ||
201 | + ]} | ||
202 | + /> | ||
203 | + ); | ||
204 | +}; |
src/pages/productCollectBill/index.tsx renamed to src/pages/product/productCollect/indexcopy.tsx
1 | import ButtonConfirm from '@/components/ButtomConfirm'; | 1 | import ButtonConfirm from '@/components/ButtomConfirm'; |
2 | import { RESPONSE_CODE } from '@/constants/enum'; | 2 | import { RESPONSE_CODE } from '@/constants/enum'; |
3 | -import AddOrUpdate from '@/pages/productCollectBill/components/AddOrUpdate'; | ||
4 | -import Audit from '@/pages/productCollectBill/components/Audit'; | 3 | +import AddOrUpdate from '@/pages/product/productCollect/components/AddOrUpdate'; |
4 | +import Audit from '@/pages/product/productCollect/components/Audit'; | ||
5 | import { | 5 | import { |
6 | postProductCollectBillDelete, | 6 | postProductCollectBillDelete, |
7 | postProductCollectBillPage, | 7 | postProductCollectBillPage, |
@@ -96,8 +96,6 @@ export default () => { | @@ -96,8 +96,6 @@ export default () => { | ||
96 | hideInTable: true, | 96 | hideInTable: true, |
97 | request: async () => { | 97 | request: async () => { |
98 | const res = await postServiceConstStores(); | 98 | const res = await postServiceConstStores(); |
99 | - console.log('Stores' + JSON.stringify(res)); | ||
100 | - console.log('Stores' + JSON.stringify(res.data)); | ||
101 | return enumToSelect(res.data); | 99 | return enumToSelect(res.data); |
102 | }, | 100 | }, |
103 | }, | 101 | }, |
@@ -131,8 +129,6 @@ export default () => { | @@ -131,8 +129,6 @@ export default () => { | ||
131 | hideInTable: true, | 129 | hideInTable: true, |
132 | request: async () => { | 130 | request: async () => { |
133 | const res = await postServiceConstProductCollectBillStatus(); | 131 | const res = await postServiceConstProductCollectBillStatus(); |
134 | - console.log('auditStaus' + JSON.stringify(res)); | ||
135 | - console.log('auditStaus' + JSON.stringify(res.data)); | ||
136 | return enumToSelect(res.data); | 132 | return enumToSelect(res.data); |
137 | }, | 133 | }, |
138 | }, | 134 | }, |
src/services/definition.ts
@@ -79,6 +79,10 @@ export type ProcureReturnBillDtoStatus = | @@ -79,6 +79,10 @@ export type ProcureReturnBillDtoStatus = | ||
79 | | 'WAIT_SEND' | 79 | | 'WAIT_SEND' |
80 | | 'SENDED' | 80 | | 'SENDED' |
81 | | 'WAIT_AUDIT'; | 81 | | 'WAIT_AUDIT'; |
82 | +export type ProcureBillInfoAuditStatus = | ||
83 | + | 'WAIT_AUDIT' | ||
84 | + | 'AUDIT_PASS' | ||
85 | + | 'AUDIT_REFUSE'; | ||
82 | export type ProductCollectBillAuditStatus = | 86 | export type ProductCollectBillAuditStatus = |
83 | | 'WAIT_AUDIT' | 87 | | 'WAIT_AUDIT' |
84 | | 'AUDIT_PASS' | 88 | | 'AUDIT_PASS' |
@@ -215,6 +219,10 @@ export interface AdminClientDto { | @@ -215,6 +219,10 @@ export interface AdminClientDto { | ||
215 | export interface AdminDeptQueryVO { | 219 | export interface AdminDeptQueryVO { |
216 | createByName?: string; | 220 | createByName?: string; |
217 | createByNameLike?: string; | 221 | createByNameLike?: string; |
222 | + /** @format date-time */ | ||
223 | + createTimeGe?: string; | ||
224 | + /** @format date-time */ | ||
225 | + createTimeLe?: string; | ||
218 | /** @format int32 */ | 226 | /** @format int32 */ |
219 | current?: number; | 227 | current?: number; |
220 | /** @format int32 */ | 228 | /** @format int32 */ |
@@ -261,6 +269,10 @@ export interface AdminInvoicingAccountDTO { | @@ -261,6 +269,10 @@ export interface AdminInvoicingAccountDTO { | ||
261 | export interface AdminJobQueryVO { | 269 | export interface AdminJobQueryVO { |
262 | createByName?: string; | 270 | createByName?: string; |
263 | createByNameLike?: string; | 271 | createByNameLike?: string; |
272 | + /** @format date-time */ | ||
273 | + createTimeGe?: string; | ||
274 | + /** @format date-time */ | ||
275 | + createTimeLe?: string; | ||
264 | /** @format int32 */ | 276 | /** @format int32 */ |
265 | current?: number; | 277 | current?: number; |
266 | /** @format int32 */ | 278 | /** @format int32 */ |
@@ -293,6 +305,10 @@ export interface AdminMenuQueryVO { | @@ -293,6 +305,10 @@ export interface AdminMenuQueryVO { | ||
293 | component?: string; | 305 | component?: string; |
294 | createByName?: string; | 306 | createByName?: string; |
295 | createByNameLike?: string; | 307 | createByNameLike?: string; |
308 | + /** @format date-time */ | ||
309 | + createTimeGe?: string; | ||
310 | + /** @format date-time */ | ||
311 | + createTimeLe?: string; | ||
296 | /** @format int32 */ | 312 | /** @format int32 */ |
297 | current?: number; | 313 | current?: number; |
298 | /** @format int32 */ | 314 | /** @format int32 */ |
@@ -344,6 +360,10 @@ export interface AdminMenuVO { | @@ -344,6 +360,10 @@ export interface AdminMenuVO { | ||
344 | export interface AdminRoleQueryVO { | 360 | export interface AdminRoleQueryVO { |
345 | createByName?: string; | 361 | createByName?: string; |
346 | createByNameLike?: string; | 362 | createByNameLike?: string; |
363 | + /** @format date-time */ | ||
364 | + createTimeGe?: string; | ||
365 | + /** @format date-time */ | ||
366 | + createTimeLe?: string; | ||
347 | /** @format int32 */ | 367 | /** @format int32 */ |
348 | current?: number; | 368 | current?: number; |
349 | dataScope?: string; | 369 | dataScope?: string; |
@@ -378,6 +398,10 @@ export interface AdminRoleVO { | @@ -378,6 +398,10 @@ export interface AdminRoleVO { | ||
378 | export interface AdminUserLoginByPhoneVO { | 398 | export interface AdminUserLoginByPhoneVO { |
379 | createByName?: string; | 399 | createByName?: string; |
380 | createByNameLike?: string; | 400 | createByNameLike?: string; |
401 | + /** @format date-time */ | ||
402 | + createTimeGe?: string; | ||
403 | + /** @format date-time */ | ||
404 | + createTimeLe?: string; | ||
381 | /** @format int32 */ | 405 | /** @format int32 */ |
382 | current?: number; | 406 | current?: number; |
383 | /** @format int32 */ | 407 | /** @format int32 */ |
@@ -395,6 +419,10 @@ export interface AdminUserLoginByPhoneVO { | @@ -395,6 +419,10 @@ export interface AdminUserLoginByPhoneVO { | ||
395 | export interface AdminUserLoginByPwdVO { | 419 | export interface AdminUserLoginByPwdVO { |
396 | createByName?: string; | 420 | createByName?: string; |
397 | createByNameLike?: string; | 421 | createByNameLike?: string; |
422 | + /** @format date-time */ | ||
423 | + createTimeGe?: string; | ||
424 | + /** @format date-time */ | ||
425 | + createTimeLe?: string; | ||
398 | /** @format int32 */ | 426 | /** @format int32 */ |
399 | current?: number; | 427 | current?: number; |
400 | /** @format int32 */ | 428 | /** @format int32 */ |
@@ -415,6 +443,10 @@ export interface AdminUserModifyPwdVO { | @@ -415,6 +443,10 @@ export interface AdminUserModifyPwdVO { | ||
415 | confirmPassword?: string; | 443 | confirmPassword?: string; |
416 | createByName?: string; | 444 | createByName?: string; |
417 | createByNameLike?: string; | 445 | createByNameLike?: string; |
446 | + /** @format date-time */ | ||
447 | + createTimeGe?: string; | ||
448 | + /** @format date-time */ | ||
449 | + createTimeLe?: string; | ||
418 | /** @format int32 */ | 450 | /** @format int32 */ |
419 | current?: number; | 451 | current?: number; |
420 | /** @format int32 */ | 452 | /** @format int32 */ |
@@ -433,6 +465,10 @@ export interface AdminUserModifyPwdVO { | @@ -433,6 +465,10 @@ export interface AdminUserModifyPwdVO { | ||
433 | export interface AdminUserPasswordRecoverEmailVO { | 465 | export interface AdminUserPasswordRecoverEmailVO { |
434 | createByName?: string; | 466 | createByName?: string; |
435 | createByNameLike?: string; | 467 | createByNameLike?: string; |
468 | + /** @format date-time */ | ||
469 | + createTimeGe?: string; | ||
470 | + /** @format date-time */ | ||
471 | + createTimeLe?: string; | ||
436 | /** @format int32 */ | 472 | /** @format int32 */ |
437 | current?: number; | 473 | current?: number; |
438 | /** @format int32 */ | 474 | /** @format int32 */ |
@@ -449,6 +485,10 @@ export interface AdminUserPasswordRecoverEmailVO { | @@ -449,6 +485,10 @@ export interface AdminUserPasswordRecoverEmailVO { | ||
449 | export interface AdminUserQueryVO { | 485 | export interface AdminUserQueryVO { |
450 | createByName?: string; | 486 | createByName?: string; |
451 | createByNameLike?: string; | 487 | createByNameLike?: string; |
488 | + /** @format date-time */ | ||
489 | + createTimeGe?: string; | ||
490 | + /** @format date-time */ | ||
491 | + createTimeLe?: string; | ||
452 | /** @format int32 */ | 492 | /** @format int32 */ |
453 | current?: number; | 493 | current?: number; |
454 | email?: string; | 494 | email?: string; |
@@ -475,6 +515,10 @@ export interface AdminUserRegisterVO { | @@ -475,6 +515,10 @@ export interface AdminUserRegisterVO { | ||
475 | confirmPassword?: string; | 515 | confirmPassword?: string; |
476 | createByName?: string; | 516 | createByName?: string; |
477 | createByNameLike?: string; | 517 | createByNameLike?: string; |
518 | + /** @format date-time */ | ||
519 | + createTimeGe?: string; | ||
520 | + /** @format date-time */ | ||
521 | + createTimeLe?: string; | ||
478 | /** @format int32 */ | 522 | /** @format int32 */ |
479 | current?: number; | 523 | current?: number; |
480 | email?: string; | 524 | email?: string; |
@@ -707,6 +751,10 @@ export interface ApiCreateProductRequest { | @@ -707,6 +751,10 @@ export interface ApiCreateProductRequest { | ||
707 | export interface ApiOrderCustomersRequest { | 751 | export interface ApiOrderCustomersRequest { |
708 | createByName?: string; | 752 | createByName?: string; |
709 | createByNameLike?: string; | 753 | createByNameLike?: string; |
754 | + /** @format date-time */ | ||
755 | + createTimeGe?: string; | ||
756 | + /** @format date-time */ | ||
757 | + createTimeLe?: string; | ||
710 | /** @format int32 */ | 758 | /** @format int32 */ |
711 | current?: number; | 759 | current?: number; |
712 | /** @format int32 */ | 760 | /** @format int32 */ |
@@ -1016,6 +1064,10 @@ export interface AuditDto { | @@ -1016,6 +1064,10 @@ export interface AuditDto { | ||
1016 | export interface AuditVO { | 1064 | export interface AuditVO { |
1017 | createByName?: string; | 1065 | createByName?: string; |
1018 | createByNameLike?: string; | 1066 | createByNameLike?: string; |
1067 | + /** @format date-time */ | ||
1068 | + createTimeGe?: string; | ||
1069 | + /** @format date-time */ | ||
1070 | + createTimeLe?: string; | ||
1019 | /** @format int32 */ | 1071 | /** @format int32 */ |
1020 | current?: number; | 1072 | current?: number; |
1021 | /** @format int32 */ | 1073 | /** @format int32 */ |
@@ -1100,6 +1152,10 @@ export interface CancelSendOrderDto { | @@ -1100,6 +1152,10 @@ export interface CancelSendOrderDto { | ||
1100 | export interface CaptchaMessageVO { | 1152 | export interface CaptchaMessageVO { |
1101 | createByName?: string; | 1153 | createByName?: string; |
1102 | createByNameLike?: string; | 1154 | createByNameLike?: string; |
1155 | + /** @format date-time */ | ||
1156 | + createTimeGe?: string; | ||
1157 | + /** @format date-time */ | ||
1158 | + createTimeLe?: string; | ||
1103 | /** @format int32 */ | 1159 | /** @format int32 */ |
1104 | current?: number; | 1160 | current?: number; |
1105 | /** @format int32 */ | 1161 | /** @format int32 */ |
@@ -1375,6 +1431,10 @@ export interface CustomerSaveReq { | @@ -1375,6 +1431,10 @@ export interface CustomerSaveReq { | ||
1375 | export interface DictionaryQueryVO { | 1431 | export interface DictionaryQueryVO { |
1376 | createByName?: string; | 1432 | createByName?: string; |
1377 | createByNameLike?: string; | 1433 | createByNameLike?: string; |
1434 | + /** @format date-time */ | ||
1435 | + createTimeGe?: string; | ||
1436 | + /** @format date-time */ | ||
1437 | + createTimeLe?: string; | ||
1378 | /** @format int32 */ | 1438 | /** @format int32 */ |
1379 | current?: number; | 1439 | current?: number; |
1380 | dictCode?: string; | 1440 | dictCode?: string; |
@@ -2244,6 +2304,10 @@ export interface MergeIntegralDto { | @@ -2244,6 +2304,10 @@ export interface MergeIntegralDto { | ||
2244 | export interface MessageQueryDTO { | 2304 | export interface MessageQueryDTO { |
2245 | createByName?: string; | 2305 | createByName?: string; |
2246 | createByNameLike?: string; | 2306 | createByNameLike?: string; |
2307 | + /** @format date-time */ | ||
2308 | + createTimeGe?: string; | ||
2309 | + /** @format date-time */ | ||
2310 | + createTimeLe?: string; | ||
2247 | /** @format int32 */ | 2311 | /** @format int32 */ |
2248 | current?: number; | 2312 | current?: number; |
2249 | /** @format int32 */ | 2313 | /** @format int32 */ |
@@ -2289,6 +2353,10 @@ export interface OrderAuditLogQueryVO { | @@ -2289,6 +2353,10 @@ export interface OrderAuditLogQueryVO { | ||
2289 | applyId?: number; | 2353 | applyId?: number; |
2290 | createByName?: string; | 2354 | createByName?: string; |
2291 | createByNameLike?: string; | 2355 | createByNameLike?: string; |
2356 | + /** @format date-time */ | ||
2357 | + createTimeGe?: string; | ||
2358 | + /** @format date-time */ | ||
2359 | + createTimeLe?: string; | ||
2292 | /** @format int32 */ | 2360 | /** @format int32 */ |
2293 | current?: number; | 2361 | current?: number; |
2294 | /** @format int32 */ | 2362 | /** @format int32 */ |
@@ -2335,6 +2403,10 @@ export interface OrderBaseInfoQueryVO { | @@ -2335,6 +2403,10 @@ export interface OrderBaseInfoQueryVO { | ||
2335 | collection?: string; | 2403 | collection?: string; |
2336 | createByName?: string; | 2404 | createByName?: string; |
2337 | createByNameLike?: string; | 2405 | createByNameLike?: string; |
2406 | + /** @format date-time */ | ||
2407 | + createTimeGe?: string; | ||
2408 | + /** @format date-time */ | ||
2409 | + createTimeLe?: string; | ||
2338 | /** @format int32 */ | 2410 | /** @format int32 */ |
2339 | current?: number; | 2411 | current?: number; |
2340 | customerCode?: string; | 2412 | customerCode?: string; |
@@ -2431,6 +2503,10 @@ export interface OrderFieldLockApplyQueryVO { | @@ -2431,6 +2503,10 @@ export interface OrderFieldLockApplyQueryVO { | ||
2431 | auditUserId?: number; | 2503 | auditUserId?: number; |
2432 | createByName?: string; | 2504 | createByName?: string; |
2433 | createByNameLike?: string; | 2505 | createByNameLike?: string; |
2506 | + /** @format date-time */ | ||
2507 | + createTimeGe?: string; | ||
2508 | + /** @format date-time */ | ||
2509 | + createTimeLe?: string; | ||
2434 | /** @format int32 */ | 2510 | /** @format int32 */ |
2435 | current?: number; | 2511 | current?: number; |
2436 | /** @format int32 */ | 2512 | /** @format int32 */ |
@@ -2502,6 +2578,10 @@ export interface OrderMainProDo { | @@ -2502,6 +2578,10 @@ export interface OrderMainProDo { | ||
2502 | export interface OrderOptLogQueryVO { | 2578 | export interface OrderOptLogQueryVO { |
2503 | createByName?: string; | 2579 | createByName?: string; |
2504 | createByNameLike?: string; | 2580 | createByNameLike?: string; |
2581 | + /** @format date-time */ | ||
2582 | + createTimeGe?: string; | ||
2583 | + /** @format date-time */ | ||
2584 | + createTimeLe?: string; | ||
2505 | /** @format int32 */ | 2585 | /** @format int32 */ |
2506 | current?: number; | 2586 | current?: number; |
2507 | /** @format int32 */ | 2587 | /** @format int32 */ |
@@ -2745,6 +2825,17 @@ export interface OrderZoNingProvinceUserDo { | @@ -2745,6 +2825,17 @@ export interface OrderZoNingProvinceUserDo { | ||
2745 | zoning?: string; | 2825 | zoning?: string; |
2746 | } | 2826 | } |
2747 | 2827 | ||
2828 | +export interface ProcureBillAuditDto { | ||
2829 | + /** | ||
2830 | + * @description | ||
2831 | + * 审核备注 | ||
2832 | + */ | ||
2833 | + auditRemarks?: string; | ||
2834 | + /** @format int64 */ | ||
2835 | + id?: number; | ||
2836 | + passed?: boolean; | ||
2837 | +} | ||
2838 | + | ||
2748 | export interface ProcureConvertProcureDto { | 2839 | export interface ProcureConvertProcureDto { |
2749 | /** | 2840 | /** |
2750 | * @description | 2841 | * @description |
@@ -2925,6 +3016,10 @@ export interface QueryBankStatementDto { | @@ -2925,6 +3016,10 @@ export interface QueryBankStatementDto { | ||
2925 | collectionDatetimeEnd?: string; | 3016 | collectionDatetimeEnd?: string; |
2926 | createByName?: string; | 3017 | createByName?: string; |
2927 | createByNameLike?: string; | 3018 | createByNameLike?: string; |
3019 | + /** @format date-time */ | ||
3020 | + createTimeGe?: string; | ||
3021 | + /** @format date-time */ | ||
3022 | + createTimeLe?: string; | ||
2928 | /** @format int32 */ | 3023 | /** @format int32 */ |
2929 | current?: number; | 3024 | current?: number; |
2930 | /** @format int32 */ | 3025 | /** @format int32 */ |
@@ -3107,6 +3202,10 @@ export interface QueryInvoiceDetailDto { | @@ -3107,6 +3202,10 @@ export interface QueryInvoiceDetailDto { | ||
3107 | export interface QueryInvoiceProjectDto { | 3202 | export interface QueryInvoiceProjectDto { |
3108 | createByName?: string; | 3203 | createByName?: string; |
3109 | createByNameLike?: string; | 3204 | createByNameLike?: string; |
3205 | + /** @format date-time */ | ||
3206 | + createTimeGe?: string; | ||
3207 | + /** @format date-time */ | ||
3208 | + createTimeLe?: string; | ||
3110 | /** @format int32 */ | 3209 | /** @format int32 */ |
3111 | current?: number; | 3210 | current?: number; |
3112 | /** @format int32 */ | 3211 | /** @format int32 */ |
@@ -3412,6 +3511,10 @@ export interface QueryUseOldInvoicingDto { | @@ -3412,6 +3511,10 @@ export interface QueryUseOldInvoicingDto { | ||
3412 | export interface QueryUserIntegralRecordDto { | 3511 | export interface QueryUserIntegralRecordDto { |
3413 | createByName?: string; | 3512 | createByName?: string; |
3414 | createByNameLike?: string; | 3513 | createByNameLike?: string; |
3514 | + /** @format date-time */ | ||
3515 | + createTimeGe?: string; | ||
3516 | + /** @format date-time */ | ||
3517 | + createTimeLe?: string; | ||
3415 | /** @format int32 */ | 3518 | /** @format int32 */ |
3416 | current?: number; | 3519 | current?: number; |
3417 | /** @format int32 */ | 3520 | /** @format int32 */ |
@@ -3580,6 +3683,10 @@ export interface ResearchGroupListRequest { | @@ -3580,6 +3683,10 @@ export interface ResearchGroupListRequest { | ||
3580 | companyNameLike?: string; | 3683 | companyNameLike?: string; |
3581 | createByName?: string; | 3684 | createByName?: string; |
3582 | createByNameLike?: string; | 3685 | createByNameLike?: string; |
3686 | + /** @format date-time */ | ||
3687 | + createTimeGe?: string; | ||
3688 | + /** @format date-time */ | ||
3689 | + createTimeLe?: string; | ||
3583 | /** @format int32 */ | 3690 | /** @format int32 */ |
3584 | current?: number; | 3691 | current?: number; |
3585 | /** @format int32 */ | 3692 | /** @format int32 */ |
@@ -3732,6 +3839,10 @@ export interface ResearchGroupMemberRequestsRequest { | @@ -3732,6 +3839,10 @@ export interface ResearchGroupMemberRequestsRequest { | ||
3732 | */ | 3839 | */ |
3733 | createByName?: string; | 3840 | createByName?: string; |
3734 | createByNameLike?: string; | 3841 | createByNameLike?: string; |
3842 | + /** @format date-time */ | ||
3843 | + createTimeGe?: string; | ||
3844 | + /** @format date-time */ | ||
3845 | + createTimeLe?: string; | ||
3735 | /** @format int32 */ | 3846 | /** @format int32 */ |
3736 | current?: number; | 3847 | current?: number; |
3737 | /** @format int32 */ | 3848 | /** @format int32 */ |
@@ -4070,6 +4181,10 @@ export interface SysLogQueryVO { | @@ -4070,6 +4181,10 @@ export interface SysLogQueryVO { | ||
4070 | browser?: string; | 4181 | browser?: string; |
4071 | createByName?: string; | 4182 | createByName?: string; |
4072 | createByNameLike?: string; | 4183 | createByNameLike?: string; |
4184 | + /** @format date-time */ | ||
4185 | + createTimeGe?: string; | ||
4186 | + /** @format date-time */ | ||
4187 | + createTimeLe?: string; | ||
4073 | /** @format int32 */ | 4188 | /** @format int32 */ |
4074 | current?: number; | 4189 | current?: number; |
4075 | description?: string; | 4190 | description?: string; |
@@ -4109,6 +4224,10 @@ export interface TicketsSearchVo { | @@ -4109,6 +4224,10 @@ export interface TicketsSearchVo { | ||
4109 | createByName?: string; | 4224 | createByName?: string; |
4110 | createByNameLike?: string; | 4225 | createByNameLike?: string; |
4111 | createTime?: Array<LocalDateTime>; | 4226 | createTime?: Array<LocalDateTime>; |
4227 | + /** @format date-time */ | ||
4228 | + createTimeGe?: string; | ||
4229 | + /** @format date-time */ | ||
4230 | + createTimeLe?: string; | ||
4112 | /** @format int32 */ | 4231 | /** @format int32 */ |
4113 | current?: number; | 4232 | current?: number; |
4114 | detailText?: string; | 4233 | detailText?: string; |
@@ -4300,6 +4419,10 @@ export interface UserAddressListRequest { | @@ -4300,6 +4419,10 @@ export interface UserAddressListRequest { | ||
4300 | export interface UserCenterInfoRequest { | 4419 | export interface UserCenterInfoRequest { |
4301 | createByName?: string; | 4420 | createByName?: string; |
4302 | createByNameLike?: string; | 4421 | createByNameLike?: string; |
4422 | + /** @format date-time */ | ||
4423 | + createTimeGe?: string; | ||
4424 | + /** @format date-time */ | ||
4425 | + createTimeLe?: string; | ||
4303 | /** @format int32 */ | 4426 | /** @format int32 */ |
4304 | current?: number; | 4427 | current?: number; |
4305 | /** @format int32 */ | 4428 | /** @format int32 */ |
@@ -4327,6 +4450,10 @@ export interface UserCenterInfoRequest { | @@ -4327,6 +4450,10 @@ export interface UserCenterInfoRequest { | ||
4327 | export interface UserDetailRequest { | 4450 | export interface UserDetailRequest { |
4328 | createByName?: string; | 4451 | createByName?: string; |
4329 | createByNameLike?: string; | 4452 | createByNameLike?: string; |
4453 | + /** @format date-time */ | ||
4454 | + createTimeGe?: string; | ||
4455 | + /** @format date-time */ | ||
4456 | + createTimeLe?: string; | ||
4330 | /** @format int32 */ | 4457 | /** @format int32 */ |
4331 | current?: number; | 4458 | current?: number; |
4332 | /** @format int32 */ | 4459 | /** @format int32 */ |
@@ -4352,6 +4479,10 @@ export interface UserDetailRequest { | @@ -4352,6 +4479,10 @@ export interface UserDetailRequest { | ||
4352 | export interface UserListRequest { | 4479 | export interface UserListRequest { |
4353 | createByName?: string; | 4480 | createByName?: string; |
4354 | createByNameLike?: string; | 4481 | createByNameLike?: string; |
4482 | + /** @format date-time */ | ||
4483 | + createTimeGe?: string; | ||
4484 | + /** @format date-time */ | ||
4485 | + createTimeLe?: string; | ||
4355 | /** @format int32 */ | 4486 | /** @format int32 */ |
4356 | current?: number; | 4487 | current?: number; |
4357 | /** | 4488 | /** |
@@ -4688,6 +4819,10 @@ export interface InvoiceReissueRecord { | @@ -4688,6 +4819,10 @@ export interface InvoiceReissueRecord { | ||
4688 | createDatetimeLe?: string; | 4819 | createDatetimeLe?: string; |
4689 | /** @format date-time */ | 4820 | /** @format date-time */ |
4690 | createTime?: string; | 4821 | createTime?: string; |
4822 | + /** @format date-time */ | ||
4823 | + createTimeGe?: string; | ||
4824 | + /** @format date-time */ | ||
4825 | + createTimeLe?: string; | ||
4691 | /** @format int32 */ | 4826 | /** @format int32 */ |
4692 | current?: number; | 4827 | current?: number; |
4693 | /** @format int32 */ | 4828 | /** @format int32 */ |
@@ -4769,6 +4904,67 @@ export interface InvoiceReissueRecord { | @@ -4769,6 +4904,67 @@ export interface InvoiceReissueRecord { | ||
4769 | updateTime?: string; | 4904 | updateTime?: string; |
4770 | } | 4905 | } |
4771 | 4906 | ||
4907 | +export interface ProcureBillDetail { | ||
4908 | + annexList?: Array<string>; | ||
4909 | + annexs?: string; | ||
4910 | + createByName?: string; | ||
4911 | + /** @format date-time */ | ||
4912 | + createTime?: string; | ||
4913 | + /** @format int64 */ | ||
4914 | + id?: number; | ||
4915 | + /** @format int64 */ | ||
4916 | + infoId?: number; | ||
4917 | + logicDelete?: boolean; | ||
4918 | + notes?: string; | ||
4919 | + number?: number; | ||
4920 | + paths?: Array<string>; | ||
4921 | + /** @format int64 */ | ||
4922 | + productId?: number; | ||
4923 | + productName?: string; | ||
4924 | + productUnitName?: string; | ||
4925 | + productUnitPrice?: number; | ||
4926 | + totalPrice?: number; | ||
4927 | + updateByName?: string; | ||
4928 | + /** @format date-time */ | ||
4929 | + updateTime?: string; | ||
4930 | +} | ||
4931 | + | ||
4932 | +export interface ProcureBillInfo { | ||
4933 | + auditNotes?: string; | ||
4934 | + auditNotesLike?: string; | ||
4935 | + auditStatus?: ProcureBillInfoAuditStatus; | ||
4936 | + auditStatusText?: string; | ||
4937 | + createByName?: string; | ||
4938 | + createByNameLike?: string; | ||
4939 | + /** @format date-time */ | ||
4940 | + createTime?: string; | ||
4941 | + /** @format date-time */ | ||
4942 | + createTimeGe?: string; | ||
4943 | + /** @format date-time */ | ||
4944 | + createTimeLe?: string; | ||
4945 | + /** @format int32 */ | ||
4946 | + current?: number; | ||
4947 | + /** @format int32 */ | ||
4948 | + end?: number; | ||
4949 | + /** @format int64 */ | ||
4950 | + id?: number; | ||
4951 | + logicDelete?: boolean; | ||
4952 | + notes?: string; | ||
4953 | + notesLike?: string; | ||
4954 | + /** @format int32 */ | ||
4955 | + pageSize?: number; | ||
4956 | + paths?: Array<string>; | ||
4957 | + procureBillDetailList?: Array<ProcureBillDetail>; | ||
4958 | + /** @format int32 */ | ||
4959 | + start?: number; | ||
4960 | + /** @format int32 */ | ||
4961 | + total?: number; | ||
4962 | + totalPrice?: number; | ||
4963 | + updateByName?: string; | ||
4964 | + /** @format date-time */ | ||
4965 | + updateTime?: string; | ||
4966 | +} | ||
4967 | + | ||
4772 | /** | 4968 | /** |
4773 | * @description | 4969 | * @description |
4774 | * 礼品申领单 | 4970 | * 礼品申领单 |
@@ -4860,6 +5056,42 @@ export interface ProductCollectBill { | @@ -4860,6 +5056,42 @@ export interface ProductCollectBill { | ||
4860 | warehouseText?: string; | 5056 | warehouseText?: string; |
4861 | } | 5057 | } |
4862 | 5058 | ||
5059 | +export interface Product { | ||
5060 | + /** @format int64 */ | ||
5061 | + baseUnit?: number; | ||
5062 | + baseUnitName?: string; | ||
5063 | + createByName?: string; | ||
5064 | + createByNameLike?: string; | ||
5065 | + /** @format date-time */ | ||
5066 | + createTime?: string; | ||
5067 | + /** @format date-time */ | ||
5068 | + createTimeGe?: string; | ||
5069 | + /** @format date-time */ | ||
5070 | + createTimeLe?: string; | ||
5071 | + /** @format int32 */ | ||
5072 | + current?: number; | ||
5073 | + /** @format int32 */ | ||
5074 | + end?: number; | ||
5075 | + /** @format int64 */ | ||
5076 | + id?: number; | ||
5077 | + idIn?: Array<number>; | ||
5078 | + inventory?: number; | ||
5079 | + logicDelete?: boolean; | ||
5080 | + name?: string; | ||
5081 | + nameLike?: string; | ||
5082 | + /** @format int32 */ | ||
5083 | + pageSize?: number; | ||
5084 | + paths?: Array<string>; | ||
5085 | + /** @format int32 */ | ||
5086 | + start?: number; | ||
5087 | + /** @format int32 */ | ||
5088 | + total?: number; | ||
5089 | + unitPrice?: number; | ||
5090 | + updateByName?: string; | ||
5091 | + /** @format date-time */ | ||
5092 | + updateTime?: string; | ||
5093 | +} | ||
5094 | + | ||
4863 | export interface ResearchGroupAccounts { | 5095 | export interface ResearchGroupAccounts { |
4864 | /** | 5096 | /** |
4865 | * @description | 5097 | * @description |
@@ -5052,6 +5284,10 @@ export interface SalesRechargePrepaymentRequest { | @@ -5052,6 +5284,10 @@ export interface SalesRechargePrepaymentRequest { | ||
5052 | * @format date-time | 5284 | * @format date-time |
5053 | */ | 5285 | */ |
5054 | createTimeEndTime?: string; | 5286 | createTimeEndTime?: string; |
5287 | + /** @format date-time */ | ||
5288 | + createTimeGe?: string; | ||
5289 | + /** @format date-time */ | ||
5290 | + createTimeLe?: string; | ||
5055 | /** @format int32 */ | 5291 | /** @format int32 */ |
5056 | current?: number; | 5292 | current?: number; |
5057 | /** | 5293 | /** |
src/services/request.ts
@@ -70,7 +70,6 @@ import type { | @@ -70,7 +70,6 @@ import type { | ||
70 | MeasureUnitListRes, | 70 | MeasureUnitListRes, |
71 | MergeIntegralDto, | 71 | MergeIntegralDto, |
72 | MessageQueryDTO, | 72 | MessageQueryDTO, |
73 | - ModelAndView, | ||
74 | OrderAddVO, | 73 | OrderAddVO, |
75 | OrderAuditLogQueryVO, | 74 | OrderAuditLogQueryVO, |
76 | OrderBaseInfoQueryVO, | 75 | OrderBaseInfoQueryVO, |
@@ -89,11 +88,14 @@ import type { | @@ -89,11 +88,14 @@ import type { | ||
89 | OrderUnlockFieldApplyVO, | 88 | OrderUnlockFieldApplyVO, |
90 | OrderUpdateVO, | 89 | OrderUpdateVO, |
91 | OrderZoNingProvinceUserDo, | 90 | OrderZoNingProvinceUserDo, |
91 | + ProcureBillAuditDto, | ||
92 | + ProcureBillInfo, | ||
92 | ProcureConvertProcureDto, | 93 | ProcureConvertProcureDto, |
93 | ProcureOrderDto, | 94 | ProcureOrderDto, |
94 | ProcurePrintDto, | 95 | ProcurePrintDto, |
95 | ProcureReturnBillApprovalDto, | 96 | ProcureReturnBillApprovalDto, |
96 | ProcureReturnBillDto, | 97 | ProcureReturnBillDto, |
98 | + Product, | ||
97 | ProductCollectBill, | 99 | ProductCollectBill, |
98 | ProductInformationDto, | 100 | ProductInformationDto, |
99 | QueryAfterSalesInfoSnapshotDto, | 101 | QueryAfterSalesInfoSnapshotDto, |
@@ -163,6 +165,292 @@ import type { | @@ -163,6 +165,292 @@ import type { | ||
163 | WarningUserWhiteListDto, | 165 | WarningUserWhiteListDto, |
164 | } from './definition'; | 166 | } from './definition'; |
165 | 167 | ||
168 | +/** @description request parameter type for postProcureBillAddOrModify */ | ||
169 | +export interface PostProcureBillAddOrModifyOption { | ||
170 | + /** | ||
171 | + * @description | ||
172 | + * dto | ||
173 | + */ | ||
174 | + body: { | ||
175 | + /** | ||
176 | + @description | ||
177 | + dto */ | ||
178 | + dto: ProcureBillInfo; | ||
179 | + }; | ||
180 | +} | ||
181 | + | ||
182 | +/** @description response type for postProcureBillAddOrModify */ | ||
183 | +export interface PostProcureBillAddOrModifyResponse { | ||
184 | + /** | ||
185 | + * @description | ||
186 | + * OK | ||
187 | + */ | ||
188 | + 200: ServerResult; | ||
189 | + /** | ||
190 | + * @description | ||
191 | + * Created | ||
192 | + */ | ||
193 | + 201: any; | ||
194 | + /** | ||
195 | + * @description | ||
196 | + * Unauthorized | ||
197 | + */ | ||
198 | + 401: any; | ||
199 | + /** | ||
200 | + * @description | ||
201 | + * Forbidden | ||
202 | + */ | ||
203 | + 403: any; | ||
204 | + /** | ||
205 | + * @description | ||
206 | + * Not Found | ||
207 | + */ | ||
208 | + 404: any; | ||
209 | +} | ||
210 | + | ||
211 | +export type PostProcureBillAddOrModifyResponseSuccess = | ||
212 | + PostProcureBillAddOrModifyResponse[200]; | ||
213 | +/** | ||
214 | + * @description | ||
215 | + * 新增或修改 | ||
216 | + * @tags 采购管理 | ||
217 | + * @produces * | ||
218 | + * @consumes application/json | ||
219 | + */ | ||
220 | +export const postProcureBillAddOrModify = /* #__PURE__ */ (() => { | ||
221 | + const method = 'post'; | ||
222 | + const url = '/ProcureBill/addOrModify'; | ||
223 | + function request( | ||
224 | + option: PostProcureBillAddOrModifyOption, | ||
225 | + ): Promise<PostProcureBillAddOrModifyResponseSuccess> { | ||
226 | + return requester(request.url, { | ||
227 | + method: request.method, | ||
228 | + ...option, | ||
229 | + }) as unknown as Promise<PostProcureBillAddOrModifyResponseSuccess>; | ||
230 | + } | ||
231 | + | ||
232 | + /** http method */ | ||
233 | + request.method = method; | ||
234 | + /** request url */ | ||
235 | + request.url = url; | ||
236 | + return request; | ||
237 | +})(); | ||
238 | + | ||
239 | +/** @description request parameter type for postProcureBillAudit */ | ||
240 | +export interface PostProcureBillAuditOption { | ||
241 | + /** | ||
242 | + * @description | ||
243 | + * dto | ||
244 | + */ | ||
245 | + body: { | ||
246 | + /** | ||
247 | + @description | ||
248 | + dto */ | ||
249 | + dto: ProcureBillAuditDto; | ||
250 | + }; | ||
251 | +} | ||
252 | + | ||
253 | +/** @description response type for postProcureBillAudit */ | ||
254 | +export interface PostProcureBillAuditResponse { | ||
255 | + /** | ||
256 | + * @description | ||
257 | + * OK | ||
258 | + */ | ||
259 | + 200: ServerResult; | ||
260 | + /** | ||
261 | + * @description | ||
262 | + * Created | ||
263 | + */ | ||
264 | + 201: any; | ||
265 | + /** | ||
266 | + * @description | ||
267 | + * Unauthorized | ||
268 | + */ | ||
269 | + 401: any; | ||
270 | + /** | ||
271 | + * @description | ||
272 | + * Forbidden | ||
273 | + */ | ||
274 | + 403: any; | ||
275 | + /** | ||
276 | + * @description | ||
277 | + * Not Found | ||
278 | + */ | ||
279 | + 404: any; | ||
280 | +} | ||
281 | + | ||
282 | +export type PostProcureBillAuditResponseSuccess = | ||
283 | + PostProcureBillAuditResponse[200]; | ||
284 | +/** | ||
285 | + * @description | ||
286 | + * 审核 | ||
287 | + * @tags 采购管理 | ||
288 | + * @produces * | ||
289 | + * @consumes application/json | ||
290 | + */ | ||
291 | +export const postProcureBillAudit = /* #__PURE__ */ (() => { | ||
292 | + const method = 'post'; | ||
293 | + const url = '/ProcureBill/audit'; | ||
294 | + function request( | ||
295 | + option: PostProcureBillAuditOption, | ||
296 | + ): Promise<PostProcureBillAuditResponseSuccess> { | ||
297 | + return requester(request.url, { | ||
298 | + method: request.method, | ||
299 | + ...option, | ||
300 | + }) as unknown as Promise<PostProcureBillAuditResponseSuccess>; | ||
301 | + } | ||
302 | + | ||
303 | + /** http method */ | ||
304 | + request.method = method; | ||
305 | + /** request url */ | ||
306 | + request.url = url; | ||
307 | + return request; | ||
308 | +})(); | ||
309 | + | ||
310 | +/** @description request parameter type for postProcureBillDelete */ | ||
311 | +export interface PostProcureBillDeleteOption { | ||
312 | + /** | ||
313 | + * @description | ||
314 | + * id | ||
315 | + * @format int64 | ||
316 | + */ | ||
317 | + query: { | ||
318 | + /** | ||
319 | + @description | ||
320 | + id | ||
321 | + @format int64 */ | ||
322 | + id: number; | ||
323 | + }; | ||
324 | +} | ||
325 | + | ||
326 | +/** @description response type for postProcureBillDelete */ | ||
327 | +export interface PostProcureBillDeleteResponse { | ||
328 | + /** | ||
329 | + * @description | ||
330 | + * OK | ||
331 | + */ | ||
332 | + 200: ServerResult; | ||
333 | + /** | ||
334 | + * @description | ||
335 | + * Created | ||
336 | + */ | ||
337 | + 201: any; | ||
338 | + /** | ||
339 | + * @description | ||
340 | + * Unauthorized | ||
341 | + */ | ||
342 | + 401: any; | ||
343 | + /** | ||
344 | + * @description | ||
345 | + * Forbidden | ||
346 | + */ | ||
347 | + 403: any; | ||
348 | + /** | ||
349 | + * @description | ||
350 | + * Not Found | ||
351 | + */ | ||
352 | + 404: any; | ||
353 | +} | ||
354 | + | ||
355 | +export type PostProcureBillDeleteResponseSuccess = | ||
356 | + PostProcureBillDeleteResponse[200]; | ||
357 | +/** | ||
358 | + * @description | ||
359 | + * 删除 | ||
360 | + * @tags 采购管理 | ||
361 | + * @produces * | ||
362 | + * @consumes application/json | ||
363 | + */ | ||
364 | +export const postProcureBillDelete = /* #__PURE__ */ (() => { | ||
365 | + const method = 'post'; | ||
366 | + const url = '/ProcureBill/delete'; | ||
367 | + function request( | ||
368 | + option: PostProcureBillDeleteOption, | ||
369 | + ): Promise<PostProcureBillDeleteResponseSuccess> { | ||
370 | + return requester(request.url, { | ||
371 | + method: request.method, | ||
372 | + ...option, | ||
373 | + }) as unknown as Promise<PostProcureBillDeleteResponseSuccess>; | ||
374 | + } | ||
375 | + | ||
376 | + /** http method */ | ||
377 | + request.method = method; | ||
378 | + /** request url */ | ||
379 | + request.url = url; | ||
380 | + return request; | ||
381 | +})(); | ||
382 | + | ||
383 | +/** @description request parameter type for postProcureBillPage */ | ||
384 | +export interface PostProcureBillPageOption { | ||
385 | + /** | ||
386 | + * @description | ||
387 | + * dto | ||
388 | + */ | ||
389 | + body: { | ||
390 | + /** | ||
391 | + @description | ||
392 | + dto */ | ||
393 | + dto: ProcureBillInfo; | ||
394 | + }; | ||
395 | +} | ||
396 | + | ||
397 | +/** @description response type for postProcureBillPage */ | ||
398 | +export interface PostProcureBillPageResponse { | ||
399 | + /** | ||
400 | + * @description | ||
401 | + * OK | ||
402 | + */ | ||
403 | + 200: ServerResult; | ||
404 | + /** | ||
405 | + * @description | ||
406 | + * Created | ||
407 | + */ | ||
408 | + 201: any; | ||
409 | + /** | ||
410 | + * @description | ||
411 | + * Unauthorized | ||
412 | + */ | ||
413 | + 401: any; | ||
414 | + /** | ||
415 | + * @description | ||
416 | + * Forbidden | ||
417 | + */ | ||
418 | + 403: any; | ||
419 | + /** | ||
420 | + * @description | ||
421 | + * Not Found | ||
422 | + */ | ||
423 | + 404: any; | ||
424 | +} | ||
425 | + | ||
426 | +export type PostProcureBillPageResponseSuccess = | ||
427 | + PostProcureBillPageResponse[200]; | ||
428 | +/** | ||
429 | + * @description | ||
430 | + * 分页查询 | ||
431 | + * @tags 采购管理 | ||
432 | + * @produces * | ||
433 | + * @consumes application/json | ||
434 | + */ | ||
435 | +export const postProcureBillPage = /* #__PURE__ */ (() => { | ||
436 | + const method = 'post'; | ||
437 | + const url = '/ProcureBill/page'; | ||
438 | + function request( | ||
439 | + option: PostProcureBillPageOption, | ||
440 | + ): Promise<PostProcureBillPageResponseSuccess> { | ||
441 | + return requester(request.url, { | ||
442 | + method: request.method, | ||
443 | + ...option, | ||
444 | + }) as unknown as Promise<PostProcureBillPageResponseSuccess>; | ||
445 | + } | ||
446 | + | ||
447 | + /** http method */ | ||
448 | + request.method = method; | ||
449 | + /** request url */ | ||
450 | + request.url = url; | ||
451 | + return request; | ||
452 | +})(); | ||
453 | + | ||
166 | /** @description request parameter type for postAdminClientAddAdminClient */ | 454 | /** @description request parameter type for postAdminClientAddAdminClient */ |
167 | export interface PostAdminClientAddAdminClientOption { | 455 | export interface PostAdminClientAddAdminClientOption { |
168 | /** | 456 | /** |
@@ -3540,7 +3828,9 @@ export interface GetErrorResponse { | @@ -3540,7 +3828,9 @@ export interface GetErrorResponse { | ||
3540 | * @description | 3828 | * @description |
3541 | * OK | 3829 | * OK |
3542 | */ | 3830 | */ |
3543 | - 200: ModelAndView; | 3831 | + 200: { |
3832 | + [propertyName: string]: any; | ||
3833 | + }; | ||
3544 | /** | 3834 | /** |
3545 | * @description | 3835 | * @description |
3546 | * Unauthorized | 3836 | * Unauthorized |
@@ -3561,9 +3851,9 @@ export interface GetErrorResponse { | @@ -3561,9 +3851,9 @@ export interface GetErrorResponse { | ||
3561 | export type GetErrorResponseSuccess = GetErrorResponse[200]; | 3851 | export type GetErrorResponseSuccess = GetErrorResponse[200]; |
3562 | /** | 3852 | /** |
3563 | * @description | 3853 | * @description |
3564 | - * errorHtml | 3854 | + * error |
3565 | * @tags basic-error-controller | 3855 | * @tags basic-error-controller |
3566 | - * @produces text/html | 3856 | + * @produces * |
3567 | */ | 3857 | */ |
3568 | export const getError = /* #__PURE__ */ (() => { | 3858 | export const getError = /* #__PURE__ */ (() => { |
3569 | const method = 'get'; | 3859 | const method = 'get'; |
@@ -3587,7 +3877,9 @@ export interface PutErrorResponse { | @@ -3587,7 +3877,9 @@ export interface PutErrorResponse { | ||
3587 | * @description | 3877 | * @description |
3588 | * OK | 3878 | * OK |
3589 | */ | 3879 | */ |
3590 | - 200: ModelAndView; | 3880 | + 200: { |
3881 | + [propertyName: string]: any; | ||
3882 | + }; | ||
3591 | /** | 3883 | /** |
3592 | * @description | 3884 | * @description |
3593 | * Created | 3885 | * Created |
@@ -3613,9 +3905,9 @@ export interface PutErrorResponse { | @@ -3613,9 +3905,9 @@ export interface PutErrorResponse { | ||
3613 | export type PutErrorResponseSuccess = PutErrorResponse[200]; | 3905 | export type PutErrorResponseSuccess = PutErrorResponse[200]; |
3614 | /** | 3906 | /** |
3615 | * @description | 3907 | * @description |
3616 | - * errorHtml | 3908 | + * error |
3617 | * @tags basic-error-controller | 3909 | * @tags basic-error-controller |
3618 | - * @produces text/html | 3910 | + * @produces * |
3619 | * @consumes application/json | 3911 | * @consumes application/json |
3620 | */ | 3912 | */ |
3621 | export const putError = /* #__PURE__ */ (() => { | 3913 | export const putError = /* #__PURE__ */ (() => { |
@@ -3640,7 +3932,9 @@ export interface PostErrorResponse { | @@ -3640,7 +3932,9 @@ export interface PostErrorResponse { | ||
3640 | * @description | 3932 | * @description |
3641 | * OK | 3933 | * OK |
3642 | */ | 3934 | */ |
3643 | - 200: ModelAndView; | 3935 | + 200: { |
3936 | + [propertyName: string]: any; | ||
3937 | + }; | ||
3644 | /** | 3938 | /** |
3645 | * @description | 3939 | * @description |
3646 | * Created | 3940 | * Created |
@@ -3666,9 +3960,9 @@ export interface PostErrorResponse { | @@ -3666,9 +3960,9 @@ export interface PostErrorResponse { | ||
3666 | export type PostErrorResponseSuccess = PostErrorResponse[200]; | 3960 | export type PostErrorResponseSuccess = PostErrorResponse[200]; |
3667 | /** | 3961 | /** |
3668 | * @description | 3962 | * @description |
3669 | - * errorHtml | 3963 | + * error |
3670 | * @tags basic-error-controller | 3964 | * @tags basic-error-controller |
3671 | - * @produces text/html | 3965 | + * @produces * |
3672 | * @consumes application/json | 3966 | * @consumes application/json |
3673 | */ | 3967 | */ |
3674 | export const postError = /* #__PURE__ */ (() => { | 3968 | export const postError = /* #__PURE__ */ (() => { |
@@ -3693,7 +3987,9 @@ export interface DeleteErrorResponse { | @@ -3693,7 +3987,9 @@ export interface DeleteErrorResponse { | ||
3693 | * @description | 3987 | * @description |
3694 | * OK | 3988 | * OK |
3695 | */ | 3989 | */ |
3696 | - 200: ModelAndView; | 3990 | + 200: { |
3991 | + [propertyName: string]: any; | ||
3992 | + }; | ||
3697 | /** | 3993 | /** |
3698 | * @description | 3994 | * @description |
3699 | * No Content | 3995 | * No Content |
@@ -3714,9 +4010,9 @@ export interface DeleteErrorResponse { | @@ -3714,9 +4010,9 @@ export interface DeleteErrorResponse { | ||
3714 | export type DeleteErrorResponseSuccess = DeleteErrorResponse[200]; | 4010 | export type DeleteErrorResponseSuccess = DeleteErrorResponse[200]; |
3715 | /** | 4011 | /** |
3716 | * @description | 4012 | * @description |
3717 | - * errorHtml | 4013 | + * error |
3718 | * @tags basic-error-controller | 4014 | * @tags basic-error-controller |
3719 | - * @produces text/html | 4015 | + * @produces * |
3720 | */ | 4016 | */ |
3721 | export const deleteError = /* #__PURE__ */ (() => { | 4017 | export const deleteError = /* #__PURE__ */ (() => { |
3722 | const method = 'delete'; | 4018 | const method = 'delete'; |
@@ -3740,7 +4036,9 @@ export interface OptionsErrorResponse { | @@ -3740,7 +4036,9 @@ export interface OptionsErrorResponse { | ||
3740 | * @description | 4036 | * @description |
3741 | * OK | 4037 | * OK |
3742 | */ | 4038 | */ |
3743 | - 200: ModelAndView; | 4039 | + 200: { |
4040 | + [propertyName: string]: any; | ||
4041 | + }; | ||
3744 | /** | 4042 | /** |
3745 | * @description | 4043 | * @description |
3746 | * No Content | 4044 | * No Content |
@@ -3761,9 +4059,9 @@ export interface OptionsErrorResponse { | @@ -3761,9 +4059,9 @@ export interface OptionsErrorResponse { | ||
3761 | export type OptionsErrorResponseSuccess = OptionsErrorResponse[200]; | 4059 | export type OptionsErrorResponseSuccess = OptionsErrorResponse[200]; |
3762 | /** | 4060 | /** |
3763 | * @description | 4061 | * @description |
3764 | - * errorHtml | 4062 | + * error |
3765 | * @tags basic-error-controller | 4063 | * @tags basic-error-controller |
3766 | - * @produces text/html | 4064 | + * @produces * |
3767 | * @consumes application/json | 4065 | * @consumes application/json |
3768 | */ | 4066 | */ |
3769 | export const optionsError = /* #__PURE__ */ (() => { | 4067 | export const optionsError = /* #__PURE__ */ (() => { |
@@ -3788,7 +4086,9 @@ export interface HeadErrorResponse { | @@ -3788,7 +4086,9 @@ export interface HeadErrorResponse { | ||
3788 | * @description | 4086 | * @description |
3789 | * OK | 4087 | * OK |
3790 | */ | 4088 | */ |
3791 | - 200: ModelAndView; | 4089 | + 200: { |
4090 | + [propertyName: string]: any; | ||
4091 | + }; | ||
3792 | /** | 4092 | /** |
3793 | * @description | 4093 | * @description |
3794 | * No Content | 4094 | * No Content |
@@ -3809,9 +4109,9 @@ export interface HeadErrorResponse { | @@ -3809,9 +4109,9 @@ export interface HeadErrorResponse { | ||
3809 | export type HeadErrorResponseSuccess = HeadErrorResponse[200]; | 4109 | export type HeadErrorResponseSuccess = HeadErrorResponse[200]; |
3810 | /** | 4110 | /** |
3811 | * @description | 4111 | * @description |
3812 | - * errorHtml | 4112 | + * error |
3813 | * @tags basic-error-controller | 4113 | * @tags basic-error-controller |
3814 | - * @produces text/html | 4114 | + * @produces * |
3815 | * @consumes application/json | 4115 | * @consumes application/json |
3816 | */ | 4116 | */ |
3817 | export const headError = /* #__PURE__ */ (() => { | 4117 | export const headError = /* #__PURE__ */ (() => { |
@@ -3836,7 +4136,9 @@ export interface PatchErrorResponse { | @@ -3836,7 +4136,9 @@ export interface PatchErrorResponse { | ||
3836 | * @description | 4136 | * @description |
3837 | * OK | 4137 | * OK |
3838 | */ | 4138 | */ |
3839 | - 200: ModelAndView; | 4139 | + 200: { |
4140 | + [propertyName: string]: any; | ||
4141 | + }; | ||
3840 | /** | 4142 | /** |
3841 | * @description | 4143 | * @description |
3842 | * No Content | 4144 | * No Content |
@@ -3857,9 +4159,9 @@ export interface PatchErrorResponse { | @@ -3857,9 +4159,9 @@ export interface PatchErrorResponse { | ||
3857 | export type PatchErrorResponseSuccess = PatchErrorResponse[200]; | 4159 | export type PatchErrorResponseSuccess = PatchErrorResponse[200]; |
3858 | /** | 4160 | /** |
3859 | * @description | 4161 | * @description |
3860 | - * errorHtml | 4162 | + * error |
3861 | * @tags basic-error-controller | 4163 | * @tags basic-error-controller |
3862 | - * @produces text/html | 4164 | + * @produces * |
3863 | * @consumes application/json | 4165 | * @consumes application/json |
3864 | */ | 4166 | */ |
3865 | export const patchError = /* #__PURE__ */ (() => { | 4167 | export const patchError = /* #__PURE__ */ (() => { |
@@ -12959,8 +13261,8 @@ export const postProcureReturnBillSend = /* #__PURE__ */ (() => { | @@ -12959,8 +13261,8 @@ export const postProcureReturnBillSend = /* #__PURE__ */ (() => { | ||
12959 | return request; | 13261 | return request; |
12960 | })(); | 13262 | })(); |
12961 | 13263 | ||
12962 | -/** @description request parameter type for postProductCollectBillAddOrModify */ | ||
12963 | -export interface PostProductCollectBillAddOrModifyOption { | 13264 | +/** @description request parameter type for postProductAddOrModify */ |
13265 | +export interface PostProductAddOrModifyOption { | ||
12964 | /** | 13266 | /** |
12965 | * @description | 13267 | * @description |
12966 | * dto | 13268 | * dto |
@@ -12969,12 +13271,12 @@ export interface PostProductCollectBillAddOrModifyOption { | @@ -12969,12 +13271,12 @@ export interface PostProductCollectBillAddOrModifyOption { | ||
12969 | /** | 13271 | /** |
12970 | @description | 13272 | @description |
12971 | dto */ | 13273 | dto */ |
12972 | - dto: ProductCollectBill; | 13274 | + dto: Product; |
12973 | }; | 13275 | }; |
12974 | } | 13276 | } |
12975 | 13277 | ||
12976 | -/** @description response type for postProductCollectBillAddOrModify */ | ||
12977 | -export interface PostProductCollectBillAddOrModifyResponse { | 13278 | +/** @description response type for postProductAddOrModify */ |
13279 | +export interface PostProductAddOrModifyResponse { | ||
12978 | /** | 13280 | /** |
12979 | * @description | 13281 | * @description |
12980 | * OK | 13282 | * OK |
@@ -13002,8 +13304,221 @@ export interface PostProductCollectBillAddOrModifyResponse { | @@ -13002,8 +13304,221 @@ export interface PostProductCollectBillAddOrModifyResponse { | ||
13002 | 404: any; | 13304 | 404: any; |
13003 | } | 13305 | } |
13004 | 13306 | ||
13005 | -export type PostProductCollectBillAddOrModifyResponseSuccess = | ||
13006 | - PostProductCollectBillAddOrModifyResponse[200]; | 13307 | +export type PostProductAddOrModifyResponseSuccess = |
13308 | + PostProductAddOrModifyResponse[200]; | ||
13309 | +/** | ||
13310 | + * @description | ||
13311 | + * 新增或修改 | ||
13312 | + * @tags 商品管理 | ||
13313 | + * @produces * | ||
13314 | + * @consumes application/json | ||
13315 | + */ | ||
13316 | +export const postProductAddOrModify = /* #__PURE__ */ (() => { | ||
13317 | + const method = 'post'; | ||
13318 | + const url = '/product/addOrModify'; | ||
13319 | + function request( | ||
13320 | + option: PostProductAddOrModifyOption, | ||
13321 | + ): Promise<PostProductAddOrModifyResponseSuccess> { | ||
13322 | + return requester(request.url, { | ||
13323 | + method: request.method, | ||
13324 | + ...option, | ||
13325 | + }) as unknown as Promise<PostProductAddOrModifyResponseSuccess>; | ||
13326 | + } | ||
13327 | + | ||
13328 | + /** http method */ | ||
13329 | + request.method = method; | ||
13330 | + /** request url */ | ||
13331 | + request.url = url; | ||
13332 | + return request; | ||
13333 | +})(); | ||
13334 | + | ||
13335 | +/** @description request parameter type for postProductDelete */ | ||
13336 | +export interface PostProductDeleteOption { | ||
13337 | + /** | ||
13338 | + * @description | ||
13339 | + * id | ||
13340 | + * @format int64 | ||
13341 | + */ | ||
13342 | + query: { | ||
13343 | + /** | ||
13344 | + @description | ||
13345 | + id | ||
13346 | + @format int64 */ | ||
13347 | + id: number; | ||
13348 | + }; | ||
13349 | +} | ||
13350 | + | ||
13351 | +/** @description response type for postProductDelete */ | ||
13352 | +export interface PostProductDeleteResponse { | ||
13353 | + /** | ||
13354 | + * @description | ||
13355 | + * OK | ||
13356 | + */ | ||
13357 | + 200: ServerResult; | ||
13358 | + /** | ||
13359 | + * @description | ||
13360 | + * Created | ||
13361 | + */ | ||
13362 | + 201: any; | ||
13363 | + /** | ||
13364 | + * @description | ||
13365 | + * Unauthorized | ||
13366 | + */ | ||
13367 | + 401: any; | ||
13368 | + /** | ||
13369 | + * @description | ||
13370 | + * Forbidden | ||
13371 | + */ | ||
13372 | + 403: any; | ||
13373 | + /** | ||
13374 | + * @description | ||
13375 | + * Not Found | ||
13376 | + */ | ||
13377 | + 404: any; | ||
13378 | +} | ||
13379 | + | ||
13380 | +export type PostProductDeleteResponseSuccess = PostProductDeleteResponse[200]; | ||
13381 | +/** | ||
13382 | + * @description | ||
13383 | + * 删除 | ||
13384 | + * @tags 商品管理 | ||
13385 | + * @produces * | ||
13386 | + * @consumes application/json | ||
13387 | + */ | ||
13388 | +export const postProductDelete = /* #__PURE__ */ (() => { | ||
13389 | + const method = 'post'; | ||
13390 | + const url = '/product/delete'; | ||
13391 | + function request( | ||
13392 | + option: PostProductDeleteOption, | ||
13393 | + ): Promise<PostProductDeleteResponseSuccess> { | ||
13394 | + return requester(request.url, { | ||
13395 | + method: request.method, | ||
13396 | + ...option, | ||
13397 | + }) as unknown as Promise<PostProductDeleteResponseSuccess>; | ||
13398 | + } | ||
13399 | + | ||
13400 | + /** http method */ | ||
13401 | + request.method = method; | ||
13402 | + /** request url */ | ||
13403 | + request.url = url; | ||
13404 | + return request; | ||
13405 | +})(); | ||
13406 | + | ||
13407 | +/** @description request parameter type for postProductPage */ | ||
13408 | +export interface PostProductPageOption { | ||
13409 | + /** | ||
13410 | + * @description | ||
13411 | + * dto | ||
13412 | + */ | ||
13413 | + body: { | ||
13414 | + /** | ||
13415 | + @description | ||
13416 | + dto */ | ||
13417 | + dto: Product; | ||
13418 | + }; | ||
13419 | +} | ||
13420 | + | ||
13421 | +/** @description response type for postProductPage */ | ||
13422 | +export interface PostProductPageResponse { | ||
13423 | + /** | ||
13424 | + * @description | ||
13425 | + * OK | ||
13426 | + */ | ||
13427 | + 200: ServerResult; | ||
13428 | + /** | ||
13429 | + * @description | ||
13430 | + * Created | ||
13431 | + */ | ||
13432 | + 201: any; | ||
13433 | + /** | ||
13434 | + * @description | ||
13435 | + * Unauthorized | ||
13436 | + */ | ||
13437 | + 401: any; | ||
13438 | + /** | ||
13439 | + * @description | ||
13440 | + * Forbidden | ||
13441 | + */ | ||
13442 | + 403: any; | ||
13443 | + /** | ||
13444 | + * @description | ||
13445 | + * Not Found | ||
13446 | + */ | ||
13447 | + 404: any; | ||
13448 | +} | ||
13449 | + | ||
13450 | +export type PostProductPageResponseSuccess = PostProductPageResponse[200]; | ||
13451 | +/** | ||
13452 | + * @description | ||
13453 | + * 分页查询 | ||
13454 | + * @tags 商品管理 | ||
13455 | + * @produces * | ||
13456 | + * @consumes application/json | ||
13457 | + */ | ||
13458 | +export const postProductPage = /* #__PURE__ */ (() => { | ||
13459 | + const method = 'post'; | ||
13460 | + const url = '/product/page'; | ||
13461 | + function request( | ||
13462 | + option: PostProductPageOption, | ||
13463 | + ): Promise<PostProductPageResponseSuccess> { | ||
13464 | + return requester(request.url, { | ||
13465 | + method: request.method, | ||
13466 | + ...option, | ||
13467 | + }) as unknown as Promise<PostProductPageResponseSuccess>; | ||
13468 | + } | ||
13469 | + | ||
13470 | + /** http method */ | ||
13471 | + request.method = method; | ||
13472 | + /** request url */ | ||
13473 | + request.url = url; | ||
13474 | + return request; | ||
13475 | +})(); | ||
13476 | + | ||
13477 | +/** @description request parameter type for postProductCollectBillAddOrModify */ | ||
13478 | +export interface PostProductCollectBillAddOrModifyOption { | ||
13479 | + /** | ||
13480 | + * @description | ||
13481 | + * dto | ||
13482 | + */ | ||
13483 | + body: { | ||
13484 | + /** | ||
13485 | + @description | ||
13486 | + dto */ | ||
13487 | + dto: ProductCollectBill; | ||
13488 | + }; | ||
13489 | +} | ||
13490 | + | ||
13491 | +/** @description response type for postProductCollectBillAddOrModify */ | ||
13492 | +export interface PostProductCollectBillAddOrModifyResponse { | ||
13493 | + /** | ||
13494 | + * @description | ||
13495 | + * OK | ||
13496 | + */ | ||
13497 | + 200: ServerResult; | ||
13498 | + /** | ||
13499 | + * @description | ||
13500 | + * Created | ||
13501 | + */ | ||
13502 | + 201: any; | ||
13503 | + /** | ||
13504 | + * @description | ||
13505 | + * Unauthorized | ||
13506 | + */ | ||
13507 | + 401: any; | ||
13508 | + /** | ||
13509 | + * @description | ||
13510 | + * Forbidden | ||
13511 | + */ | ||
13512 | + 403: any; | ||
13513 | + /** | ||
13514 | + * @description | ||
13515 | + * Not Found | ||
13516 | + */ | ||
13517 | + 404: any; | ||
13518 | +} | ||
13519 | + | ||
13520 | +export type PostProductCollectBillAddOrModifyResponseSuccess = | ||
13521 | + PostProductCollectBillAddOrModifyResponse[200]; | ||
13007 | /** | 13522 | /** |
13008 | * @description | 13523 | * @description |
13009 | * 新增或修改 | 13524 | * 新增或修改 |
@@ -15808,6 +16323,60 @@ export const postServiceConstPlatformType = /* #__PURE__ */ (() => { | @@ -15808,6 +16323,60 @@ export const postServiceConstPlatformType = /* #__PURE__ */ (() => { | ||
15808 | return request; | 16323 | return request; |
15809 | })(); | 16324 | })(); |
15810 | 16325 | ||
16326 | +/** @description response type for postServiceConstProcureBillAuditStatus */ | ||
16327 | +export interface PostServiceConstProcureBillAuditStatusResponse { | ||
16328 | + /** | ||
16329 | + * @description | ||
16330 | + * OK | ||
16331 | + */ | ||
16332 | + 200: ServerResult; | ||
16333 | + /** | ||
16334 | + * @description | ||
16335 | + * Created | ||
16336 | + */ | ||
16337 | + 201: any; | ||
16338 | + /** | ||
16339 | + * @description | ||
16340 | + * Unauthorized | ||
16341 | + */ | ||
16342 | + 401: any; | ||
16343 | + /** | ||
16344 | + * @description | ||
16345 | + * Forbidden | ||
16346 | + */ | ||
16347 | + 403: any; | ||
16348 | + /** | ||
16349 | + * @description | ||
16350 | + * Not Found | ||
16351 | + */ | ||
16352 | + 404: any; | ||
16353 | +} | ||
16354 | + | ||
16355 | +export type PostServiceConstProcureBillAuditStatusResponseSuccess = | ||
16356 | + PostServiceConstProcureBillAuditStatusResponse[200]; | ||
16357 | +/** | ||
16358 | + * @description | ||
16359 | + * 采购单审核状态 | ||
16360 | + * @tags front-const-controller | ||
16361 | + * @produces * | ||
16362 | + * @consumes application/json | ||
16363 | + */ | ||
16364 | +export const postServiceConstProcureBillAuditStatus = /* #__PURE__ */ (() => { | ||
16365 | + const method = 'post'; | ||
16366 | + const url = '/service/const/procureBillAuditStatus'; | ||
16367 | + function request(): Promise<PostServiceConstProcureBillAuditStatusResponseSuccess> { | ||
16368 | + return requester(request.url, { | ||
16369 | + method: request.method, | ||
16370 | + }) as unknown as Promise<PostServiceConstProcureBillAuditStatusResponseSuccess>; | ||
16371 | + } | ||
16372 | + | ||
16373 | + /** http method */ | ||
16374 | + request.method = method; | ||
16375 | + /** request url */ | ||
16376 | + request.url = url; | ||
16377 | + return request; | ||
16378 | +})(); | ||
16379 | + | ||
15811 | /** @description response type for postServiceConstProcureReturnBills */ | 16380 | /** @description response type for postServiceConstProcureReturnBills */ |
15812 | export interface PostServiceConstProcureReturnBillsResponse { | 16381 | export interface PostServiceConstProcureReturnBillsResponse { |
15813 | /** | 16382 | /** |
@@ -15916,6 +16485,60 @@ export const postServiceConstProductCollectBillStatus = /* #__PURE__ */ (() => { | @@ -15916,6 +16485,60 @@ export const postServiceConstProductCollectBillStatus = /* #__PURE__ */ (() => { | ||
15916 | return request; | 16485 | return request; |
15917 | })(); | 16486 | })(); |
15918 | 16487 | ||
16488 | +/** @description response type for postServiceConstProducts */ | ||
16489 | +export interface PostServiceConstProductsResponse { | ||
16490 | + /** | ||
16491 | + * @description | ||
16492 | + * OK | ||
16493 | + */ | ||
16494 | + 200: ServerResult; | ||
16495 | + /** | ||
16496 | + * @description | ||
16497 | + * Created | ||
16498 | + */ | ||
16499 | + 201: any; | ||
16500 | + /** | ||
16501 | + * @description | ||
16502 | + * Unauthorized | ||
16503 | + */ | ||
16504 | + 401: any; | ||
16505 | + /** | ||
16506 | + * @description | ||
16507 | + * Forbidden | ||
16508 | + */ | ||
16509 | + 403: any; | ||
16510 | + /** | ||
16511 | + * @description | ||
16512 | + * Not Found | ||
16513 | + */ | ||
16514 | + 404: any; | ||
16515 | +} | ||
16516 | + | ||
16517 | +export type PostServiceConstProductsResponseSuccess = | ||
16518 | + PostServiceConstProductsResponse[200]; | ||
16519 | +/** | ||
16520 | + * @description | ||
16521 | + * 商品列表 | ||
16522 | + * @tags front-const-controller | ||
16523 | + * @produces * | ||
16524 | + * @consumes application/json | ||
16525 | + */ | ||
16526 | +export const postServiceConstProducts = /* #__PURE__ */ (() => { | ||
16527 | + const method = 'post'; | ||
16528 | + const url = '/service/const/products'; | ||
16529 | + function request(): Promise<PostServiceConstProductsResponseSuccess> { | ||
16530 | + return requester(request.url, { | ||
16531 | + method: request.method, | ||
16532 | + }) as unknown as Promise<PostServiceConstProductsResponseSuccess>; | ||
16533 | + } | ||
16534 | + | ||
16535 | + /** http method */ | ||
16536 | + request.method = method; | ||
16537 | + /** request url */ | ||
16538 | + request.url = url; | ||
16539 | + return request; | ||
16540 | +})(); | ||
16541 | + | ||
15919 | /** @description response type for postServiceConstStores */ | 16542 | /** @description response type for postServiceConstStores */ |
15920 | export interface PostServiceConstStoresResponse { | 16543 | export interface PostServiceConstStoresResponse { |
15921 | /** | 16544 | /** |
@@ -16030,6 +16653,12 @@ export interface GetServiceInvoiceListInvoiceProjectOption { | @@ -16030,6 +16653,12 @@ export interface GetServiceInvoiceListInvoiceProjectOption { | ||
16030 | createByName?: string; | 16653 | createByName?: string; |
16031 | createByNameLike?: string; | 16654 | createByNameLike?: string; |
16032 | /** | 16655 | /** |
16656 | + @format date-time */ | ||
16657 | + createTimeGe?: string; | ||
16658 | + /** | ||
16659 | + @format date-time */ | ||
16660 | + createTimeLe?: string; | ||
16661 | + /** | ||
16033 | @format int32 */ | 16662 | @format int32 */ |
16034 | current?: number; | 16663 | current?: number; |
16035 | /** | 16664 | /** |