|
|
@ -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,13 +286,15 @@ 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查询车辆表中的数据
|
|
|
|
List<BusSalesOrderVehicle> busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(busSalesOrderLoancontract.getBorrowerSid(),saleOrderSid); |
|
|
|
List<BusSalesOrderVehicle> busSalesOrderVehicleList = busSalesOrderVehicleService.selectByBorrowSid2(borrowSid,saleOrderSid); |
|
|
|
//这是生成业务系统融资放款应收的逻辑:
|
|
|
|
// 融资放款=融资项目总额-融资首付-[贷款保证金]-[厂家贴息],根据选择的产品政策来判断,若贷款保证金为固定的,需要减去,若为敞口的,不需要减;差额放款需要减厂家贴息,全额放款不需要。差额放款的厂家贴息金额存入“其他应收”字段中,
|
|
|
|
//计算融资放款的金额以及厂家贴息金额
|
|
|
@ -302,6 +305,8 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale |
|
|
|
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()); |
|
|
|
//客户名称
|
|
|
@ -338,6 +343,8 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale |
|
|
|
} |
|
|
|
finUncollectedDetailedFeign.saveUnCollection(unCollectionDto); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|