Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
yunuo970428 3 weeks ago
parent
commit
c4807061fd
  1. 640
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  2. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.java
  3. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.xml
  4. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyService.java
  5. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java
  6. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml
  7. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java
  8. 105
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java

640
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -4694,7 +4694,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new java.util.concurrent.ThreadPoolExecutor.AbortPolicy()); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new java.util.concurrent.ThreadPoolExecutor.AbortPolicy());
FinCollectionConfirmation finalConfirmation1 = confirmation; FinCollectionConfirmation finalConfirmation1 = confirmation;
Future future1 = pool.submit(() -> { Future future1 = pool.submit(() -> {
pushToRiskToFin(finalConfirmation1, finSelectedReceivablesDetailedVos, collectionDate, voucher); pushToRiskToFin(finalConfirmation1, finSelectedReceivablesDetailedVos, collectionDate, voucher,userSid);
}); });
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
@ -4719,7 +4719,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
return rb.success().setMsg("款项确认成功"); return rb.success().setMsg("款项确认成功");
} }
private void pushToRiskToFin(FinCollectionConfirmation finalConfirmation, List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVoList, String collectionDate, Voucher voucher) { private void pushToRiskToFin(FinCollectionConfirmation finalConfirmation,
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVoList,
String collectionDate, Voucher voucher,String userSid) {
List<Voucher.VoucherResultDetailDto> list = new ArrayList<>(); List<Voucher.VoucherResultDetailDto> list = new ArrayList<>();
List<Voucher.VoucherResultDetailDto> list2 = new ArrayList<>(); List<Voucher.VoucherResultDetailDto> list2 = new ArrayList<>();
BigDecimal all = BigDecimal.ZERO;//赎回 BigDecimal all = BigDecimal.ZERO;//赎回
@ -4736,6 +4738,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
payType = sysMappingInfoVo.getMap_itemKey(); payType = sysMappingInfoVo.getMap_itemKey();
} }
} }
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdfTimes = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(finalConfirmation.getCreateDeptSid()).getData(); SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(finalConfirmation.getCreateDeptSid()).getData();
String customerNumber = ""; String customerNumber = "";
for (int i = 0; i < finSelectedReceivablesDetailedVoList.size(); i++) { for (int i = 0; i < finSelectedReceivablesDetailedVoList.size(); i++) {
@ -4788,191 +4792,487 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
} else { } else {
customerNumber = busSalesOrderVehicle.getTemporaryNo(); customerNumber = busSalesOrderVehicle.getTemporaryNo();
} }
} if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString()) || "11".equals(busSalesOrderVehicle.getRiskState().toString())) {//赎回中-赎回凭证--交回--转租中
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString()) || "11".equals(busSalesOrderVehicle.getRiskState().toString())) {//赎回中-赎回凭证--交回--转租中 ////营业费用_催收费用 上门催收费用--收回车辆费用(赎回通过后推送的费用)
////营业费用_催收费用 上门催收费用--收回车辆费用(赎回通过后推送的费用) if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){ Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto();
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto(); if ("收回车辆费用".equals(v.getReceivablesName())) {
if ("收回车辆费用".equals(v.getReceivablesName())) { all = all.add(new BigDecimal(v.getSubscriptionMoney()));
all = all.add(new BigDecimal(v.getSubscriptionMoney())); voucherResultDetailDtoJf2.setSummary("收款-赎回费用");
voucherResultDetailDtoJf2.setSummary("收款-赎回费用"); voucherResultDetailDtoJf2.setSubjectNo("6601.32.05");
voucherResultDetailDtoJf2.setSubjectNo("6601.32.05"); //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoJf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoJf2.setDebit(new BigDecimal(v.getSubscriptionMoney()).negate().toString());
list.add(voucherResultDetailDtoJf2);
}
}
//预提费用 待确认逾期利息 待确认途期利息--资金占用费转收入
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf3 = new Voucher.VoucherResultDetailDto();
if ("资金占用费".equals(v.getReceivablesName())) {//借方
voucherResultDetailDtoJf3.setSummary("资金占用费转收入");
voucherResultDetailDtoJf3.setSubjectNo("2191.05.00");
//核算部门 //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoJf3.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoJf2.setDimensionCustom(customerNumber); voucherResultDetailDtoJf3.setDimensionCustom(customerNumber);
voucherResultDetailDtoJf2.setDebit(new BigDecimal(v.getSubscriptionMoney()).negate().toString()); voucherResultDetailDtoJf3.setDebit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoJf2); list.add(voucherResultDetailDtoJf3);
} }
} //资金占用费转收入--其他业务收入_消贷收入_消贷利息
//预提费用 待确认逾期利息 待确认途期利息--资金占用费转收入 Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto();
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf3 = new Voucher.VoucherResultDetailDto(); if ("资金占用费".equals(v.getReceivablesName())) {//贷方
if ("资金占用费".equals(v.getReceivablesName())) {//借方 voucherResultDetailDtoDf3.setSummary("资金占用费转收入");
voucherResultDetailDtoJf3.setSummary("资金占用费转收入"); voucherResultDetailDtoDf3.setSubjectNo("6002.01.17");
voucherResultDetailDtoJf3.setSubjectNo("2191.05.00"); //核算部门
//核算部门 voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode());
voucherResultDetailDtoJf3.setDimensionDept(deptVo.getOrgCode()); //核算客户
//核算客户 voucherResultDetailDtoDf3.setDimensionCustom(customerNumber);
voucherResultDetailDtoJf3.setDimensionCustom(customerNumber); voucherResultDetailDtoDf3.setCredit(v.getSubscriptionMoney());
voucherResultDetailDtoJf3.setDebit(v.getSubscriptionMoney()); list.add(voucherResultDetailDtoDf3);
list.add(voucherResultDetailDtoJf3);
}
//资金占用费转收入--其他业务收入_消贷收入_消贷利息
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto();
if ("资金占用费".equals(v.getReceivablesName())) {//贷方
voucherResultDetailDtoDf3.setSummary("资金占用费转收入");
voucherResultDetailDtoDf3.setSubjectNo("6002.01.17");
//核算部门
voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDf3.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf3.setCredit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoDf3);
}
//应收贷款车欠款_待处理欠款_扣回车辆--月还/资方逾期利息
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
all = all.add(new BigDecimal(v.getSubscriptionMoney()));
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
voucherResultDetailDtoDf.setSummary("收款-赎回款");
}else{
voucherResultDetailDtoDf.setSummary("收款-转租款");
} }
//应收贷款车欠款_待处理欠款_扣回车辆--月还/资方逾期利息
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
all = all.add(new BigDecimal(v.getSubscriptionMoney()));
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
voucherResultDetailDtoDf.setSummary("收款-赎回款");
}else{
voucherResultDetailDtoDf.setSummary("收款-转租款");
}
voucherResultDetailDtoDf.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); voucherResultDetailDtoDf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoDf); list.add(voucherResultDetailDtoDf);
if("月还".equals(v.getReceivablesName())){ if("月还".equals(v.getReceivablesName())){
if(planDetails.getPaymentMoney() != null){ //推送间还认款记录
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) >0) { LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
BigDecimal paymentMoney = planDetails.getPaymentMoney(); historyEntity.setPlanDetailSid(planSid);
String subscriptionMoney = v.getSubscriptionMoney(); historyEntity.setScheduleSid(planDetails.getScheduleSid());
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney)); historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
planDetails.setPaymentMoney(subtract); historyEntity.setUpdateTime(new DateTime());
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails); historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
} }
} loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}else{ }else{
if(planDetails.getPaymentInterest() != null){ if (null != planDetails.getPaymentInterest()) {
if(planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO)>0){ if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest(); BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney(); String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney)); BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract); planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney(); BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney)); BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2); planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails); loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
} }
} }
} }
}
//应收贷款车欠款_到期欠款_逾期利息--资金占用费 //应收贷款车欠款_到期欠款_逾期利息--资金占用费
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto();
if ("资金占用费".equals(v.getReceivablesName())) { if ("资金占用费".equals(v.getReceivablesName())) {
all = all.add(new BigDecimal(v.getSubscriptionMoney())); all = all.add(new BigDecimal(v.getSubscriptionMoney()));
if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){ if ("9".equals(busSalesOrderVehicle.getRiskState().toString()) || "1".equals(busSalesOrderVehicle.getRiskState().toString())){
voucherResultDetailDtoDf2.setSummary("收款-赎回款"); voucherResultDetailDtoDf2.setSummary("收款-赎回款");
}else{ }else{
voucherResultDetailDtoDf2.setSummary("收款-转租款"); voucherResultDetailDtoDf2.setSummary("收款-转租款");
}
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf2.setCredit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoDf2);
} }
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf2.setCredit(v.getSubscriptionMoney());
list.add(voucherResultDetailDtoDf2);
}
} else if ("10".equals(busSalesOrderVehicle.getRiskState().toString())) {//二次销售中-二次销售凭证 } else if ("10".equals(busSalesOrderVehicle.getRiskState().toString())) {//二次销售中-二次销售凭证
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) { if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf.setSummary("***扣回车辆再次销售款"); voucherResultDetailDtoDf.setSummary(customerNumber+"扣回车辆再次销售款");
voucherResultDetailDtoDf.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); voucherResultDetailDtoDf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney());
list2.add(voucherResultDetailDtoDf); list2.add(voucherResultDetailDtoDf);
if("月还".equals(v.getReceivablesName())){ if("月还".equals(v.getReceivablesName())){
if(planDetails.getPaymentMoney() != null){ //推送间还认款记录
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) >0) { LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
BigDecimal paymentMoney = planDetails.getPaymentMoney(); historyEntity.setPlanDetailSid(planSid);
String subscriptionMoney = v.getSubscriptionMoney(); historyEntity.setScheduleSid(planDetails.getScheduleSid());
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney)); historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
planDetails.setPaymentMoney(subtract); historyEntity.setUpdateTime(new DateTime());
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails); historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
} }
} loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}else{ }else{
if(planDetails.getPaymentInterest() != null){ if (null != planDetails.getPaymentInterest()) {
if(planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO)>0){ if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest(); BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney(); String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney)); BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract); planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney(); BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney)); BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2); planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails); loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
} }
} }
} }
}
if ("资金占用费".equals(v.getReceivablesName())) { if ("资金占用费".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf2.setSummary("***扣回车辆再次销售款"); voucherResultDetailDtoDf2.setSummary(customerNumber+"扣回车辆再次销售款");
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03"); voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门 //核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoDf2.setDimensionCustom(customerNumber); voucherResultDetailDtoDf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf2.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf2.setCredit(v.getSubscriptionMoney());
list2.add(voucherResultDetailDtoDf2); list2.add(voucherResultDetailDtoDf2);
} }
if ("预计资方结清费用".equals(v.getReceivablesName())) { if ("预计资方结清费用".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto();
all2 = all2.add(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf3.setSummary("**扣回车辆再次销售-资方结清费用"); voucherResultDetailDtoDf3.setSummary(planDetails.getVinNo()+"扣回车辆再次销售-资方结清费用");
voucherResultDetailDtoDf3.setSubjectNo("1201.03.01"); voucherResultDetailDtoDf3.setSubjectNo("1201.03.01");
//核算部门 //核算部门
voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoDf3.setDimensionCustom(customerNumber); voucherResultDetailDtoDf3.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf3.setCredit(v.getSubscriptionMoney()); voucherResultDetailDtoDf3.setCredit(v.getSubscriptionMoney());
list2.add(voucherResultDetailDtoDf3); list2.add(voucherResultDetailDtoDf3);
} }
if ("停车费".equals(v.getReceivablesName())) { if ("停车费".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.subtract(new BigDecimal(v.getSubscriptionMoney())); all2 = all2.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoJf2.setSummary("**扣回车辆再次销售-停车费"); voucherResultDetailDtoJf2.setSummary(customerNumber+"扣回车辆再次销售-停车费");
voucherResultDetailDtoJf2.setSubjectNo("6601.32.02"); voucherResultDetailDtoJf2.setSubjectNo("6601.32.02");
//核算部门 //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode());
//核算客户 //核算客户
voucherResultDetailDtoJf2.setDimensionCustom(customerNumber); voucherResultDetailDtoJf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoJf2.setDebit(new BigDecimal(v.getSubscriptionMoney()).negate().toString()); voucherResultDetailDtoJf2.setDebit(new BigDecimal(v.getSubscriptionMoney()).negate().toString());
list2.add(voucherResultDetailDtoJf2); list2.add(voucherResultDetailDtoJf2);
} }
if ("车辆违章费用".equals(v.getReceivablesName()) || "年检费".equals(v.getReceivablesName()) || if ("车辆违章费用".equals(v.getReceivablesName()) || "年检费".equals(v.getReceivablesName()) ||
"保险费".equals(v.getReceivablesName()) || "过户费".equals(v.getReceivablesName()) "保险费".equals(v.getReceivablesName()) || "过户费".equals(v.getReceivablesName()) || "其他费用".equals(v.getReceivablesName())
) { ) {
otherMoney = otherMoney.add(new BigDecimal(v.getSubscriptionMoney())); otherMoney = otherMoney.add(new BigDecimal(v.getSubscriptionMoney()));
}
} }
} }
} }
//客户赎回收款 //客户赎回收款
if (all.compareTo(BigDecimal.ZERO) > 0) { if (all.compareTo(BigDecimal.ZERO) > 0) {
@ -4988,8 +5288,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (otherMoney.compareTo(BigDecimal.ZERO) > 0) { if (otherMoney.compareTo(BigDecimal.ZERO) > 0) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto(); Voucher.VoucherResultDetailDto voucherResultDetailDtoJf2 = new Voucher.VoucherResultDetailDto();
all2 = all2.subtract(otherMoney); all2 = all2.add(otherMoney);
voucherResultDetailDtoJf2.setSummary("**扣回车辆再次销售-费用(违章、年检、保险、过户)"); voucherResultDetailDtoJf2.setSummary(customerNumber+"扣回车辆再次销售-费用(违章、年检、保险、过户)");
voucherResultDetailDtoJf2.setSubjectNo("1133.10.00"); voucherResultDetailDtoJf2.setSubjectNo("1133.10.00");
//核算部门 //核算部门
voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode()); voucherResultDetailDtoJf2.setDimensionDept(deptVo.getOrgCode());
@ -5004,7 +5304,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucherResultDetailDtoJf.setBankAccount(finalConfirmation.getCollectionBankNum()); voucherResultDetailDtoJf.setBankAccount(finalConfirmation.getCollectionBankNum());
} }
voucherResultDetailDtoJf.setSubjectNo(payType); voucherResultDetailDtoJf.setSubjectNo(payType);
voucherResultDetailDtoJf.setSummary("***扣回车辆再次销售-收款" + "(" + collectionDate + ")"); voucherResultDetailDtoJf.setSummary("收款" +finalConfirmation.getPayerName()+ "(" + collectionDate + ")");
voucherResultDetailDtoJf.setDebit(String.valueOf(all2)); voucherResultDetailDtoJf.setDebit(String.valueOf(all2));
list2.add(voucherResultDetailDtoJf); list2.add(voucherResultDetailDtoJf);
} }
@ -5013,7 +5313,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucher.setResultDetails(list); voucher.setResultDetails(list);
finKingDeeFeignRest.saveVoucher(voucher); finKingDeeFeignRest.saveVoucher(voucher);
} }
if (list2.isEmpty()) { if (!list2.isEmpty()) {
voucher.setResultDetails(list2); voucher.setResultDetails(list2);
finKingDeeFeignRest.saveVoucher(voucher); finKingDeeFeignRest.saveVoucher(voucher);
} }
@ -6316,7 +6616,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
for (AppFinSelectedReceivablesDetailedRskDto v : finSelectedReceivablesDetailedDtos) { for (AppFinSelectedReceivablesDetailedRskDto v : finSelectedReceivablesDetailedDtos) {
String loanContractNo = v.getLoanContractNo(); String loanContractNo = v.getLoanContractNo();
String vinNo = v.getVin(); String vinNo = v.getVin();
if (!v.getProjectName().equals("远程控制费")) { if (v.getProjectName().equals("月还") || "资方逾期利息".equals(v.getProjectName())) {
List<AppFinUncollectedReceivablesDetailedRskVo> ruleList = finUncollectedReceivablesDetailedJRService.getRskPaymentDetailsListForRule(loanContractNo, vinNo, finCollectionConfirmation.getUseOrgSid(), finCollectionConfirmation.getPurchaseSystemSid()); List<AppFinUncollectedReceivablesDetailedRskVo> ruleList = finUncollectedReceivablesDetailedJRService.getRskPaymentDetailsListForRule(loanContractNo, vinNo, finCollectionConfirmation.getUseOrgSid(), finCollectionConfirmation.getPurchaseSystemSid());
if (!ruleList.isEmpty()) { if (!ruleList.isEmpty()) {
for (AppFinUncollectedReceivablesDetailedRskVo r : ruleList) { for (AppFinUncollectedReceivablesDetailedRskVo r : ruleList) {

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.java

@ -45,4 +45,6 @@ public interface LoanOutboundApplyMapper extends BaseMapper<LoanOutboundApply> {
int updateLedgerStockStateBySid(@Param("key") String key, @Param("value") String value, @Param("date") String date, @Param("ledgerSid") String ledgerSid); int updateLedgerStockStateBySid(@Param("key") String key, @Param("value") String value, @Param("date") String date, @Param("ledgerSid") String ledgerSid);
String selectByBusVinSid(String busVinSid); String selectByBusVinSid(String busVinSid);
LoanOutboundApply selectByApplySid(String sid);
} }

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyMapper.xml

@ -205,4 +205,8 @@
se.receivablesSid in (select sid from anrui_riskcenter.loan_repayment_plan_details where busVinSid = #{busVinSid}) se.receivablesSid in (select sid from anrui_riskcenter.loan_repayment_plan_details where busVinSid = #{busVinSid})
AND se.auditState = '3' and se.receivablesName in('月还','预计资方结清费用') AND se.auditState = '3' and se.receivablesName in('月还','预计资方结清费用')
</select> </select>
<select id="selectByApplySid" resultType="com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApply">
select * from loan_out_bound_apply where applySid = #{sid}
</select>
</mapper> </mapper>

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanoutboundapply/LoanOutboundApplyService.java

@ -1659,4 +1659,8 @@ public class LoanOutboundApplyService extends MybatisBaseService<LoanOutboundApp
WordUtils.doc2pdf(wordPath, targetPath, pdfName, userName); WordUtils.doc2pdf(wordPath, targetPath, pdfName, userName);
return "/template/" + dateStr + "/" + pdfName; return "/template/" + dateStr + "/" + pdfName;
} }
public LoanOutboundApply selectByApplySid(String sid) {
return baseMapper.selectByApplySid(sid);
}
} }

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java

@ -26,4 +26,6 @@ public interface LoanReturnVehLedgerMapper extends BaseMapper<LoanReturnVehLedge
IPage<LoanReturnVehLedgerVo> selectPageVo(IPage<LoanReturnVehLedger> page, @Param(Constants.WRAPPER) QueryWrapper<LoanReturnVehLedgerQuery> qw); IPage<LoanReturnVehLedgerVo> selectPageVo(IPage<LoanReturnVehLedger> page, @Param(Constants.WRAPPER) QueryWrapper<LoanReturnVehLedgerQuery> qw);
LoanReturnVehLedger selectByPSid(String sid); LoanReturnVehLedger selectByPSid(String sid);
LoanReturnVehLedger selVehLedgerBySid(String ledgerSid);
} }

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml

@ -40,4 +40,10 @@
from loan_return_veh_ledger from loan_return_veh_ledger
where pSid = #{sid} where pSid = #{sid}
</select> </select>
<select id="selVehLedgerBySid" resultType="com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger">
select *
from loan_return_veh_ledger
where sid = #{ledgerSid}
</select>
</mapper> </mapper>

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java

@ -264,4 +264,8 @@ public class LoanReturnVehLedgerService extends MybatisBaseService<LoanReturnVeh
public LoanReturnVehLedger selectByPSid(String sid) { public LoanReturnVehLedger selectByPSid(String sid) {
return baseMapper.selectByPSid(sid); return baseMapper.selectByPSid(sid);
} }
public LoanReturnVehLedger selVehLedgerBySid(String ledgerSid) {
return baseMapper.selVehLedgerBySid(ledgerSid);
}
} }

