Commit e4d140c0b9718e366d3367622af18568019c7ff8
1 parent
6fda7d6a
feat: 自动开票弹窗
Showing
2 changed files
with
24 additions
and
3 deletions
src/pages/Order/OrderList/InvoicingDrawerForm.tsx
@@ -30,8 +30,16 @@ export default ({ | @@ -30,8 +30,16 @@ export default ({ | ||
30 | dataList, | 30 | dataList, |
31 | setVisible, | 31 | setVisible, |
32 | mainOrder, | 32 | mainOrder, |
33 | + mainOrders, | ||
33 | onClose, | 34 | onClose, |
34 | type = 'applyInvoicing', | 35 | type = 'applyInvoicing', |
36 | +}: { | ||
37 | + dataList: any[]; | ||
38 | + setVisible: (val: boolean) => void; | ||
39 | + mainOrder: any; | ||
40 | + mainOrders?: any[]; | ||
41 | + onClose: () => void; | ||
42 | + type?: string; | ||
35 | }) => { | 43 | }) => { |
36 | // let subOrderIds = dataList?.map((item) => { | 44 | // let subOrderIds = dataList?.map((item) => { |
37 | // return item.id; | 45 | // return item.id; |
@@ -100,9 +108,17 @@ export default ({ | @@ -100,9 +108,17 @@ export default ({ | ||
100 | return uniqueIds.map((id) => { | 108 | return uniqueIds.map((id) => { |
101 | // 确保id是string或number类型 | 109 | // 确保id是string或number类型 |
102 | const orderId = String(id); | 110 | const orderId = String(id); |
103 | - const orderData = dataListCopy.find( | ||
104 | - (d: any) => d.mainOrderId === id || d.orderId === id, | ||
105 | - ); | 111 | + |
112 | + // 优先从传入的mainOrders中获取数据 | ||
113 | + const mainOrderData = mainOrders | ||
114 | + ? mainOrders.find((item: any) => item.id === id) | ||
115 | + : null; | ||
116 | + | ||
117 | + // 如果没有找到主订单数据,则从dataList中查找 | ||
118 | + const orderData = | ||
119 | + mainOrderData || | ||
120 | + dataListCopy.find((d: any) => d.mainOrderId === id || d.orderId === id); | ||
121 | + | ||
106 | const totalPayment = orderData?.totalPayment || 0; | 122 | const totalPayment = orderData?.totalPayment || 0; |
107 | const invoiceIssuedAmount = orderData?.invoiceIssuedAmount || 0; | 123 | const invoiceIssuedAmount = orderData?.invoiceIssuedAmount || 0; |
108 | const availableAmount = Math.max(0, totalPayment - invoiceIssuedAmount); | 124 | const availableAmount = Math.max(0, totalPayment - invoiceIssuedAmount); |
src/pages/Order/OrderList/OrderList.tsx
@@ -5567,6 +5567,11 @@ const OrderList = ({ paramsNew, searchShow, toolbarShow }) => { | @@ -5567,6 +5567,11 @@ const OrderList = ({ paramsNew, searchShow, toolbarShow }) => { | ||
5567 | } | 5567 | } |
5568 | }} | 5568 | }} |
5569 | mainOrder={isMainOrder ? getFirstMainOrder() : buildMainOrder()} | 5569 | mainOrder={isMainOrder ? getFirstMainOrder() : buildMainOrder()} |
5570 | + mainOrders={ | ||
5571 | + isMainOrder | ||
5572 | + ? [...mainOrderSelectedMap.values()] | ||
5573 | + : [buildMainOrder()] | ||
5574 | + } | ||
5570 | onClose={() => { | 5575 | onClose={() => { |
5571 | setInvoicingDrawerFormVisible(false); | 5576 | setInvoicingDrawerFormVisible(false); |
5572 | setIsMainOrder(true); | 5577 | setIsMainOrder(true); |