Browse Source

完善结清审批

master
fanzongzhe 9 months ago
parent
commit
7e75478985
  1. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  2. 18
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  3. 4
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansettleapply/LoanSettleApplyFeign.java
  4. 4
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansettleapply/LoanSettleApplyRest.java
  5. 231
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansettleapply/LoanSettleApplyService.java

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

@ -4141,7 +4141,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
if (null != planDetails) {
ResultBean<SettleFinVo> finSettleVo = loanSettleApplyFeign.getFinSettleVo(planDetails.getBusVinSid(), v.getReceivablesName());
ResultBean<SettleFinVo> finSettleVo = loanSettleApplyFeign.getFinSettleVo(planDetails.getBusVinSid(), v.getReceivablesName(),v.getSubscriptionMoney());
if (finSettleVo.getSuccess()) {
SettleFinVo finVo = finSettleVo.getData();
voucherDetail.setPayCostTitleValue(v.getReceivablesName());

18
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -298,7 +298,9 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto1.setDimensionDept(voucherDetail.getDeptCode());
dto1.setDimensionCustom(voucherDetail.getCustomerCode());
dto2.setDimensionDept(voucherDetail.getDeptCode());
dto2.setDimensionCustom(voucherDetail.getCustomerCode());
if (!voucherDetail.getSceneCode().equals("资金占用费减免")) {
dto2.setDimensionCustom(voucherDetail.getCustomerCode());
}
resultDetails.add(dto1);
resultDetails.add(dto2);
}
@ -513,6 +515,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
StringBuffer sb = new StringBuffer();
Set<String> setString = new HashSet<>();
BigDecimal amountAll = new BigDecimal(0);
BigDecimal decimal = BigDecimal.ZERO;
int check = 0;
Date date = null;
List<Voucher.VoucherResultDetailDto> resultDetails = new ArrayList<>();
@ -538,7 +541,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
if (StringUtils.isNotBlank(voucherDetail.getBankName())) {
DictCommonVo dictCommonVo2 = dictCommonFeign.selectBykey(voucherDetail.getBankName(), "investorsCode").getData();
if (null != dictCommonVo2) {
bankCode = dictCommonVo.getDictValue();
bankCode = dictCommonVo2.getDictValue();
}
}
String payCostTitleValue = voucherDetail.getPayCostTitleValue();
@ -564,6 +567,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto2.setDimensionCustom(voucherDetail.getCustomerCode());
dto2.setCredit(String.valueOf(voucherDetail.getAmount()));
resultDetails.add(dto2);
decimal = decimal.add(voucherDetail.getAmount());
} else if (payCostTitleValue.equals("资金占用费")) {
setString.add("累欠");
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
@ -575,6 +579,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
}
dto2.setCredit(String.valueOf(voucherDetail.getAmount()));
resultDetails.add(dto2);
decimal = decimal.add(voucherDetail.getAmount());
} else if (payCostTitleValue.equals("结清时资方逾期利息")) {
setString.add("结清款");
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
@ -584,6 +589,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto2.setDimensionCustom(voucherDetail.getCustomerCode());
dto2.setCredit(String.valueOf(voucherDetail.getAmount()));
resultDetails.add(dto2);
decimal = decimal.add(voucherDetail.getAmount());
} else if (payCostTitleValue.equals("名义价")) {
setString.add("结清款");
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
@ -600,7 +606,9 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto3.setDimensionDept(voucherDetail.getDeptCode());
dto3.setCredit(String.valueOf(voucherDetail.getBalance()));
resultDetails.add(dto3);
decimal = decimal.add(voucherDetail.getBalance());
}
decimal = decimal.add(voucherDetail.getSubtrahend());
} else if (payCostTitleValue.equals("合同违约金")) {
setString.add("结清款");
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
@ -617,7 +625,9 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto3.setDimensionDept(voucherDetail.getDeptCode());
dto3.setCredit(String.valueOf(voucherDetail.getBalance()));
resultDetails.add(dto3);
decimal = decimal.add(voucherDetail.getBalance());
}
decimal = decimal.add(voucherDetail.getSubtrahend());
} else if (payCostTitleValue.equals("其他费用")) {
setString.add("结清款");
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
@ -635,7 +645,9 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
dto3.setDimensionCustom(voucherDetail.getCustomerCode());
dto3.setCredit(String.valueOf(voucherDetail.getBalance()));
resultDetails.add(dto3);
decimal = decimal.add(voucherDetail.getBalance());
}
decimal = decimal.add(voucherDetail.getSubtrahend());
} else if (payCostTitleValue.equals("资方退还垫款")) {
check = 1;
Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方
@ -697,6 +709,8 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
}
newVoucher.setResultDetails(resultDetails);
}
System.out.println("借方 --" + amountAll);
System.out.println("贷方 --" + decimal);
log.info("FinKingDeeFeignRest-saveVoucher:{}", JSONObject.toJSONString(newVoucher));
return voucherService.saveVoucher(newVoucher);
}

4
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansettleapply/LoanSettleApplyFeign.java