105
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java

@ -4,7 +4,12 @@ import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer; import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.crm.api.crmcustomertemp.CustomerSecondSalesDto; import com.yxt.anrui.crm.api.crmcustomertemp.CustomerSecondSalesDto;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApply;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.LoanOutboundApplyDto;
import com.yxt.anrui.riskcenter.api.loanoutboundapply.OutboundVinListDto;
import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger;
import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply;
import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost;
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.FileQuery; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.FileQuery;
@ -12,6 +17,9 @@ import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySale
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto;
import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo; import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo;
import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo;
import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.SalesVehVo;
import com.yxt.anrui.riskcenter.biz.loanoutboundapply.LoanOutboundApplyService;
import com.yxt.anrui.riskcenter.biz.loanreturnvehledger.LoanReturnVehLedgerService;
import com.yxt.anrui.riskcenter.biz.loansecondarysalesapply.LoanSecondarySalesApplyService; import com.yxt.anrui.riskcenter.biz.loansecondarysalesapply.LoanSecondarySalesApplyService;
import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostMapper; import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostMapper;
import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostService; import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostService;
@ -44,6 +52,10 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
private LoanSecondarySalesCostMapper loanSecondarySalesCostMapper; private LoanSecondarySalesCostMapper loanSecondarySalesCostMapper;
@Autowired @Autowired
private FileUploadComponent fileUploadComponent; private FileUploadComponent fileUploadComponent;
@Autowired
private LoanOutboundApplyService loanOutboundApplyService;
@Autowired
private LoanReturnVehLedgerService loanReturnVehLedgerService;
public ResultBean saveSalesCustomer(LoanSecondarySalesCustomerDto dto) { public ResultBean saveSalesCustomer(LoanSecondarySalesCustomerDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
@ -106,6 +118,10 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
} }
baseMapper.updateById(loanSecondarySalesCustomer); baseMapper.updateById(loanSecondarySalesCustomer);
} }
if(loanSecondarySalesApply != null){
pushVehOutBound(loanSecondarySalesApply);
}
return rb.success(); return rb.success();
} }
@ -132,30 +148,77 @@ public class LoanSecondarySalesCustomerService extends MybatisBaseService<LoanSe
salesInitVo.setSaleDate(loanSecondarySalesApply.getCloseDate()); salesInitVo.setSaleDate(loanSecondarySalesApply.getCloseDate());
LoanSecondarySalesCost loanSecondarySalesCost = loanSecondarySalesCostMapper.selectMainSid(sid); LoanSecondarySalesCost loanSecondarySalesCost = loanSecondarySalesCostMapper.selectMainSid(sid);
salesInitVo.setSalePrice(loanSecondarySalesCost.getVehPrice().toString()); salesInitVo.setSalePrice(loanSecondarySalesCost.getVehPrice().toString());
String contractFiles = loanSecondarySalesCustomer.getContractFiles(); if(loanSecondarySalesCustomer != null){
String otherFiles = loanSecondarySalesCustomer.getOtherFiles(); String contractFiles = loanSecondarySalesCustomer.getContractFiles();
if(StringUtils.isNotBlank(contractFiles)){ String otherFiles = loanSecondarySalesCustomer.getOtherFiles();
List<FileQuery> contractFilesList = Arrays.stream(contractFiles.split(",")) if(StringUtils.isNotBlank(contractFiles)){
.map(c -> { List<FileQuery> contractFilesList = Arrays.stream(contractFiles.split(","))
FileQuery f = new FileQuery(); .map(c -> {
f.setUrl(fileUploadComponent.getUrlPrefix() + c); FileQuery f = new FileQuery();
return f; f.setUrl(fileUploadComponent.getUrlPrefix() + c);
}) return f;
.collect(Collectors.toList()); })
.collect(Collectors.toList());
salesInitVo.setContractFiles(contractFilesList); salesInitVo.setContractFiles(contractFilesList);
} }
if(StringUtils.isNotBlank(otherFiles)){ if(StringUtils.isNotBlank(otherFiles)){
List<FileQuery> otherFileList = Arrays.stream(otherFiles.split(",")) List<FileQuery> otherFileList = Arrays.stream(otherFiles.split(","))
.map(c -> { .map(c -> {
FileQuery f = new FileQuery(); FileQuery f = new FileQuery();
f.setUrl(fileUploadComponent.getUrlPrefix() + c); f.setUrl(fileUploadComponent.getUrlPrefix() + c);
return f; return f;
}) })
.collect(Collectors.toList()); .collect(Collectors.toList());
salesInitVo.setOtherFiles(otherFileList); salesInitVo.setOtherFiles(otherFileList);
}
} }
return rb.success().setData(salesInitVo); return rb.success().setData(salesInitVo);
} }
private void pushVehOutBound(LoanSecondarySalesApply loanSecondarySalesApply) {
LoanOutboundApply loanOutboundApply = loanOutboundApplyService.selectByApplySid(loanSecondarySalesApply.getSid());
if(loanOutboundApply == null){
LoanOutboundApplyDto dto = new LoanOutboundApplyDto();
List<OutboundVinListDto> vinList = new ArrayList<>();
BeanUtil.copyProperties(loanSecondarySalesApply, dto);
dto.setApplySid(loanSecondarySalesApply.getSid());
dto.setBorrowerName(loanSecondarySalesApply.getLoanName());
dto.setBorrowerSid(loanSecondarySalesApply.getLoanSid());
dto.setCustomer(loanSecondarySalesApply.getCustomerName());
dto.setDisposalKey("03");
dto.setDisposal("二次销售");
if (org.apache.commons.lang3.StringUtils.isNotBlank(loanSecondarySalesApply.getCustomerSid())) {
dto.setNewCustomerSid(loanSecondarySalesApply.getCustomerSid());
CrmCustomerTempVo customerTempVo = crmCustomerTempFeign.fetchSid(loanSecondarySalesApply.getCustomerSid()).getData();
if (null != customerTempVo) {
if (StringUtils.isNotBlank(customerTempVo.getMobile())) {
dto.setPhoneNum(customerTempVo.getMobile());
}
}
}
if (StringUtils.isNotBlank(loanSecondarySalesApply.getCustomerName())) {
dto.setNewCustomer(loanSecondarySalesApply.getCustomerName());
}
List<SalesVehVo> vinLists = loanSecondarySalesVehService.selByMainSid(loanSecondarySalesApply.getSid());
if (!vinLists.isEmpty()) {
vinLists.forEach(v -> {
OutboundVinListDto outboundVinListDto = new OutboundVinListDto();
BeanUtil.copyProperties(v, outboundVinListDto);
LoanReturnVehLedger loanReturnVehLedger = loanReturnVehLedgerService.selVehLedgerBySid(v.getLedgerSid());
if (null != loanReturnVehLedger) {
if (StringUtils.isNotBlank(loanReturnVehLedger.getLocation())) {
outboundVinListDto.setLocation(loanReturnVehLedger.getLocation());
}
}
vinList.add(outboundVinListDto);
});
}
dto.setVinList(vinList);
loanOutboundApplyService.saveOutbound(dto);
}
}
} }

Loading…
Cancel
Save