| | |
| | | return; |
| | | } |
| | | const runApi = currentSubmitConfig.runApi; |
| | | const approveUserIds = stockApproverNodes.value.map(node => node.userId).join(","); |
| | | const payload = currentSubmitConfig.payloadBuilder(salesLedgerProductList, approveUserIds); |
| | | const inboundApproveUserIds = stockApproverNodes.value.map(node => node.userId).join(","); |
| | | const payload = currentSubmitConfig.payloadBuilder( |
| | | salesLedgerProductList, |
| | | inboundApproveUserIds |
| | | ); |
| | | try { |
| | | submitLoading.value = true; |
| | | modal.loading("提交中..."); |
| | |
| | | |
| | | type SubmitConfig = { |
| | | runApi: (data: any) => Promise<any>; |
| | | payloadBuilder: (list: AnyRow[], approveUserIds: string) => any; |
| | | payloadBuilder: (list: AnyRow[], inboundApproveUserIds: string) => any; |
| | | }; |
| | | |
| | | export function createSubmitConfig(scanLedgerIdRef: AnyRef<string | number | null>) { |
| | | const cfg: Record<string, SubmitConfig> = { |
| | | [`${CONTRACT_KIND.sales}-${QUALITY_TYPE.qualified}`]: { |
| | | runApi: scanInboundSales, |
| | | payloadBuilder: (list: AnyRow[], approveUserIds: string) => ({ |
| | | payloadBuilder: (list: AnyRow[], inboundApproveUserIds: string) => ({ |
| | | salesLedgerId: scanLedgerIdRef.value, |
| | | salesLedgerProductList: list, |
| | | approveUserIds, |
| | | inboundApproveUserIds, |
| | | }), |
| | | }, |
| | | [`${CONTRACT_KIND.sales}-${QUALITY_TYPE.unqualified}`]: { |
| | | runApi: scanInboundSalesUnqualified, |
| | | payloadBuilder: (list: AnyRow[], approveUserIds: string) => ({ |
| | | payloadBuilder: (list: AnyRow[], inboundApproveUserIds: string) => ({ |
| | | salesLedgerId: scanLedgerIdRef.value, |
| | | salesLedgerProductList: list, |
| | | approveUserIds, |
| | | inboundApproveUserIds, |
| | | }), |
| | | }, |
| | | [`${CONTRACT_KIND.purchase}-${QUALITY_TYPE.qualified}`]: { |
| | | runApi: scanInboundPurchase, |
| | | payloadBuilder: (list: AnyRow[], approveUserIds: string) => ({ |
| | | payloadBuilder: (list: AnyRow[], inboundApproveUserIds: string) => ({ |
| | | purchaseLedgerId: scanLedgerIdRef.value, |
| | | salesLedgerProductList: list, |
| | | approveUserIds, |
| | | inboundApproveUserIds, |
| | | }), |
| | | }, |
| | | [`${CONTRACT_KIND.purchase}-${QUALITY_TYPE.unqualified}`]: { |
| | | runApi: scanInboundPurchaseUnqualified, |
| | | payloadBuilder: (list: AnyRow[], approveUserIds: string) => ({ |
| | | payloadBuilder: (list: AnyRow[], inboundApproveUserIds: string) => ({ |
| | | purchaseLedgerId: scanLedgerIdRef.value, |
| | | salesLedgerProductList: list, |
| | | approveUserIds, |
| | | inboundApproveUserIds, |
| | | }), |
| | | }, |
| | | }; |