Commit 213be1c99e9a286f41ea592cf9fe2b836180d1e0
Merge branch 'dev' into 'feature-installment'
Dev See merge request !49
Showing
2 changed files
with
59 additions
and
21 deletions
src/pages/Order/OrderList/OrderDrawer.tsx
@@ -250,6 +250,30 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -250,6 +250,30 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
250 | 250 | ||
251 | console.log(newAccountOptions); | 251 | console.log(newAccountOptions); |
252 | setAccountOptions(newAccountOptions); | 252 | setAccountOptions(newAccountOptions); |
253 | + | ||
254 | + // 如果privatePocket为true且有隐私钱包选项,自动选择隐私钱包 | ||
255 | + if (copyData.privatePocket === true || copyData.privatePocket === 'true') { | ||
256 | + console.log('检测到privatePocket为true,尝试自动选择隐私钱包'); | ||
257 | + | ||
258 | + // 查找隐私钱包选项 | ||
259 | + const privacyWalletOption = newAccountOptions.find( | ||
260 | + (option) => option.institution === '隐私钱包', | ||
261 | + ); | ||
262 | + | ||
263 | + if (privacyWalletOption) { | ||
264 | + // 找到了隐私钱包选项,获取其索引 | ||
265 | + const index = newAccountOptions.indexOf(privacyWalletOption); | ||
266 | + // 构造包含索引的value值 (与ProFormSelect的options映射保持一致) | ||
267 | + const valueWithIndex = `${privacyWalletOption.value}_${index}`; | ||
268 | + | ||
269 | + // 设置表单字段值 | ||
270 | + form.setFieldValue('prepaidUid', valueWithIndex); | ||
271 | + form.setFieldValue('realPrepaidUid', privacyWalletOption.uid); | ||
272 | + form.setFieldValue('privatePocket', 'true'); | ||
273 | + } else { | ||
274 | + console.log('未找到可用的隐私钱包选项'); | ||
275 | + } | ||
276 | + } | ||
253 | } | 277 | } |
254 | 278 | ||
255 | /** | 279 | /** |
@@ -933,24 +957,35 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -933,24 +957,35 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
933 | values.erpCustomerId = values.erpCustomerId?.id; | 957 | values.erpCustomerId = values.erpCustomerId?.id; |
934 | } | 958 | } |
935 | 959 | ||
960 | + values.province = province; | ||
961 | + values.city = city; | ||
962 | + values.district = district; | ||
963 | + | ||
936 | // Handle the prepaidUid and privatePocket values for API submission | 964 | // Handle the prepaidUid and privatePocket values for API submission |
937 | if ( | 965 | if ( |
938 | values.paymentMethod === 'WITHHOLDING_ADVANCE_DEPOSIT' && | 966 | values.paymentMethod === 'WITHHOLDING_ADVANCE_DEPOSIT' && |
939 | values.prepaidUid | 967 | values.prepaidUid |
940 | ) { | 968 | ) { |
941 | - console.log('5656原始表单数据:', { | ||
942 | - prepaidUid: values.prepaidUid, | ||
943 | - realPrepaidUid: values.realPrepaidUid, | ||
944 | - privatePocket: values.privatePocket, | ||
945 | - }); | ||
946 | - | ||
947 | // 从选项值中提取原始UID (不包含索引后缀) | 969 | // 从选项值中提取原始UID (不包含索引后缀) |
948 | - const prepaidUidParts = values.prepaidUid.split('_'); | ||
949 | - if (prepaidUidParts.length > 0) { | ||
950 | - // 直接使用第一部分作为实际UID值 (不使用realPrepaidUid) | ||
951 | - values.prepaidUid = parseInt(prepaidUidParts[0], 10); | ||
952 | - console.log('5656使用原始UID进行API提交:', values.prepaidUid); | 970 | + // 检查prepaidUid是否为字符串类型并包含下划线 |
971 | + if ( | ||
972 | + values.prepaidUid && | ||
973 | + typeof values.prepaidUid === 'string' && | ||
974 | + values.prepaidUid.includes('_') | ||
975 | + ) { | ||
976 | + const prepaidUidParts = values.prepaidUid.split('_'); | ||
977 | + if (prepaidUidParts.length > 0) { | ||
978 | + // 直接使用第一部分作为实际UID值 (不使用realPrepaidUid) | ||
979 | + values.prepaidUid = parseInt(prepaidUidParts[0], 10); | ||
980 | + } | ||
981 | + } else if ( | ||
982 | + values.prepaidUid && | ||
983 | + typeof values.prepaidUid === 'string' | ||
984 | + ) { | ||
985 | + // 处理纯字符串情况 (没有索引后缀) | ||
986 | + values.prepaidUid = parseInt(values.prepaidUid, 10); | ||
953 | } | 987 | } |
988 | + // 如果是数字类型,则无需处理 | ||
954 | 989 | ||
955 | // 确保privatePocket字段被正确设置 | 990 | // 确保privatePocket字段被正确设置 |
956 | // 表单中存储的是字符串'true'或'false',需要转换成布尔值 | 991 | // 表单中存储的是字符串'true'或'false',需要转换成布尔值 |
@@ -968,8 +1003,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -968,8 +1003,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
968 | }); | 1003 | }); |
969 | } | 1004 | } |
970 | 1005 | ||
971 | - console.log(values, '5656values'); | ||
972 | - | ||
973 | //新增 | 1006 | //新增 |
974 | if (optType('add') || optType('copy')) { | 1007 | if (optType('add') || optType('copy')) { |
975 | res = await postServiceOrderAddOrder({ data: values }); | 1008 | res = await postServiceOrderAddOrder({ data: values }); |
@@ -1102,7 +1135,7 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -1102,7 +1135,7 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
1102 | autoFillSalesInfo(option); | 1135 | autoFillSalesInfo(option); |
1103 | 1136 | ||
1104 | // 检查是否是特殊的淘宝销售代码 | 1137 | // 检查是否是特殊的淘宝销售代码 |
1105 | - const isTaobaoSalesCode = ['TB', 'TBHC', 'HCTB'].includes(value); | 1138 | + const isTaobaoSalesCode = ['TB', 'TBC', 'HCTB'].includes(value); |
1106 | 1139 | ||
1107 | if (isTaobaoSalesCode) { | 1140 | if (isTaobaoSalesCode) { |
1108 | // 设置支付渠道为淘宝并锁定 | 1141 | // 设置支付渠道为淘宝并锁定 |
@@ -1802,8 +1835,16 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -1802,8 +1835,16 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
1802 | rules={[{ required: true, message: '支付渠道必填' }]} | 1835 | rules={[{ required: true, message: '支付渠道必填' }]} |
1803 | disabled={optType('after-sales-check') || paymentChannelDisabled} | 1836 | disabled={optType('after-sales-check') || paymentChannelDisabled} |
1804 | onChange={(val: any) => { | 1837 | onChange={(val: any) => { |
1805 | - // 当支付渠道选为扣预存或淘宝时,付款方式默认锁定为预付 | ||
1806 | - if (val === 'BALANCE' || val === 'TAOBAO') { | 1838 | + // 根据支付渠道设置不同的支付方式 |
1839 | + if (val === 'BALANCE') { | ||
1840 | + // 支付渠道为扣预存时,支付方式设置为扣预存 | ||
1841 | + setPaymentMethodDisabled(true); | ||
1842 | + form.setFieldsValue({ | ||
1843 | + paymentMethod: 'WITHHOLDING_ADVANCE_DEPOSIT', | ||
1844 | + }); | ||
1845 | + setPaymentMethod('WITHHOLDING_ADVANCE_DEPOSIT'); | ||
1846 | + } else if (val === 'TAOBAO') { | ||
1847 | + // 支付渠道为淘宝时,支付方式设置为预付 | ||
1807 | setPaymentMethodDisabled(true); | 1848 | setPaymentMethodDisabled(true); |
1808 | form.setFieldsValue({ paymentMethod: 'PAYMENT_IN_ADVANCE' }); | 1849 | form.setFieldsValue({ paymentMethod: 'PAYMENT_IN_ADVANCE' }); |
1809 | setPaymentMethod('PAYMENT_IN_ADVANCE'); | 1850 | setPaymentMethod('PAYMENT_IN_ADVANCE'); |
@@ -1838,7 +1879,7 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -1838,7 +1879,7 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
1838 | disabled: true, | 1879 | disabled: true, |
1839 | }, | 1880 | }, |
1840 | { | 1881 | { |
1841 | - label: '扣预存', | 1882 | + label: '预付', |
1842 | value: 'WITHHOLDING_ADVANCE_DEPOSIT', | 1883 | value: 'WITHHOLDING_ADVANCE_DEPOSIT', |
1843 | disabled: true, | 1884 | disabled: true, |
1844 | }, | 1885 | }, |
@@ -1865,9 +1906,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -1865,9 +1906,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
1865 | showSearch | 1906 | showSearch |
1866 | label="预存账号" | 1907 | label="预存账号" |
1867 | onChange={async (value: any, option: any) => { | 1908 | onChange={async (value: any, option: any) => { |
1868 | - console.log(value, '5656value'); | ||
1869 | - console.log(option, '5656option'); | ||
1870 | - | ||
1871 | if (!option) { | 1909 | if (!option) { |
1872 | form.setFieldValue('prepaidUid', undefined); | 1910 | form.setFieldValue('prepaidUid', undefined); |
1873 | form.setFieldValue('privatePocket', false); | 1911 | form.setFieldValue('privatePocket', false); |
src/pages/Order/constant.ts
@@ -28,7 +28,7 @@ export const PAYMENT_METHOD_OPTIONS = { | @@ -28,7 +28,7 @@ export const PAYMENT_METHOD_OPTIONS = { | ||
28 | TAOBAO_ORDER_HAS_BEEN_PAID: '淘宝订单已付款', | 28 | TAOBAO_ORDER_HAS_BEEN_PAID: '淘宝订单已付款', |
29 | OFFICIAL_WEBSITE_ORDER_HAS_BEEN_PAID: '官网订单已付款', | 29 | OFFICIAL_WEBSITE_ORDER_HAS_BEEN_PAID: '官网订单已付款', |
30 | PAYMENT_IN_ADVANCE: '预付款', | 30 | PAYMENT_IN_ADVANCE: '预付款', |
31 | - WITHHOLDING_ADVANCE_DEPOSIT: '扣预存', | 31 | + WITHHOLDING_ADVANCE_DEPOSIT: '预付', |
32 | PLATFORM_SETTLEMENT: '平台结算', | 32 | PLATFORM_SETTLEMENT: '平台结算', |
33 | CASH_ON_DELIVERY: '货到付款', | 33 | CASH_ON_DELIVERY: '货到付款', |
34 | HIRE_PURCHASE: '分期付款', | 34 | HIRE_PURCHASE: '分期付款', |