|
|
@ -41,6 +41,7 @@ import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeig |
|
|
|
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService; |
|
|
|
import com.yxt.anrui.buscenter.biz.bussalesorderborrower.BusSalesOrderBorrowerService; |
|
|
|
import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService; |
|
|
|
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailed; |
|
|
|
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign; |
|
|
|
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.UnCollectionDto; |
|
|
|
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign; |
|
|
@ -285,55 +286,66 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale |
|
|
|
public ResultBean pushLoanOrder(LoanContractPush loanContractPush) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
String saleOrderSid = loanContractPush.getSaleOrderSid(); |
|
|
|
String loanContractSid = loanContractPush.getLoanContractSid(); |
|
|
|
// String loanContractSid = loanContractPush.getLoanContractSid();
|
|
|
|
String borrowSid = loanContractPush.getBorrowSid(); |
|
|
|
BusSalesOrder busSalesOrder = busSalesOrderService.fetchBySid(saleOrderSid); |
|
|
|
BusSalesOrderBorrower busSalesOrderBorrower = busSalesOrderBorrowerService.fetchBySid(borrowSid); |
|
|
|
//根据消贷合同查询贷款人
|
|
|
|
BusSalesOrderLoancontract busSalesOrderLoancontract = fetchBySid(loanContractSid); |
|
|
|
if (busSalesOrderLoancontract != null) { |
|
|
|
// BusSalesOrderLoancontract busSalesOrderLoancontract = fetchBySid(loanContractSid);
|
|
|
|
if (busSalesOrderBorrower != null) { |
|
|
|
//根据销售订单的贷款人sid查询车辆表中的数据
|
|
|
|
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByBorrowSid2(busSalesOrderLoancontract.getBorrowerSid(),loanContractSid); |
|
|
|
List<BusSalesOrderVehicle> busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(borrowSid,saleOrderSid); |
|
|
|
//这是生成业务系统融资放款应收的逻辑:
|
|
|
|
// 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中,
|
|
|
|
//计算融资放款的金额以及厂家贴息金额
|
|
|
|
ResultBean<PushVo> resultBean = loanSolutionsFeign.selectMoney(saleOrderSid); |
|
|
|
if (resultBean.getData() != null) { |
|
|
|
PushVo pushVo = resultBean.getData(); |
|
|
|
UnCollectionDto unCollectionDto = new UnCollectionDto(); |
|
|
|
unCollectionDto.setContractNo(busSalesOrder.getContractNo()); |
|
|
|
// unCollectionDto.setContractSid(contractSid);
|
|
|
|
//客户名称
|
|
|
|
unCollectionDto.setCustomerName(busSalesOrder.getCustomerName()); |
|
|
|
//客户sid
|
|
|
|
unCollectionDto.setCustomerSid(busSalesOrder.getCustomerSid()); |
|
|
|
//客户类型
|
|
|
|
unCollectionDto.setCustomerClass(busSalesOrder.getCustomerClass()); |
|
|
|
//客户类型
|
|
|
|
unCollectionDto.setCustomerClassKey(busSalesOrder.getCustomerClassKey()); |
|
|
|
//客户头像
|
|
|
|
unCollectionDto.setCustomerImage(busSalesOrder.getCustomerPhoto()); |
|
|
|
unCollectionDto.setReceivablesName("融资放款"); |
|
|
|
unCollectionDto.setCustomerPhone(busSalesOrder.getMobile()); |
|
|
|
unCollectionDto.setUseOrgSid(busSalesOrder.getUseOrgSid()); |
|
|
|
unCollectionDto.setVinNo(busSalesOrderVehicle.getLinkNo()); |
|
|
|
unCollectionDto.setCurrentReceivableMoney(pushVo.getMoney()); |
|
|
|
unCollectionDto.setUserSid(busSalesOrder.getCreateBySid()); |
|
|
|
unCollectionDto.setReveivableMoney(pushVo.getMoney()); |
|
|
|
unCollectionDto.setBusVinSid(busSalesOrderVehicle.getSid()); |
|
|
|
unCollectionDto.setPayType(busSalesOrder.getPayType()); |
|
|
|
unCollectionDto.setPayTypeKey(busSalesOrder.getPayTypeKey()); |
|
|
|
unCollectionDto.setPurchaseSystemName(busSalesOrder.getPurchaseSystemName()); |
|
|
|
unCollectionDto.setPurchaseSystemSid(busSalesOrder.getPurchaseSystemSid()); |
|
|
|
unCollectionDto.setOrgSidPath(busSalesOrder.getOrgSidPath()); |
|
|
|
unCollectionDto.setStaffUserSid(busSalesOrder.getCreateBySid()); |
|
|
|
unCollectionDto.setStaffName(busSalesOrder.getStaffName()); |
|
|
|
unCollectionDto.setStaffDeptName(busSalesOrder.getOrgName()); |
|
|
|
unCollectionDto.setStaffDeptSid(busSalesOrder.getOrgSid()); |
|
|
|
unCollectionDto.setUseOrgName(busSalesOrder.getUseOrgName()); |
|
|
|
unCollectionDto.setKxState("01"); |
|
|
|
if (StringUtils.isNotBlank(pushVo.getOtherReceivableMoney())) { |
|
|
|
unCollectionDto.setOtherReceivableMoney(new BigDecimal(pushVo.getOtherReceivableMoney())); |
|
|
|
busSalesOrderVehicleList.removeAll(Collections.singleton(null)); |
|
|
|
if(!busSalesOrderVehicleList.isEmpty()){ |
|
|
|
for (int i = 0; i < busSalesOrderVehicleList.size(); i++) { |
|
|
|
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleList.get(i); |
|
|
|
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = baseMapper.selectByBusVinSId("融资放款",busSalesOrderVehicle.getSid()); |
|
|
|
if(finUncollectedReceivablesDetailed == null){ |
|
|
|
UnCollectionDto unCollectionDto = new UnCollectionDto(); |
|
|
|
unCollectionDto.setContractNo(busSalesOrder.getContractNo()); |
|
|
|
//客户名称
|
|
|
|
unCollectionDto.setCustomerName(busSalesOrder.getCustomerName()); |
|
|
|
//客户sid
|
|
|
|
unCollectionDto.setCustomerSid(busSalesOrder.getCustomerSid()); |
|
|
|
//客户类型
|
|
|
|
unCollectionDto.setCustomerClass(busSalesOrder.getCustomerClass()); |
|
|
|
//客户类型
|
|
|
|
unCollectionDto.setCustomerClassKey(busSalesOrder.getCustomerClassKey()); |
|
|
|
//客户头像
|
|
|
|
unCollectionDto.setCustomerImage(busSalesOrder.getCustomerPhoto()); |
|
|
|
unCollectionDto.setReceivablesName("融资放款"); |
|
|
|
unCollectionDto.setCustomerPhone(busSalesOrder.getMobile()); |
|
|
|
unCollectionDto.setUseOrgSid(busSalesOrder.getUseOrgSid()); |
|
|
|
unCollectionDto.setVinNo(busSalesOrderVehicle.getLinkNo()); |
|
|
|
unCollectionDto.setCurrentReceivableMoney(pushVo.getMoney()); |
|
|
|
unCollectionDto.setUserSid(busSalesOrder.getCreateBySid()); |
|
|
|
unCollectionDto.setReveivableMoney(pushVo.getMoney()); |
|
|
|
unCollectionDto.setBusVinSid(busSalesOrderVehicle.getSid()); |
|
|
|
unCollectionDto.setPayType(busSalesOrder.getPayType()); |
|
|
|
unCollectionDto.setPayTypeKey(busSalesOrder.getPayTypeKey()); |
|
|
|
unCollectionDto.setPurchaseSystemName(busSalesOrder.getPurchaseSystemName()); |
|
|
|
unCollectionDto.setPurchaseSystemSid(busSalesOrder.getPurchaseSystemSid()); |
|
|
|
unCollectionDto.setOrgSidPath(busSalesOrder.getOrgSidPath()); |
|
|
|
unCollectionDto.setStaffUserSid(busSalesOrder.getCreateBySid()); |
|
|
|
unCollectionDto.setStaffName(busSalesOrder.getStaffName()); |
|
|
|
unCollectionDto.setStaffDeptName(busSalesOrder.getOrgName()); |
|
|
|
unCollectionDto.setStaffDeptSid(busSalesOrder.getOrgSid()); |
|
|
|
unCollectionDto.setUseOrgName(busSalesOrder.getUseOrgName()); |
|
|
|
unCollectionDto.setKxState("01"); |
|
|
|
if (StringUtils.isNotBlank(pushVo.getOtherReceivableMoney())) { |
|
|
|
unCollectionDto.setOtherReceivableMoney(new BigDecimal(pushVo.getOtherReceivableMoney())); |
|
|
|
} |
|
|
|
finUncollectedDetailedFeign.saveUnCollection(unCollectionDto); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
finUncollectedDetailedFeign.saveUnCollection(unCollectionDto); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.success(); |
|
|
@ -352,7 +364,7 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale |
|
|
|
//-----------获取其他应收单对象----------------
|
|
|
|
CapitalCreditResult creditResult = new CapitalCreditResult(); |
|
|
|
//根据销售订单的贷款人sid查询车辆表中的数据
|
|
|
|
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByBorrowSid2(borrowerDetailsVo.getSid(),loanOtherReceivablePush.getLoanContractSid()); |
|
|
|
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByBorrowSid(borrowerDetailsVo.getSid()); |
|
|
|
if (null != busSalesOrderVehicle) { |
|
|
|
String customerNumber = ""; |
|
|
|
//判断财务系统是否有客户
|
|
|
|