@ -98,7 +98,9 @@ public interface LoanSettleApplyFeign {
@ApiOperation(value = "金融认款返回公司应收和资方应收")
@PostMapping(value = "/getFinSettleVo")
ResultBean<SettleFinVo> getFinSettleVo(@RequestParam("busVinSid") String busVinSid,@RequestParam("receivablesName") String receivablesName);
ResultBean<SettleFinVo> getFinSettleVo(@RequestParam("busVinSid") String busVinSid,
@RequestParam("receivablesName") String receivablesName,
@RequestParam("subscriptionMoney") String subscriptionMoney);
@ApiOperation(value = "推送资方结清款凭证")
@PostMapping(value = "/pushBankVoucher")

4
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansettleapply/LoanSettleApplyRest.java

@ -120,8 +120,8 @@ public class LoanSettleApplyRest implements LoanSettleApplyFeign {
}
@Override
public ResultBean<SettleFinVo> getFinSettleVo(String busVinSid, String receivablesName) {
return loanSettleApplyService.getFinSettleVo(busVinSid,receivablesName);
public ResultBean<SettleFinVo> getFinSettleVo(String busVinSid, String receivablesName,String subscriptionMoney) {
return loanSettleApplyService.getFinSettleVo(busVinSid,receivablesName,subscriptionMoney);
}
@Override

231
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansettleapply/LoanSettleApplyService.java

@ -1264,118 +1264,128 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa
//结转资方逾期利息
if (deposit.compareTo(BigDecimal.ZERO) > 0) {
PlanNoReturnMoney p = baseMapper.selectNoReturnMoneyByType(planDetailsSid, "结清时资方逾期利息");
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("结清时资方逾期利息");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
if (null != p) {
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("结清时资方逾期利息");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
}
}
//名义价
if (deposit.compareTo(BigDecimal.ZERO) > 0) {
PlanNoReturnMoney p = baseMapper.selectNoReturnMoneyByType(planDetailsSid, "名义价");
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("名义价");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
if (null != p) {
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("名义价");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
}
}
//合同违约金
if (deposit.compareTo(BigDecimal.ZERO) > 0) {
PlanNoReturnMoney p = baseMapper.selectNoReturnMoneyByType(planDetailsSid, "合同违约金");
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("合同违约金");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
if (null != p) {
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("合同违约金");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
}
}
//其他费用
if (deposit.compareTo(BigDecimal.ZERO) > 0) {
PlanNoReturnMoney p = baseMapper.selectNoReturnMoneyByType(planDetailsSid, "其他费用");
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("其他费用");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
if (null != p) {
BigDecimal money = new BigDecimal(p.getMoney());
FinSelectedReceivablesDetailed fin = new FinSelectedReceivablesDetailed();
fin.setCreateBySid(planDetails.getSalesUserSid());
fin.setRemarks("贷款保证金抵顶");
fin.setVIN(planDetails.getVinNo());
fin.setUseOrgSid(planDetails.getUseOrgSid());
fin.setReceivablesName("其他费用");
if (deposit.compareTo(money) >= 0) {
fin.setSubscriptionMoney(money);
deposit = deposit.subtract(money);
} else {
fin.setSubscriptionMoney(deposit);
deposit = BigDecimal.ZERO;
}
fin.setSubscriptionDate(DateUtil.today());
fin.setAuditState(3);
fin.setAuditDate(DateUtil.today());
fin.setReceivablesSid(p.getJrSid());
fin.setKxState("01");
fin.setPurchaseSystemSid("");
fin.setPurchaseSystemName("");
fin.setStaffUserSid("");
fin.setUseOrgName(planDetails.getUseOrgName());
fin.setOrgSidPath(loanSettleApply.getOrgSidPath());
selectList.add(fin);
}
}
//资金占用费
if (deposit.compareTo(BigDecimal.ZERO) > 0) {
@ -3134,34 +3144,17 @@ public class LoanSettleApplyService extends MybatisBaseService<LoanSettleApplyMa
return imgUrl;
}
public ResultBean<SettleFinVo> getFinSettleVo(String busVinSid, String receivablesName) {
public ResultBean<SettleFinVo> getFinSettleVo(String busVinSid, String receivablesName,String subscriptionMoney) {
ResultBean rb = ResultBean.fireFail();
SettleFinVo vo = new SettleFinVo();
LoanSettleApply apply = baseMapper.getFinSettleVo(busVinSid);
if (null != apply) {
String sid = apply.getSid();
BigDecimal amount = BigDecimal.ZERO;
BigDecimal amount = new BigDecimal(subscriptionMoney);
BigDecimal balance = BigDecimal.ZERO;
BigDecimal subtrahend = BigDecimal.ZERO;
LoanSettleCompanyCost companyCost = loanSettleCompanyCostService.selectByMainSid(sid);
LoanSettleBankCost bankCost = loanSettleBankCostService.selectByMainSid(sid);
if (null != companyCost) {
if (receivablesName.equals("名义价")) {
if (null != companyCost.getCompanyNominalPrice()) {
amount = companyCost.getCompanyNominalPrice();
}
}
if (receivablesName.equals("合同违约金")) {
if (null != companyCost.getContractLiquidated()) {
amount = companyCost.getContractLiquidated();
}
}
if (receivablesName.equals("其他费用")) {
if (null != companyCost.getCompanyOtherPrice()) {
amount = companyCost.getCompanyOtherPrice();
}
}
}
if (null != bankCost) {
if (receivablesName.equals("名义价")) {
if (null != bankCost.getBankNominalPrice()) {

Loading…
Cancel
Save