Commit 037eb91ba640641e8b6aebbc49928ff2f7e3295d

Authored by 曾国涛
1 parent f3a79cc5

feat(invoice): 优化发票记录页面和订单组件

- 修改发票记录页面的确认按钮显示逻辑- 优化订单组件中的发票详情计算逻辑
- 调整开发环境的 API 代理配置
.umirc.ts
@@ -14,9 +14,9 @@ export default defineConfig({ @@ -14,9 +14,9 @@ export default defineConfig({
14 }, 14 },
15 proxy: { 15 proxy: {
16 '/api/': { 16 '/api/': {
17 - // target: 'http://localhost:8085/',  
18 - // target: 'http://192.168.1.6:8085/',  
19 - target: 'http://39.108.227.113:8085/', 17 + target: 'http://localhost:8085/',
  18 + //target: 'http://192.168.1.6:8085/',
  19 + //target: 'http://39.108.227.113:8085/',
20 changeOrigin: true, 20 changeOrigin: true,
21 pathRewrite: { '^/api': '' }, 21 pathRewrite: { '^/api': '' },
22 }, 22 },
src/pages/Invoice/InvoiceRecord/index.tsx
@@ -375,7 +375,7 @@ const InvoiceRecord = () => { @@ -375,7 +375,7 @@ const InvoiceRecord = () => {
375 )} 375 )}
376 </>, 376 </>,
377 <> 377 <>
378 - {!record.invoice?.invoiceConfirmStatusDatetime && ( 378 + {record.paths?.includes('INVOICE_CONFIRM') && (
379 <ButtonConfirm 379 <ButtonConfirm
380 key="delete" 380 key="delete"
381 className="p-0" 381 className="p-0"
src/pages/Order/Order/components/InvoicingDrawerForm.tsx
@@ -93,7 +93,22 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; { @@ -93,7 +93,22 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; {
93 document.body.removeChild(textarea); 93 document.body.removeChild(textarea);
94 } 94 }
95 } 95 }
96 - 96 + // 定义一个计算总金额的函数
  97 + const calculateTotalPrice = (index: number) => {
  98 + const invoiceDetails = form.getFieldValue('invoiceDetails');
  99 + if (invoiceDetails && invoiceDetails[index]) {
  100 + const quantity = invoiceDetails[index].quantity || 0;
  101 + const price = invoiceDetails[index].price || 0;
  102 + const totalPrice = quantity * price;
  103 + const newInvoiceDetails = [...invoiceDetails];
  104 + newInvoiceDetails[index] = { ...newInvoiceDetails[index], totalPrice };
  105 + form.setFieldsValue({ invoiceDetails: newInvoiceDetails });
  106 + }
  107 + const totalPrice = invoiceDetails.reduce((accumulator, currentValue) => {
  108 + return FloatAdd(accumulator, currentValue.quantity * currentValue.price);
  109 + }, 0);
  110 + form.setFieldValue('price', totalPrice);
  111 + };
97 useEffect(() => {}, []); 112 useEffect(() => {}, []);
98 return ( 113 return (
99 <DrawerForm 114 <DrawerForm
@@ -519,12 +534,6 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; { @@ -519,12 +534,6 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; {
519 ]} 534 ]}
520 placeholder="请输入名称" 535 placeholder="请输入名称"
521 /> 536 />
522 - <ProFormText  
523 - key={'unit' + listMeta.index}  
524 - name="unit"  
525 - label="单位"  
526 - placeholder="请输入名称"  
527 - />  
528 <ProFormDigit 537 <ProFormDigit
529 key={'quantity' + listMeta.index} 538 key={'quantity' + listMeta.index}
530 label="数量" 539 label="数量"
@@ -539,7 +548,9 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; { @@ -539,7 +548,9 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; {
539 }, 548 },
540 }, 549 },
541 ]} 550 ]}
  551 + onChange={() => calculateTotalPrice(listMeta.index)}
542 /> 552 />
  553 +
543 <ProFormDigit 554 <ProFormDigit
544 key={'price' + listMeta.index} 555 key={'price' + listMeta.index}
545 label="单价" 556 label="单价"
@@ -554,23 +565,13 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; { @@ -554,23 +565,13 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; {
554 }, 565 },
555 }, 566 },
556 ]} 567 ]}
  568 + onChange={() => calculateTotalPrice(listMeta.index)}
557 /> 569 />
  570 +
558 <ProFormMoney 571 <ProFormMoney
559 key={'totalPrice' + listMeta.index} 572 key={'totalPrice' + listMeta.index}
560 label="金额" 573 label="金额"
561 name="totalPrice" 574 name="totalPrice"
562 - onChange={() => {  
563 - const invoiceDetails = form.getFieldValue('invoiceDetails');  
564 - console.log('invoiceDetails', invoiceDetails);  
565 - const totalPrice = invoiceDetails.reduce(  
566 - (accumulator, currentValue) => {  
567 - return FloatAdd(accumulator, currentValue.totalPrice);  
568 - },  
569 - 0,  
570 - );  
571 - console.log('totalPrice', totalPrice);  
572 - form.setFieldValue('price', totalPrice);  
573 - }}  
574 rules={[ 575 rules={[
575 { 576 {
576 validator: (_, value) => { 577 validator: (_, value) => {
@@ -581,6 +582,7 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; { @@ -581,6 +582,7 @@ export default ({ dataList, setVisible, mainOrder, onClose }) =&gt; {
581 }, 582 },
582 }, 583 },
583 ]} 584 ]}
  585 + readonly={true}
584 locale="zh-CN" 586 locale="zh-CN"
585 /> 587 />
586 </ProCard> 588 </ProCard>