Commit 0f2095b0258920146c27caf562eecfbdb0a867cd
1 parent
c2051725
fix: 修改预存账号选择器bug
Showing
1 changed file
with
42 additions
and
16 deletions
src/pages/Order/OrderList/OrderDrawer.tsx
@@ -248,6 +248,30 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -248,6 +248,30 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
248 | 248 | ||
249 | console.log(newAccountOptions); | 249 | console.log(newAccountOptions); |
250 | setAccountOptions(newAccountOptions); | 250 | setAccountOptions(newAccountOptions); |
251 | + | ||
252 | + // 如果privatePocket为true且有隐私钱包选项,自动选择隐私钱包 | ||
253 | + if (copyData.privatePocket === true || copyData.privatePocket === 'true') { | ||
254 | + console.log('检测到privatePocket为true,尝试自动选择隐私钱包'); | ||
255 | + | ||
256 | + // 查找隐私钱包选项 | ||
257 | + const privacyWalletOption = newAccountOptions.find( | ||
258 | + (option) => option.institution === '隐私钱包', | ||
259 | + ); | ||
260 | + | ||
261 | + if (privacyWalletOption) { | ||
262 | + // 找到了隐私钱包选项,获取其索引 | ||
263 | + const index = newAccountOptions.indexOf(privacyWalletOption); | ||
264 | + // 构造包含索引的value值 (与ProFormSelect的options映射保持一致) | ||
265 | + const valueWithIndex = `${privacyWalletOption.value}_${index}`; | ||
266 | + | ||
267 | + // 设置表单字段值 | ||
268 | + form.setFieldValue('prepaidUid', valueWithIndex); | ||
269 | + form.setFieldValue('realPrepaidUid', privacyWalletOption.uid); | ||
270 | + form.setFieldValue('privatePocket', 'true'); | ||
271 | + } else { | ||
272 | + console.log('未找到可用的隐私钱包选项'); | ||
273 | + } | ||
274 | + } | ||
251 | } | 275 | } |
252 | 276 | ||
253 | /** | 277 | /** |
@@ -936,19 +960,26 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -936,19 +960,26 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
936 | values.paymentMethod === 'WITHHOLDING_ADVANCE_DEPOSIT' && | 960 | values.paymentMethod === 'WITHHOLDING_ADVANCE_DEPOSIT' && |
937 | values.prepaidUid | 961 | values.prepaidUid |
938 | ) { | 962 | ) { |
939 | - console.log('5656原始表单数据:', { | ||
940 | - prepaidUid: values.prepaidUid, | ||
941 | - realPrepaidUid: values.realPrepaidUid, | ||
942 | - privatePocket: values.privatePocket, | ||
943 | - }); | ||
944 | - | ||
945 | // 从选项值中提取原始UID (不包含索引后缀) | 963 | // 从选项值中提取原始UID (不包含索引后缀) |
946 | - const prepaidUidParts = values.prepaidUid.split('_'); | ||
947 | - if (prepaidUidParts.length > 0) { | ||
948 | - // 直接使用第一部分作为实际UID值 (不使用realPrepaidUid) | ||
949 | - values.prepaidUid = parseInt(prepaidUidParts[0], 10); | ||
950 | - console.log('5656使用原始UID进行API提交:', values.prepaidUid); | 964 | + // 检查prepaidUid是否为字符串类型并包含下划线 |
965 | + if ( | ||
966 | + values.prepaidUid && | ||
967 | + typeof values.prepaidUid === 'string' && | ||
968 | + values.prepaidUid.includes('_') | ||
969 | + ) { | ||
970 | + const prepaidUidParts = values.prepaidUid.split('_'); | ||
971 | + if (prepaidUidParts.length > 0) { | ||
972 | + // 直接使用第一部分作为实际UID值 (不使用realPrepaidUid) | ||
973 | + values.prepaidUid = parseInt(prepaidUidParts[0], 10); | ||
974 | + } | ||
975 | + } else if ( | ||
976 | + values.prepaidUid && | ||
977 | + typeof values.prepaidUid === 'string' | ||
978 | + ) { | ||
979 | + // 处理纯字符串情况 (没有索引后缀) | ||
980 | + values.prepaidUid = parseInt(values.prepaidUid, 10); | ||
951 | } | 981 | } |
982 | + // 如果是数字类型,则无需处理 | ||
952 | 983 | ||
953 | // 确保privatePocket字段被正确设置 | 984 | // 确保privatePocket字段被正确设置 |
954 | // 表单中存储的是字符串'true'或'false',需要转换成布尔值 | 985 | // 表单中存储的是字符串'true'或'false',需要转换成布尔值 |
@@ -966,8 +997,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -966,8 +997,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
966 | }); | 997 | }); |
967 | } | 998 | } |
968 | 999 | ||
969 | - console.log(values, '5656values'); | ||
970 | - | ||
971 | //新增 | 1000 | //新增 |
972 | if (optType('add') || optType('copy')) { | 1001 | if (optType('add') || optType('copy')) { |
973 | res = await postServiceOrderAddOrder({ data: values }); | 1002 | res = await postServiceOrderAddOrder({ data: values }); |
@@ -1796,9 +1825,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | @@ -1796,9 +1825,6 @@ export default ({ onClose, data, subOrders, orderOptType }) => { | ||
1796 | showSearch | 1825 | showSearch |
1797 | label="预存账号" | 1826 | label="预存账号" |
1798 | onChange={async (value: any, option: any) => { | 1827 | onChange={async (value: any, option: any) => { |
1799 | - console.log(value, '5656value'); | ||
1800 | - console.log(option, '5656option'); | ||
1801 | - | ||
1802 | if (!option) { | 1828 | if (!option) { |
1803 | form.setFieldValue('prepaidUid', undefined); | 1829 | form.setFieldValue('prepaidUid', undefined); |
1804 | form.setFieldValue('privatePocket', false); | 1830 | form.setFieldValue('privatePocket', false); |