|
|
@ -757,6 +757,8 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
baseMapper.updateBus(loanSettleApply.getBusVinSid(), "1"); |
|
|
|
//推送资方结清款到出纳代付款列表
|
|
|
|
pushBankSettlePrice(loanSettleApply); |
|
|
|
//设置认款月还为已转付
|
|
|
|
updatePaymentStateByBusVinSid(loanSettleApply.getBusVinSid()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -883,8 +885,8 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
otherAmountMoney = otherAmount.subtract(otherAmountJM); |
|
|
|
FinUncollectedReceivablesDetailedJR jr4 = finUncollectedReceivablesDetailedJRFeign.getUnJrByPayCostTitleKeyAndBusSid("011", planDetailsSid).getData(); |
|
|
|
if (null != jr4) { |
|
|
|
jr4.setReveivableMoney(otherAmountMoney); |
|
|
|
updateList.add(jr4); |
|
|
|
jr4.setReveivableMoney(otherAmountMoney); |
|
|
|
updateList.add(jr4); |
|
|
|
} else { |
|
|
|
if (otherAmountMoney.compareTo(BigDecimal.ZERO) > 0) { |
|
|
|
//公司其他费用应收
|
|
|
@ -923,8 +925,6 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
String busVinSid = loanSettleApply.getBusVinSid(); |
|
|
|
List<LoanRepaymentHistory> histories = new ArrayList<>();//还款记录
|
|
|
|
List<FinSelectedReceivablesDetailed> selectList = new ArrayList<>(); |
|
|
|
List<LoanRepaymentPlanDetails> payments = new ArrayList<>(); //消减垫款金额列表
|
|
|
|
List<LoanRepaymentPlanDetails> yqlx = new ArrayList<>(); //消减逾期利息列表
|
|
|
|
LoanRepaymentPlanDetails planDetails = baseMapper.selectByBusVinSidAndDesc(loanSettleApply.getBusVinSid()); |
|
|
|
String scheduleSid = planDetails.getScheduleSid(); |
|
|
|
LoanRepaymentSchedule schedule = loanRepaymentScheduleService.fetchBySid(scheduleSid); |
|
|
@ -964,7 +964,6 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
for (PlanNoReturnMoney m : p) { |
|
|
|
if (deposit.compareTo(BigDecimal.ZERO) > 0) { |
|
|
|
BigDecimal money = new BigDecimal(m.getMoney()); |
|
|
|
BigDecimal mm = BigDecimal.ZERO; |
|
|
|
String sid = m.getSid(); |
|
|
|
String mSid = m.getMSid(); |
|
|
|
LoanRepaymentHistory history = new LoanRepaymentHistory(); |
|
|
@ -981,26 +980,14 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
history.setPlanDetailSid(sid); |
|
|
|
history.setScheduleSid(mSid); |
|
|
|
if (deposit.compareTo(money) >= 0) { |
|
|
|
mm = money; |
|
|
|
history.setActualMoney(money); |
|
|
|
histories.add(history); |
|
|
|
deposit = deposit.subtract(money); |
|
|
|
} else { |
|
|
|
mm = deposit; |
|
|
|
history.setActualMoney(deposit); |
|
|
|
histories.add(history); |
|
|
|
deposit = BigDecimal.ZERO; |
|
|
|
} |
|
|
|
LoanRepaymentPlanDetails pd = loanRepaymentPlanDetailsService.fetchBySid(sid); |
|
|
|
if (null != pd.getPaymentMoney()) { |
|
|
|
BigDecimal paymentMoney = pd.getPaymentMoney(); |
|
|
|
if (mm.compareTo(paymentMoney) >= 0) { |
|
|
|
pd.setPaymentMoney(new BigDecimal("0")); |
|
|
|
} else { |
|
|
|
pd.setPaymentMoney(paymentMoney.subtract(mm)); |
|
|
|
} |
|
|
|
payments.add(pd); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -1013,21 +1000,17 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
for (PlanNoReturnMoney m : p) { |
|
|
|
if (deposit.compareTo(BigDecimal.ZERO) > 0) { |
|
|
|
BigDecimal money = new BigDecimal(m.getMoney()); |
|
|
|
BigDecimal mm = BigDecimal.ZERO; |
|
|
|
String sid = m.getSid(); |
|
|
|
LoanRepaymentPlanDetails pd = loanRepaymentPlanDetailsService.fetchBySid(sid); |
|
|
|
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed(); |
|
|
|
fin.setCreateBySid(userSid); |
|
|
|
fin.setRemarks("结转"); |
|
|
|
fin.setVIN(pd.getVinNo()); |
|
|
|
fin.setUseOrgSid(pd.getUseOrgSid()); |
|
|
|
fin.setVIN(planDetails.getVinNo()); |
|
|
|
fin.setUseOrgSid(planDetails.getUseOrgSid()); |
|
|
|
fin.setReceivablesName("资方逾期利息"); |
|
|
|
if (deposit.compareTo(money) >= 0) { |
|
|
|
mm = money; |
|
|
|
fin.setSubscriptionMoney(money); |
|
|
|
deposit = deposit.subtract(money); |
|
|
|
} else { |
|
|
|
mm = deposit; |
|
|
|
fin.setSubscriptionMoney(deposit); |
|
|
|
deposit = BigDecimal.ZERO; |
|
|
|
} |
|
|
@ -1036,18 +1019,9 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
fin.setAuditDate(DateUtil.today()); |
|
|
|
fin.setReceivablesSid(m.getJrSid()); |
|
|
|
fin.setKxState("01"); |
|
|
|
fin.setUseOrgName(pd.getUseOrgName()); |
|
|
|
fin.setUseOrgName(planDetails.getUseOrgName()); |
|
|
|
fin.setOrgSidPath(loanSettleApply.getOrgSidPath()); |
|
|
|
selectList.add(fin); |
|
|
|
if (null != pd.getPaymentInterest()) { |
|
|
|
BigDecimal paymentInterest = pd.getPaymentInterest(); |
|
|
|
if (mm.compareTo(paymentInterest) >= 0) { |
|
|
|
pd.setPaymentInterest(new BigDecimal("0")); |
|
|
|
} else { |
|
|
|
pd.setPaymentInterest(paymentInterest.subtract(mm)); |
|
|
|
} |
|
|
|
yqlx.add(pd); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -1204,12 +1178,6 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
if (histories.size() > 0 && !histories.isEmpty()) { |
|
|
|
loanRepaymentHistoryService.saveList(histories); |
|
|
|
} |
|
|
|
if (payments.size() > 0 && !payments.isEmpty()) { |
|
|
|
loanRepaymentPlanDetailsService.updateList(payments); |
|
|
|
} |
|
|
|
if (yqlx.size() > 0 && !yqlx.isEmpty()) { |
|
|
|
loanRepaymentPlanDetailsService.updateList(yqlx); |
|
|
|
} |
|
|
|
selectList.removeAll(Collections.singleton(null)); |
|
|
|
if (selectList.size() > 0 && !selectList.isEmpty()) { |
|
|
|
ResultBean resultBean = finSelectedReceivablesDetailedFeign.saveAll(selectList); |
|
|
@ -1222,8 +1190,6 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
String busVinSid = loanSettleApply.getBusVinSid(); |
|
|
|
List<LoanRepaymentHistory> histories = new ArrayList<>();//还款记录
|
|
|
|
List<FinSelectedReceivablesDetailed> selectList = new ArrayList<>(); |
|
|
|
List<LoanRepaymentPlanDetails> payments = new ArrayList<>(); //消减垫款金额列表
|
|
|
|
List<LoanRepaymentPlanDetails> yqlx = new ArrayList<>(); //消减逾期利息列表
|
|
|
|
LoanRepaymentPlanDetails planDetails = baseMapper.selectByBusVinSidAndDesc(loanSettleApply.getBusVinSid()); |
|
|
|
String scheduleSid = planDetails.getScheduleSid(); |
|
|
|
LoanRepaymentSchedule schedule = loanRepaymentScheduleService.fetchBySid(scheduleSid); |
|
|
@ -1277,12 +1243,6 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
history.setScheduleSid(mSid); |
|
|
|
history.setActualMoney(money); |
|
|
|
histories.add(history); |
|
|
|
LoanRepaymentPlanDetails pd = loanRepaymentPlanDetailsService.fetchBySid(sid); |
|
|
|
if (null != pd.getPaymentMoney()) { |
|
|
|
BigDecimal paymentMoney = pd.getPaymentMoney(); |
|
|
|
pd.setPaymentMoney(new BigDecimal("0")); |
|
|
|
payments.add(pd); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
//垫资方逾期利息
|
|
|
@ -1292,12 +1252,11 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
for (PlanNoReturnMoney m : p2) { |
|
|
|
BigDecimal money = new BigDecimal(m.getMoney()); |
|
|
|
String sid = m.getSid(); |
|
|
|
LoanRepaymentPlanDetails pd = loanRepaymentPlanDetailsService.fetchBySid(sid); |
|
|
|
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed(); |
|
|
|
fin.setCreateBySid(userSid); |
|
|
|
fin.setRemarks("减免"); |
|
|
|
fin.setVIN(pd.getVinNo()); |
|
|
|
fin.setUseOrgSid(pd.getUseOrgSid()); |
|
|
|
fin.setVIN(planDetails.getVinNo()); |
|
|
|
fin.setUseOrgSid(planDetails.getUseOrgSid()); |
|
|
|
fin.setReceivablesName("资方逾期利息"); |
|
|
|
fin.setSubscriptionMoney(money); |
|
|
|
fin.setSubscriptionDate(DateUtil.today()); |
|
|
@ -1305,14 +1264,9 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
fin.setAuditDate(DateUtil.today()); |
|
|
|
fin.setReceivablesSid(m.getJrSid()); |
|
|
|
fin.setKxState("01"); |
|
|
|
fin.setUseOrgName(pd.getUseOrgName()); |
|
|
|
fin.setUseOrgName(planDetails.getUseOrgName()); |
|
|
|
fin.setOrgSidPath(loanSettleApply.getOrgSidPath()); |
|
|
|
selectList.add(fin); |
|
|
|
if (null != pd.getPaymentInterest()) { |
|
|
|
BigDecimal paymentInterest = pd.getPaymentInterest(); |
|
|
|
pd.setPaymentInterest(new BigDecimal("0")); |
|
|
|
yqlx.add(pd); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
//资方逾期利息
|
|
|
@ -1407,22 +1361,68 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
fin.setOrgSidPath(loanSettleApply.getOrgSidPath()); |
|
|
|
selectList.add(fin); |
|
|
|
} |
|
|
|
if (histories.size() > 0 && !histories.isEmpty()) { |
|
|
|
loanRepaymentHistoryService.saveList(histories); |
|
|
|
//资方退还垫款应收
|
|
|
|
List<PlanNoReturnMoney> p7 = baseMapper.selNoReturnJrMoneyByBusVinSidAndKeyDesc(busVinSid, "007"); |
|
|
|
p7.removeAll(Collections.singleton(null)); |
|
|
|
if (!p7.isEmpty() && p7.size() > 0) { |
|
|
|
for (PlanNoReturnMoney m : p7) { |
|
|
|
BigDecimal money = new BigDecimal(m.getMoney()); |
|
|
|
String sid = m.getSid(); |
|
|
|
LoanRepaymentPlanDetails pd = loanRepaymentPlanDetailsService.fetchBySid(sid); |
|
|
|
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed(); |
|
|
|
fin.setCreateBySid(userSid); |
|
|
|
fin.setRemarks("减免"); |
|
|
|
fin.setVIN(pd.getVinNo()); |
|
|
|
fin.setUseOrgSid(pd.getUseOrgSid()); |
|
|
|
fin.setReceivablesName("资方退还垫款"); |
|
|
|
fin.setSubscriptionMoney(money); |
|
|
|
fin.setSubscriptionDate(DateUtil.today()); |
|
|
|
fin.setAuditState(3); |
|
|
|
fin.setAuditDate(DateUtil.today()); |
|
|
|
fin.setReceivablesSid(m.getJrSid()); |
|
|
|
fin.setKxState("01"); |
|
|
|
fin.setUseOrgName(pd.getUseOrgName()); |
|
|
|
fin.setOrgSidPath(loanSettleApply.getOrgSidPath()); |
|
|
|
selectList.add(fin); |
|
|
|
} |
|
|
|
} |
|
|
|
if (payments.size() > 0 && !payments.isEmpty()) { |
|
|
|
loanRepaymentPlanDetailsService.updateList(payments); |
|
|
|
//对应的垫款金额、资方逾期利息设置0
|
|
|
|
List<LoanRepaymentPlanDetails> ps = baseMapper.selectPlanListByBusVinSid(busVinSid); |
|
|
|
ps.removeAll(Collections.singleton(null)); |
|
|
|
Set<String> set = new HashSet<>(); |
|
|
|
if (!ps.isEmpty() && ps.size() > 0) { |
|
|
|
for (LoanRepaymentPlanDetails pp : ps) { |
|
|
|
if (pp.getPaymentMoney() != null) { |
|
|
|
if (pp.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) { |
|
|
|
|
|
|
|
} else { |
|
|
|
set.add(pp.getSid()); |
|
|
|
} |
|
|
|
} |
|
|
|
if (pp.getPaymentInterest() != null) { |
|
|
|
if (pp.getPaymentInterest().compareTo(BigDecimal.ZERO) == 0) { |
|
|
|
|
|
|
|
} else { |
|
|
|
set.add(pp.getSid()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (yqlx.size() > 0 && !yqlx.isEmpty()) { |
|
|
|
loanRepaymentPlanDetailsService.updateList(yqlx); |
|
|
|
List<String> sids = new ArrayList<>(set); |
|
|
|
if (!sids.isEmpty() && sids.size() > 0) { |
|
|
|
loanRepaymentPlanDetailsService.updatePaymentMoneyBySids(sids); |
|
|
|
} |
|
|
|
if (histories.size() > 0 && !histories.isEmpty()) { |
|
|
|
loanRepaymentHistoryService.saveList(histories); |
|
|
|
} |
|
|
|
selectList.removeAll(Collections.singleton(null)); |
|
|
|
if (selectList.size() > 0 && !selectList.isEmpty()) { |
|
|
|
ResultBean resultBean = finSelectedReceivablesDetailedFeign.saveAll(selectList); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//--------------------资方结清款到出纳代付款列表------------------
|
|
|
|
private void pushBankSettlePrice(LoanSettleApply loanSettleApply) { |
|
|
|
private void pushBankSettlePrice(LoanSettleApply loanSettleApply) { |
|
|
|
if (StringUtils.isBlank(loanSettleApply.getBusSid())) { |
|
|
|
LoanSettleBankCost bankCost = loanSettleBankCostService.selectByMainSid(loanSettleApply.getSid()); |
|
|
|
if (null != bankCost) { |
|
|
@ -2223,7 +2223,7 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
} else if (loanSettleBankCost.getTopping() == 0) { |
|
|
|
settleApplyAppVo.setTopping("否"); |
|
|
|
} |
|
|
|
if ( null != loanSettleBankCost.getLoanDeposit()){ |
|
|
|
if (null != loanSettleBankCost.getLoanDeposit()) { |
|
|
|
settleApplyAppVo.setLoanDepositBank(loanSettleBankCost.getLoanDeposit().toString()); |
|
|
|
} |
|
|
|
if (null != loanSettleBankCost.getPrice()) { |
|
|
@ -2407,6 +2407,8 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
baseMapper.updateBus(loanSettleApply.getBusVinSid(), "1"); |
|
|
|
//推送资方结清款到出纳代付款列表
|
|
|
|
pushBankSettlePrice(loanSettleApply); |
|
|
|
//设置认款月还为已转付
|
|
|
|
updatePaymentStateByBusVinSid(loanSettleApply.getBusVinSid()); |
|
|
|
return rb.success(); |
|
|
|
} |
|
|
|
|
|
|
@ -2419,9 +2421,9 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
|
|
|
Date closeDate = loanSettleApply.getCloseDate(); |
|
|
|
String formatDate = sdf.format(closeDate); |
|
|
|
String jMoney = baseMapper.selJrMoneyByBusVinSidAndCloseDate(busVinSid,formatDate); |
|
|
|
String jMoney = baseMapper.selJrMoneyByBusVinSidAndCloseDate(busVinSid, formatDate); |
|
|
|
jrMoney = new BigDecimal(jMoney); |
|
|
|
String dMoney = baseMapper.selDueMoneyByBusVinSidAndCloseDate(busVinSid,formatDate); |
|
|
|
String dMoney = baseMapper.selDueMoneyByBusVinSidAndCloseDate(busVinSid, formatDate); |
|
|
|
dueMoney = new BigDecimal(dMoney); |
|
|
|
sumMoney = jrMoney.add(dueMoney); |
|
|
|
LoanSettleCompanyReduction reduction = loanSettleCompanyReductionService.selectByMainSid(loanSettleApply.getSid()); |
|
|
@ -2435,4 +2437,8 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa |
|
|
|
} |
|
|
|
return isSettle; |
|
|
|
} |
|
|
|
|
|
|
|
public void updatePaymentStateByBusVinSid(String busVinSid) { |
|
|
|
baseMapper.updatePaymentStateByBusVinSid(busVinSid); |
|
|
|
} |
|
|
|
} |
|
|
|