diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java index 00612a2787..bba2906310 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java @@ -294,7 +294,7 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(borrowSid,saleOrderSid); + List busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(borrowSid, saleOrderSid); //这是生成业务系统融资放款应收的逻辑: // 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中, //计算融资放款的金额以及厂家贴息金额 @@ -302,11 +302,11 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService bdCustomers = new ArrayList<>(); - BdCustomer bdCustomer = new BdCustomer(); - bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo()); - bdCustomer.setFShortName(salesOrder.getContractNo()); - BasePurchaseSystemDetailsVo data = basePurchaseSystemFeign.fetchDetailsByDeptSid(salesOrder.getPurchaseSystemSid()).getData(); - bdCustomer.setTOrgIds(data.getOrgCode()); - if (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) { - bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getLinkNo()); + List busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(borrowerSid, saleOrderSid); + if (!busSalesOrderVehicleList.isEmpty()) { + for (BusSalesOrderVehicle busSalesOrderVehicle : busSalesOrderVehicleList) { + String customerNumber = ""; + //判断财务系统是否有客户 + Boolean aBoolean = finKingDeeFeign.customerExistState(busSalesOrderVehicle.getTemporaryNo()).getData(); + if (!aBoolean) { + List bdCustomers = new ArrayList<>(); + BdCustomer bdCustomer = new BdCustomer(); + bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo()); + bdCustomer.setFShortName(salesOrder.getContractNo()); + BasePurchaseSystemDetailsVo data = basePurchaseSystemFeign.fetchDetailsByDeptSid(salesOrder.getPurchaseSystemSid()).getData(); + bdCustomer.setTOrgIds(data.getOrgCode()); + if (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) { + bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getLinkNo()); + } else { + bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo()); + } + bdCustomers.add(bdCustomer); + ResultBean resultBean = finKingDeeFeign.draftBdCustomers(bdCustomers); + if (resultBean.getSuccess()) { + customerNumber = bdCustomer.getFNumber(); + } } else { - bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo()); - } - bdCustomers.add(bdCustomer); - ResultBean resultBean = finKingDeeFeign.draftBdCustomers(bdCustomers); - if (resultBean.getSuccess()) { - customerNumber = bdCustomer.getFNumber(); - } - } else { - customerNumber = busSalesOrderVehicle.getTemporaryNo(); - } - creditResult.setCommUnit(customerNumber); - SysOrganizationVo sysOrganizationVo1 = sysOrganizationFeign.fetchBySid(salesOrder.getUseOrgSid()).getData(); - creditResult.setCollectionOrg(sysOrganizationVo1.getOrgCode()); - creditResult.setBussDate(DateUtil.formatDate(new Date())); - List collectionDetailDtoListOne = new ArrayList<>(); - SysOrganizationVo sysOrganizationVo2 = sysOrganizationFeign.fetchBySid(salesOrder.getOrgSid()).getData(); - //这是生成业务系统融资放款应收的逻辑: - // 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中, - //计算融资放款的金额以及厂家贴息金额 - ResultBean resultBean = loanSolutionsFeign.selectMoney(saleOrderSid); - if (null != resultBean.getData()) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney("-" + resultBean.getData().getMoney()); - creditResultDetailDto.setUseTo(CwSystemYT.RONGZI_FANGKUAN.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - SolutionsDetailsVo solutions = loanSolutionsFeign.selectDetails(saleOrderSid).getData(); - if (null != solutions) { - //贷款保证金 - if (StringUtils.isNotBlank(solutions.getBondAmounts()) && !("0").equals(solutions.getBondAmounts())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getBondAmounts()); - creditResultDetailDto.setUseTo(CwSystemYT.BOND_AMOUNTS.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //保险保证金 - if (StringUtils.isNotBlank(solutions.getDepositPremium()) && !("0").equals(solutions.getDepositPremium())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getDepositPremium()); - creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_PREMIUM.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //落户保证金 - if (StringUtils.isNotBlank(solutions.getDepositSettle()) && !("0").equals(solutions.getDepositSettle())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getDepositSettle()); - creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_SETTLE.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //服务费 - if (StringUtils.isNotBlank(solutions.getServiceAmount()) && !("0").equals(solutions.getServiceAmount())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setUseTo(CwSystemYT.SERVICE_AMOUNT_DANBAO.getType()); - creditResultDetailDto.setExTaxMoney(solutions.getServiceAmount()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //代收意外险 - if (StringUtils.isNotBlank(solutions.getProxyAccidentPremium()) && !("0").equals(solutions.getProxyAccidentPremium())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setUseTo(CwSystemYT.PROXY_ACCIDENT_PREMIUM.getType()); - creditResultDetailDto.setExTaxMoney(solutions.getProxyAccidentPremium()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //上牌费、运管费 - if ((StringUtils.isNotBlank(solutions.getRegisterAmount()) && !("0").equals(solutions.getRegisterAmount())) || - (StringUtils.isNotBlank(solutions.getOperationAmount()) && !("0").equals(solutions.getOperationAmount()))) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - BigDecimal registerAmount = new BigDecimal(solutions.getRegisterAmount()); - BigDecimal opertionAmount = new BigDecimal(solutions.getOperationAmount()); - BigDecimal add = registerAmount.add(opertionAmount); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setUseTo(CwSystemYT.SHANGPAI_YUNGUAN.getType()); - creditResultDetailDto.setExTaxMoney(add.toString()); - collectionDetailDtoListOne.add(creditResultDetailDto); + customerNumber = busSalesOrderVehicle.getTemporaryNo(); } - //其它费用 - if (StringUtils.isNotBlank(solutions.getOtherAmount()) && !("0").equals(solutions.getOtherAmount())) { + creditResult.setCommUnit(customerNumber); + SysOrganizationVo sysOrganizationVo1 = sysOrganizationFeign.fetchBySid(salesOrder.getUseOrgSid()).getData(); + creditResult.setCollectionOrg(sysOrganizationVo1.getOrgCode()); + creditResult.setBussDate(DateUtil.formatDate(new Date())); + List collectionDetailDtoListOne = new ArrayList<>(); + SysOrganizationVo sysOrganizationVo2 = sysOrganizationFeign.fetchBySid(salesOrder.getOrgSid()).getData(); + //这是生成业务系统融资放款应收的逻辑: + // 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中, + //计算融资放款的金额以及厂家贴息金额 + ResultBean resultBean = loanSolutionsFeign.selectMoney(saleOrderSid); + if (null != resultBean.getData()) { CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getOtherAmount()); - creditResultDetailDto.setUseTo(CwSystemYT.OTHER_AMOUNT.getType()); + creditResultDetailDto.setExTaxMoney("-" + resultBean.getData().getMoney()); + creditResultDetailDto.setUseTo(CwSystemYT.RONGZI_FANGKUAN.getType()); collectionDetailDtoListOne.add(creditResultDetailDto); } - //补车价 - if (StringUtils.isNotBlank(solutions.getVehOtherPrice()) && !("0").equals(solutions.getVehOtherPrice())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getVehOtherPrice()); - creditResultDetailDto.setUseTo(CwSystemYT.VEH_OTHER_PRICE.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); - } - //留购价 - if (StringUtils.isNotBlank(solutions.getNominalPrice()) && !("0").equals(solutions.getNominalPrice())) { - CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); - creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); - creditResultDetailDto.setExTaxMoney(solutions.getNominalPrice()); - creditResultDetailDto.setUseTo(CwSystemYT.NOMINAL_PRICE.getType()); - collectionDetailDtoListOne.add(creditResultDetailDto); + SolutionsDetailsVo solutions = loanSolutionsFeign.selectDetails(saleOrderSid).getData(); + if (null != solutions) { + //贷款保证金 + if (StringUtils.isNotBlank(solutions.getBondAmounts()) && !("0").equals(solutions.getBondAmounts())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getBondAmounts()); + creditResultDetailDto.setUseTo(CwSystemYT.BOND_AMOUNTS.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //保险保证金 + if (StringUtils.isNotBlank(solutions.getDepositPremium()) && !("0").equals(solutions.getDepositPremium())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getDepositPremium()); + creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_PREMIUM.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //落户保证金 + if (StringUtils.isNotBlank(solutions.getDepositSettle()) && !("0").equals(solutions.getDepositSettle())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getDepositSettle()); + creditResultDetailDto.setUseTo(CwSystemYT.DEPOSIT_SETTLE.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //服务费 + if (StringUtils.isNotBlank(solutions.getServiceAmount()) && !("0").equals(solutions.getServiceAmount())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setUseTo(CwSystemYT.SERVICE_AMOUNT_DANBAO.getType()); + creditResultDetailDto.setExTaxMoney(solutions.getServiceAmount()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //代收意外险 + if (StringUtils.isNotBlank(solutions.getProxyAccidentPremium()) && !("0").equals(solutions.getProxyAccidentPremium())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setUseTo(CwSystemYT.PROXY_ACCIDENT_PREMIUM.getType()); + creditResultDetailDto.setExTaxMoney(solutions.getProxyAccidentPremium()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //上牌费、运管费 + if ((StringUtils.isNotBlank(solutions.getRegisterAmount()) && !("0").equals(solutions.getRegisterAmount())) || + (StringUtils.isNotBlank(solutions.getOperationAmount()) && !("0").equals(solutions.getOperationAmount()))) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + BigDecimal registerAmount = new BigDecimal(solutions.getRegisterAmount()); + BigDecimal opertionAmount = new BigDecimal(solutions.getOperationAmount()); + BigDecimal add = registerAmount.add(opertionAmount); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setUseTo(CwSystemYT.SHANGPAI_YUNGUAN.getType()); + creditResultDetailDto.setExTaxMoney(add.toString()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //其它费用 + if (StringUtils.isNotBlank(solutions.getOtherAmount()) && !("0").equals(solutions.getOtherAmount())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getOtherAmount()); + creditResultDetailDto.setUseTo(CwSystemYT.OTHER_AMOUNT.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //补车价 + if (StringUtils.isNotBlank(solutions.getVehOtherPrice()) && !("0").equals(solutions.getVehOtherPrice())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getVehOtherPrice()); + creditResultDetailDto.setUseTo(CwSystemYT.VEH_OTHER_PRICE.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } + //留购价 + if (StringUtils.isNotBlank(solutions.getNominalPrice()) && !("0").equals(solutions.getNominalPrice())) { + CapitalCreditResult.CapitalCreditResultDetailDto creditResultDetailDto = new CapitalCreditResult.CapitalCreditResultDetailDto(); + creditResultDetailDto.setDearDept(sysOrganizationVo2.getOrgCode()); + creditResultDetailDto.setExTaxMoney(solutions.getNominalPrice()); + creditResultDetailDto.setUseTo(CwSystemYT.NOMINAL_PRICE.getType()); + collectionDetailDtoListOne.add(creditResultDetailDto); + } } + creditResult.setResultDetails(collectionDetailDtoListOne); + finKingDeeFeign.pushOtherReceivableBill(creditResult); + } - creditResult.setResultDetails(collectionDetailDtoListOne); - finKingDeeFeign.pushOtherReceivableBill(creditResult); } } } @@ -513,7 +516,7 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService> fetchAllByOrderSidAndDkrSid(String saleOrderSid, String saleOrderBorrowerSid) { ResultBean rb = ResultBean.fireFail(); - List busSalesOrderLoancontracts = baseMapper.fetchAllByOrderSidAndDkrSid(saleOrderSid,saleOrderBorrowerSid); + List busSalesOrderLoancontracts = baseMapper.fetchAllByOrderSidAndDkrSid(saleOrderSid, saleOrderBorrowerSid); return rb.success().setData(busSalesOrderLoancontracts); } diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java index 171f331bd7..c8d24fbd2e 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/capitalcreditresult/OtherReceivableBillCreditResultService.java @@ -72,13 +72,13 @@ public class OtherReceivableBillCreditResultService extends FinKingDeeService { return rb.setMsg("其他应收单保存失败!"); } log.info("其他应收单保存成功!"); -// String submitKD = getSubmitKD(resultBean1.getData(),KingDeeBillId.AR_OTHERRECEIVABLE.getID()); -// ResultBean resultBean2 = accessKingDeeInterface(KingDeeBillId.AR_OTHERRECEIVABLE.getID(), submitKD, KingDeeBillUrl.SUBMIT_URL.getURL()); -// if(!resultBean2.getSuccess()){ -// log.info("其他应收单提交失败!"); -// return rb.setMsg("其他应收单提交失败!"); -// } -// log.info("其他应收单提交成功!"); + String submitKD = getSubmitKD(resultBean1.getData(),KingDeeBillId.AR_OTHERRECEIVABLE.getID()); + ResultBean resultBean2 = accessKingDeeInterface(KingDeeBillId.AR_OTHERRECEIVABLE.getID(), submitKD, KingDeeBillUrl.SUBMIT_URL.getURL()); + if(!resultBean2.getSuccess()){ + log.info("其他应收单提交失败!"); + return rb.setMsg("其他应收单提交失败!"); + } + log.info("其他应收单提交成功!"); } catch (Exception e) { e.printStackTrace(); }