Browse Source

修改

master
dimengzhe 2 weeks ago
parent
commit
81d0fbc19c
  1. 239
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

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

@ -4727,11 +4727,13 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
List<Voucher.VoucherResultDetailDto> list3 = new ArrayList<>();
List<Voucher.VoucherResultDetailDto> list4 = new ArrayList<>();
List<Voucher.VoucherResultDetailDto> list5 = new ArrayList<>();
List<Voucher.VoucherResultDetailDto> list6 = new ArrayList<>();
BigDecimal all = BigDecimal.ZERO;//赎回
BigDecimal all2 = BigDecimal.ZERO;//二次销售
BigDecimal all3 = BigDecimal.ZERO;//亏损立案
BigDecimal all4 = BigDecimal.ZERO;//未交回立案
BigDecimal all5 = BigDecimal.ZERO;//执行
BigDecimal all6 = BigDecimal.ZERO;//执行
BigDecimal otherMoney = BigDecimal.ZERO;
String payType = "";
DictCommonVo dictCommonVo = dictCommonFeign.selectBykey(finalConfirmation.getCollectionTypeKey(), "payVoucherType").getData();
@ -6038,6 +6040,226 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
}
}
}else if("7".equals(busSalesOrderVehicle.getRiskState().toString())){//处置损失
if ("月还".equals(v.getReceivablesName()) || "资方逾期利息".equals(v.getReceivablesName())) {
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto();
all6 = all6.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf.setSummary(customerNumber+"亏损收款");
voucherResultDetailDtoDf.setSubjectNo("1201.03.04.01");
//核算部门
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf.setCredit(v.getSubscriptionMoney());
list6.add(voucherResultDetailDtoDf);
if("月还".equals(v.getReceivablesName())){
//推送间还认款记录
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setUpdateTime(new DateTime());
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{
if (null != planDetails.getPaymentInterest()) {
if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2);
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);
}
}
}
}
}
}
}
if("资金占用费".equals(v.getReceivablesName())){
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto();
all6 = all6.add(new BigDecimal(v.getSubscriptionMoney()));
voucherResultDetailDtoDf2.setSummary(customerNumber+"亏损收款");
voucherResultDetailDtoDf2.setSubjectNo("1201.02.03");
//核算部门
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDf2.setDimensionCustom(customerNumber);
voucherResultDetailDtoDf2.setCredit(v.getSubscriptionMoney());
list6.add(voucherResultDetailDtoDf2);
//------------------------资金占用费转收入
Voucher.VoucherResultDetailDto voucherResultDetailDtoJfZjzyf = new Voucher.VoucherResultDetailDto();
voucherResultDetailDtoJfZjzyf.setSummary("资金占用费转收入");
voucherResultDetailDtoJfZjzyf.setSubjectNo("2191.05.00");
//核算部门
voucherResultDetailDtoJfZjzyf.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoJfZjzyf.setDimensionCustom(customerNumber);
voucherResultDetailDtoJfZjzyf.setDebit(v.getSubscriptionMoney());
list6.add(voucherResultDetailDtoJfZjzyf);
//资金占用费转收入--其他业务收入_消贷收入_消贷利息
Voucher.VoucherResultDetailDto voucherResultDetailDtoDfZjzyf = new Voucher.VoucherResultDetailDto();
voucherResultDetailDtoDfZjzyf.setSummary("资金占用费转收入");
voucherResultDetailDtoDfZjzyf.setSubjectNo("6002.01.19");
//核算部门
voucherResultDetailDtoDfZjzyf.setDimensionDept(deptVo.getOrgCode());
//核算客户
voucherResultDetailDtoDfZjzyf.setDimensionCustom(customerNumber);
voucherResultDetailDtoDfZjzyf.setCredit(v.getSubscriptionMoney());
list6.add(voucherResultDetailDtoDfZjzyf);
}
}
}
@ -6110,6 +6332,18 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
if (all6.compareTo(BigDecimal.ZERO) > 0) {//二次销售出库后收款
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto();
if (StringUtils.isNotBlank(finalConfirmation.getCollectionBankNum())) {
voucherResultDetailDtoJf.setBankAccount(finalConfirmation.getCollectionBankNum());
}
voucherResultDetailDtoJf.setSubjectNo(payType);
voucherResultDetailDtoJf.setSummary("收款" +finalConfirmation.getPayerName()+ "(" + collectionDate + ")");
voucherResultDetailDtoJf.setDebit(String.valueOf(all6));
list6.add(voucherResultDetailDtoJf);
}
if (!list.isEmpty()) {//赎回收款(风控状态赎回中以及交回推送)
voucher.setResultDetails(list);
finKingDeeFeignRest.saveVoucher(voucher);
@ -6131,6 +6365,11 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
voucher.setResultDetails(list5);
finKingDeeFeignRest.saveVoucher(voucher);
}
if(!list6.isEmpty()){//执行后法院认款
voucher.setResultDetails(list6);
finKingDeeFeignRest.saveVoucher(voucher);
}
}
//名义价其他费用推财务

Loading…
Cancel
Save