import { ICptRation, IInstallationFee, IRationInstall, IStdRation, IRation } from '@sc/types'; import { find } from 'lodash'; import { v1 } from 'uuid'; export const getRationInstallFee = ( libRation: IStdRation | ICptRation | IRation, installFee: IInstallationFee ): IRationInstall[] => { const rationInstalls: IRationInstall[] = []; if (libRation.rationInstList && installFee) { for (const ri of libRation.rationInstList) { const feeItem = find(installFee.installFeeItems, { ID: ri.feeItemId }); const section = find(installFee.installSections, { ID: ri.sectionId }); if (feeItem && section) { const newRationInstall: IRationInstall = { ID: v1(), feeItemID: feeItem.ID, sectionID: section.ID, itemName: feeItem.feeItem, sectionName: section.name, feeRuleID: '', unifiedSetting: true, }; if (feeItem.isCalc && section.feeRuleID && section.feeRuleID !== '') { // 勾选记取时并且有规则ID时才读取 const feeRule = find(installFee.feeRules, { ID: section.feeRuleID }); if (feeRule) { newRationInstall.feeRuleID = feeRule.ID; } } rationInstalls.push(newRationInstall); } } } return rationInstalls; }; export default {};