Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
yunuo970428 1 year ago
parent
commit
b58f4e1773
  1. 108
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  2. 44
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  3. 12
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/voucher/VoucherService.java
  4. 12
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbecollectionveh/LoanBeCollectionVehDetailsVo.java
  5. 2
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbeoverdueveh/LoanBeOverdueVehQuery.java
  6. 6
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinbank/LoanFinBankFeign.java
  7. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinbank/LoanFinBankFeignFallback.java
  8. 7
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/LoanRepaymentHistoryFeign.java
  9. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/LoanRepaymentHistoryFeignFallback.java
  10. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeign.java
  11. 5
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeignFallback.java
  12. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehMapper.xml
  13. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehService.java
  14. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankMapper.java
  15. 8
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankMapper.xml
  16. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankRest.java
  17. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankService.java
  18. 43
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanmonthlyaccrualapply/LoanMonthlyAccrualApplyService.java
  19. 7
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryRest.java
  20. 122
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java
  21. 7
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsRest.java
  22. 19
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/becollection/BeCollectionService.java

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

@ -26,6 +26,7 @@
package com.yxt.anrui.fin.biz.fincollectionconfirmation;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -80,11 +81,17 @@ import com.yxt.anrui.riskcenter.api.loandiff.LoanDiffFeign;
import com.yxt.anrui.riskcenter.api.loandiff.LoanDiffsDto;
import com.yxt.anrui.riskcenter.api.loandiffdetails.LoanDiffDetailssDto;
import com.yxt.anrui.riskcenter.api.loanfinbank.LoanFinBank;
import com.yxt.anrui.riskcenter.api.loanfinbank.LoanFinBankFeign;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicy;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicyFeign;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicyVo;
import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.LoanRepaymentHistory;
import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.LoanRepaymentHistoryFeign;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetails;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetailsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetail;
import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy;
import com.yxt.common.base.config.component.FileUploadComponent;
@ -170,6 +177,10 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
private LoanRepaymentPlanDetailsFeign loanRepaymentPlanDetailsFeign;
@Autowired
private FinUncollectedReceivablesDetailedJRService finUncollectedReceivablesDetailedJRService;
@Autowired
private LoanRepaymentHistoryFeign loanRepaymentHistoryFeign;
@Autowired
private LoanFinBankFeign loanFinBankFeign;
private QueryWrapper<FinCollectionConfirmation> createQueryWrapper(FinCollectionConfirmationQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -3679,6 +3690,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
BigDecimal subscriptionMoneyAll = new BigDecimal("0");
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.fetchByAuditState(sid, 1);
if (finSelectedReceivablesDetailedVos.size() > 0) {
FinCollectionConfirmation finalConfirmation = confirmation;
finSelectedReceivablesDetailedVos.stream().forEach(v -> {
//已选款项明细sid
String selectSid = v.getSid();
@ -3688,6 +3700,102 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
//更新审核时间
finSelectedReceivablesDetailed.setAuditDate(DateUtil.today());
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//推送间还认款记录
if (v.getReceivablesName().equals("月还")) {
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
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.setActualDate(new DateTime());
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
historyEntity.setPlanDetailSid(v.getReceivablesSid());
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(v.getReceivablesSid()).getData();
if (null != planDetails) {
historyEntity.setScheduleSid(planDetails.getScheduleSid());
}
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}
//推送间还待转付列表
if (v.getReceivablesName().equals("月还") || v.getReceivablesName().equals("资方逾期利息")) {
String planSid = "";
if (v.getReceivablesName().equals("月还")) {
planSid = v.getReceivablesSid();
} else {
FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if (jr != null) {
planSid = jr.getBusSid();
}
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
if (null != planDetails) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
String orderSid = planDetails.getSalesOrderSid();
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.reAdvancesByOrderSid(orderSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setActualDate(new DateTime());
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
Date dueDate = planDetails.getDueDate();
if (new Date().compareTo(dueDate) > 0) {
historyEntity.setPrepareDate(new DateTime());
} else {
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(dueDate);
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
}
historyEntity.setPrepareDate(new DateTime());
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
} else {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
}
}
}
} else {
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setActualDate(new DateTime());
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
Date dueDate = planDetails.getDueDate();
if (new Date().compareTo(dueDate) > 0) {
historyEntity.setPrepareDate(new DateTime());
} else {
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(dueDate);
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
}
historyEntity.setPrepareDate(new DateTime());
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}
}
}
});
//查询该申请已认款金额总数
subscriptionMoneyAll = finSelectedReceivablesDetailedVos.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);

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

@ -63,7 +63,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Api(tags = "单据调用金蝶的暂存接口")
@ -250,9 +252,9 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
for (GeneralVoucher.GeneralVoucherDetail voucherDetail : voucherDetails) {
Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
dto1.setSummary(voucherDetail.getBankName() + "贷款");
dto2.setSummary(voucherDetail.getBankName() + "贷款");
dto1.setSubjectNo("1201.01.00");
dto1.setSummary(voucherDetail.getBankName() + "贷款");
dto2.setSummary(voucherDetail.getBankName() + "贷款");
dto1.setSubjectNo("1201.01.00");
}
@ -268,7 +270,41 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
*/
@Override
public ResultBean<String> saveAccrualVoucher(GeneralVoucher voucher) {
return null;
ResultBean rb = ResultBean.fireFail();
Voucher newVoucher = new Voucher();
List<Voucher.VoucherResultDetailDto> resultDetails = new ArrayList<>();
if (StringUtils.isNotBlank(voucher.getUseOrgCode())) {
newVoucher.setAccountBook(voucher.getUseOrgCode());
newVoucher.setVoucherNo(voucher.getUseOrgCode());
}
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String formatDate = sdf.format(date);
String[] split = formatDate.split("-");
String month = split[1];
int m = Integer.parseInt(month);
List<GeneralVoucher.GeneralVoucherDetail> voucherDetails = voucher.getVoucherDetails();
if (!voucherDetails.isEmpty()) {
for (GeneralVoucher.GeneralVoucherDetail voucherDetail : voucherDetails) {
Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方
Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //贷方
dto1.setSummary(m + "月还计提");
dto2.setSummary(m + "月还计提");
dto1.setSubjectNo("1201.02.01");
dto2.setSubjectNo("1201.01.00");
dto1.setDimensionDept(voucherDetail.getDeptCode());
dto1.setDimensionCustom(voucherDetail.getCustomerCode());
dto2.setDimensionDept(voucherDetail.getDeptCode());
dto2.setDimensionCustom(voucherDetail.getCustomerCode());
dto1.setDebit(String.valueOf(voucherDetail.getAmount()));
dto2.setCredit(String.valueOf(voucherDetail.getAmount()));
resultDetails.add(dto1);
resultDetails.add(dto2);
}
newVoucher.setResultDetails(resultDetails);
}
log.info("FinKingDeeFeignRest-saveVoucher:{}", JSONObject.toJSONString(newVoucher));
return voucherService.saveVoucher(newVoucher);
}
/**

12
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/voucher/VoucherService.java

@ -41,12 +41,12 @@ public class VoucherService extends FinKingDeeService {
// if (StringUtils.isBlank(voucher.getVoucherWord())) {
// return rb.setMsg("凭证字不能为空");
// }
map_fEntityModel_.put("FVOUCHERGROUPID", voucher.getVoucherWord());
//凭证号
if (StringUtils.isBlank(voucher.getVoucherNo())) {
return rb.setMsg("凭证号不能为空");
}
map_fEntityModel_.put("FVOUCHERGROUPNO", voucher.getVoucherNo());
map_fEntityModel_.put("FVOUCHERGROUPID", "PRE001");
// //凭证号
// if (StringUtils.isBlank(voucher.getVoucherNo())) {
// return rb.setMsg("凭证号不能为空");
// }
// map_fEntityModel_.put("FVOUCHERGROUPNO", voucher.getVoucherNo());
List<Voucher.VoucherResultDetailDto> voucherResultDetailDtos = voucher.getResultDetails() == null ? new ArrayList<>() : voucher.getResultDetails();
//准备 物料列表的数据

12
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbecollectionveh/LoanBeCollectionVehDetailsVo.java

@ -83,14 +83,14 @@ public class LoanBeCollectionVehDetailsVo implements Vo {
private String beOverdueMoney;
@ApiModelProperty("逾期金额换算期数")
private String beOverdueMoneyAndPeriod;
@ApiModelProperty("锁车费用")
private String lockCarMoney; // 锁车费用
@ApiModelProperty("锁车状态")
private String lockCarState; // 锁车状态
@ApiModelProperty("远程控制费用")
private String lockCarMoney;
@ApiModelProperty("远程控制状态")
private String lockCarState;
@ApiModelProperty("销售订单车辆sid")
private String saleVehSid; // 销售订单车辆sid
private String saleVehSid;
@ApiModelProperty("催收申请sid")
private String mainSid; // 催收申请sid
private String mainSid;
@ApiModelProperty
private List<LoanBeCollectionFileVo> hkxyFiles = new ArrayList<>();

2
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbeoverdueveh/LoanBeOverdueVehQuery.java

@ -15,6 +15,8 @@ public class LoanBeOverdueVehQuery implements Query {
private String loanContractNo;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("还款操作人")
private String repaymentName;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("车牌号")

6
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinbank/LoanFinBankFeign.java

@ -117,4 +117,10 @@ public interface LoanFinBankFeign {
@ApiOperation("产品政策查询资方下拉框")
@GetMapping("/selectListByOrgPath")
ResultBean<List<LoanFinBanksVo>> selectListByOrgPath(@RequestParam("orgPath") String orgPath);
@ApiOperation("查询资方是否为退还垫款")
@GetMapping("/reAdvancesByOrderSid")
@ResponseBody
ResultBean<LoanFinBank> reAdvancesByOrderSid(@RequestParam("orderSid") String orderSid);
}

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinbank/LoanFinBankFeignFallback.java

@ -75,4 +75,9 @@ public class LoanFinBankFeignFallback implements LoanFinBankFeign {
return null;
}
@Override
public ResultBean<LoanFinBank> reAdvancesByOrderSid(String orderSid) {
return null;
}
}

7
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/LoanRepaymentHistoryFeign.java

@ -35,6 +35,11 @@ public interface LoanRepaymentHistoryFeign {
@PostMapping("/monthListPage")
public ResultBean<PagerVo<LoanRepaymentHistoryVo>> monthListPage(@RequestBody PagerQuery<LoanRepaymentHistoryQuery> pq);
@ApiOperation("保存还款记录")
@PostMapping("/saveHistoryByEntity")
@ResponseBody
public ResultBean saveHistoryByEntity(@RequestBody LoanRepaymentHistory entity);
@ApiOperation("保存还款记录")
@PostMapping("/saveHistory")
@ResponseBody
@ -107,6 +112,4 @@ public interface LoanRepaymentHistoryFeign {
public void exportExcel(@RequestBody RepaymentStatisticsQuery repaymentStatisticsQuery);
}

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/LoanRepaymentHistoryFeignFallback.java

@ -26,6 +26,11 @@ public class LoanRepaymentHistoryFeignFallback implements LoanRepaymentHistoryFe
return null;
}
@Override
public ResultBean saveHistoryByEntity(LoanRepaymentHistory entity) {
return null;
}
@Override
public ResultBean<String> saveHistory(LoanRepaymentHistoryDto dto) {
return null;

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeign.java

@ -43,4 +43,9 @@ public interface LoanRepaymentPlanDetailsFeign {
@ResponseBody
public ResultBean<LoanRepaymentPlanDetails> fetchDetails(@RequestParam("sid") String sid);
@ApiOperation("修改实体")
@PostMapping("/updateByEntity")
@ResponseBody
public ResultBean<String> updateByEntity(@RequestBody LoanRepaymentPlanDetails entity);
}

5
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentplandetails/LoanRepaymentPlanDetailsFeignFallback.java

@ -36,4 +36,9 @@ public class LoanRepaymentPlanDetailsFeignFallback implements LoanRepaymentPlanD
public ResultBean<LoanRepaymentPlanDetails> fetchDetails(String sid) {
return null;
}
@Override
public ResultBean<String> updateByEntity(LoanRepaymentPlanDetails entity) {
return null;
}
}

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehMapper.xml

@ -23,6 +23,7 @@
SUM(a1.yd_zjzyf) AS fundPossCostMoney,
a1.riskStaffUserSid,
a1.riskStaffUserName,
a1.reaRepaymentName AS repaymentName,
a1.createTime,
a1.orgSidPath
FROM (SELECT lrpd.sid,
@ -49,6 +50,7 @@
lrpd.createBySid,
bv.riskStaffUserSid,
bv.riskStaffUserName,
bv.reaRepaymentName,
lr.createTime
FROM `loan_repayment_plan_details` lrpd
LEFT JOIN `loan_repayment_history` lrh

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehService.java

@ -87,6 +87,9 @@ public class LoanBeOverdueVehService {
if (StringUtils.isNotBlank(query.getBorrowerName())) {
qw.like("a1.borrowerName", query.getBorrowerName());
}
if (StringUtils.isNotBlank(query.getRepaymentName())) {
qw.like("a1.reaRepaymentName", query.getRepaymentName());
}
if (StringUtils.isNotBlank(query.getCarNum())) {
qw.like("a1.vehMark", query.getCarNum());
}
@ -141,6 +144,9 @@ public class LoanBeOverdueVehService {
if (StringUtils.isNotBlank(query.getBorrowerName())) {
qw.like("a1.borrowerName", query.getBorrowerName());
}
if (StringUtils.isNotBlank(query.getRepaymentName())) {
qw.like("a1.reaRepaymentName", query.getRepaymentName());
}
if (StringUtils.isNotBlank(query.getCarNum())) {
qw.like("a1.vehMark", query.getCarNum());
}

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankMapper.java

@ -88,4 +88,6 @@ public interface LoanFinBankMapper extends BaseMapper<LoanFinBank> {
int updateBySidDelete(String sid);
List<LoanFinBanksVo> selectListByOrgSid(String orgSid);
LoanFinBank reAdvancesByOrderSid(@Param("orderSid") String orderSid);
}

8
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankMapper.xml

@ -80,4 +80,12 @@
from loan_fin_bank
where isDelete = 0
</select>
<select id="reAdvancesByOrderSid" resultType="com.yxt.anrui.riskcenter.api.loanfinbank.LoanFinBank">
SELECT b.*
FROM loan_solutions AS s
LEFT JOIN loan_fin_policy AS p ON s.policySid = p.sid
LEFT JOIN loan_fin_bank as b ON p.bankSid = b.sid
WHERE s.salesOrderSid = #{orderSid}
AND s.isDelete = '0'
</select>
</mapper>

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankRest.java

@ -186,4 +186,9 @@ public class LoanFinBankRest implements LoanFinBankFeign {
public ResultBean<List<LoanFinBanksVo>> selectListByOrgPath(String orgPath) {
return loanFinBankService.selectListByOrgPath(orgPath);
}
@Override
public ResultBean<LoanFinBank> reAdvancesByOrderSid(String orderSid) {
return loanFinBankService.reAdvancesByOrderSid(orderSid);
}
}

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinbank/LoanFinBankService.java

@ -302,4 +302,10 @@ public class LoanFinBankService extends MybatisBaseService<LoanFinBankMapper, Lo
list.removeAll(Collections.singleton(null));
return rb.success().setData(list);
}
public ResultBean<LoanFinBank> reAdvancesByOrderSid(String orderSid) {
ResultBean rb = ResultBean.fireFail();
LoanFinBank loanFinBank = baseMapper.reAdvancesByOrderSid(orderSid);
return rb.success().setData(loanFinBank);
}
}

43
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanmonthlyaccrualapply/LoanMonthlyAccrualApplyService.java

@ -7,9 +7,26 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateDto;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateEnum;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.BusArrearsCarryVehicleApplyVo;
import com.yxt.anrui.buscenter.api.busbillapplication.BusBillApplication;
import com.yxt.anrui.buscenter.api.busbilltrailer.BusBillTrailerVo;
import com.yxt.anrui.buscenter.api.busbillvehicle.BusBillVehicleVo;
import com.yxt.anrui.buscenter.api.busdeliveredapplydetails.BusDeliveredApplyDetails;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPrice;
import com.yxt.anrui.buscenter.api.busvalcustfiling.BusValcustFilingDto;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDto;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.voucher.GeneralVoucher;
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery;
@ -26,6 +43,7 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.UserQuery;
import com.yxt.anrui.riskcenter.api.loanbuckleapply.LoanBuckleApply;
import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppBuckleDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppRecordVo;
@ -52,6 +70,7 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import com.yxt.messagecenter.api.message.PushMessageQuery;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -95,7 +114,8 @@ public class LoanMonthlyAccrualApplyService extends MybatisBaseService<LoanMonth
private LoanMonthlyAccrualRecordService loanMonthlyAccrualRecordService;
@Autowired
private LoanRepaymentPlanDetailsService loanRepaymentPlanDetailsService;
@Autowired
private FinKingDeeFeign finKingDeeFeign;
public ResultBean<LoanMonthlyAccrualApplyInit> accrualInit(String orgPath) {
ResultBean<LoanMonthlyAccrualApplyInit> rb = ResultBean.fireFail();
String orgSidPath = orgPath;
@ -638,6 +658,21 @@ public class LoanMonthlyAccrualApplyService extends MybatisBaseService<LoanMonth
LoanMonthlyAccrualApply accrualApply = fetchBySid(businessSid);
accrualApply.setClosingDate(new DateTime());
baseMapper.updateById(accrualApply);
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new org.apache.tomcat.util.threads.ThreadPoolExecutor(1, 10,
1000, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new org.apache.tomcat.util.threads.ThreadPoolExecutor.AbortPolicy());
//推送优惠包交接数据
Future future = pool.submit(() -> {
pushAccrualVoucher(businessSid);
});
} catch (Exception e) {
e.printStackTrace();
log.error("推送数据失败=========================" + e.getMessage());
return rb.setMsg("推送数据失败");
}
}
return rb.success().setData(resultBean.getData());
} else {
@ -645,6 +680,12 @@ public class LoanMonthlyAccrualApplyService extends MybatisBaseService<LoanMonth
}
}
private void pushAccrualVoucher(String businessSid) {
List<LoanMonthlyAccrualRecord> records = loanMonthlyAccrualRecordService.selByMainSid(businessSid);
// xxxxxxxxx
}
public ResultBean revokeProcess(AccrualTaskQuery query) {
ResultBean rb = ResultBean.fireFail();

7
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryRest.java

@ -50,6 +50,13 @@ public class LoanRepaymentHistoryRest implements LoanRepaymentHistoryFeign {
return rb.success().setData(pv);
}
@Override
public ResultBean saveHistoryByEntity(LoanRepaymentHistory entity) {
ResultBean rb = ResultBean.fireFail();
loanRepaymentHistoryService.insert(entity);
return rb.success();
}
@Override
public ResultBean<String> saveHistory(LoanRepaymentHistoryDto dto) {
return loanRepaymentHistoryService.saveHistory(dto);

122
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java

@ -497,66 +497,69 @@ public class LoanRepaymentHistoryService extends MybatisBaseService<LoanRepaymen
qw.apply(StringUtils.isNotEmpty(dueStartDate), "date_format (p.dueDate,'%Y-%m-%d') >= date_format('" + dueStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(dueEndDate), "date_format (p.dueDate,'%Y-%m-%d') <= date_format('" + dueEndDate + "','%Y-%m-%d')"
);
List<String> monthHeadAndLast = getMonthHeadAndLast(new Date());
String head = monthHeadAndLast.get(0);
String last = monthHeadAndLast.get(1);
// List<String> monthHeadAndLast = getMonthHeadAndLast(new Date());
// String head = monthHeadAndLast.get(0);
// String last = monthHeadAndLast.get(1);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String actualStartDate = pagerQuery.getActualStartDate();
String actualEndDate = pagerQuery.getActualEndDate();
try {
Date headT = sdf.parse(head);
Date lastT = sdf.parse(last);
Date ast = null;
Date aed = null;
if (StringUtils.isNotBlank(actualStartDate)) {
ast = sdf.parse(actualStartDate);
}
if (StringUtils.isNotBlank(actualEndDate)) {
aed = sdf.parse(actualEndDate);
}
if (StringUtils.isBlank(actualStartDate) && StringUtils.isNotBlank(actualEndDate)) {
if (aed.before(lastT)) {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
);
} else {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
);
}
} else if (StringUtils.isBlank(actualEndDate) && StringUtils.isNotBlank(actualStartDate)) {
if (headT.before(ast)) {
qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
);
} else {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
);
}
} else if (StringUtils.isNotBlank(actualStartDate) && StringUtils.isNotBlank(actualEndDate)) {
if (headT.before(ast) && aed.before(lastT)) {
qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
);
} else if (headT.before(ast) && !aed.before(lastT)) {
qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + lastT + "','%Y-%m-%d')"
);
} else if (!headT.before(ast) && aed.before(lastT)) {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
);
} else if (!headT.before(ast) && !aed.before(lastT)) {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
);
}
}
} catch (ParseException e) {
e.printStackTrace();
}
qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
);
// try {
// Date headT = sdf.parse(head);
// Date lastT = sdf.parse(last);
// Date ast = null;
// Date aed = null;
// if (StringUtils.isNotBlank(actualStartDate)) {
// ast = sdf.parse(actualStartDate);
// }
// if (StringUtils.isNotBlank(actualEndDate)) {
// aed = sdf.parse(actualEndDate);
// }
//
// if (StringUtils.isBlank(actualStartDate) && StringUtils.isNotBlank(actualEndDate)) {
// if (aed.before(lastT)) {
// qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
// );
// } else {
// qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
// );
// }
// } else if (StringUtils.isBlank(actualEndDate) && StringUtils.isNotBlank(actualStartDate)) {
// if (headT.before(ast)) {
// qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
// );
// } else {
// qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
// );
// }
// } else if (StringUtils.isNotBlank(actualStartDate) && StringUtils.isNotBlank(actualEndDate)) {
// if (headT.before(ast) && aed.before(lastT)) {
// qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
// );
// } else if (headT.before(ast) && !aed.before(lastT)) {
// qw.apply(StringUtils.isNotEmpty(actualStartDate), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + actualStartDate + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + lastT + "','%Y-%m-%d')"
// );
// } else if (!headT.before(ast) && aed.before(lastT)) {
// qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(actualEndDate), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + actualEndDate + "','%Y-%m-%d')"
// );
// } else if (!headT.before(ast) && !aed.before(lastT)) {
// qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
// apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
// );
// }
// }
// } catch (ParseException e) {
// e.printStackTrace();
// }
String dataStartTime = pagerQuery.getDataStartTime();
String dataEndTime = pagerQuery.getDataEndTime();
@ -564,11 +567,6 @@ public class LoanRepaymentHistoryService extends MybatisBaseService<LoanRepaymen
apply(StringUtils.isNotEmpty(dataEndTime), "date_format (h.dataTime,'%Y-%m-%d') <= date_format('" + dataEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("h.dataTime");
if (StringUtils.isBlank(actualStartDate) && StringUtils.isBlank(actualEndDate)) {
qw.apply(StringUtils.isNotEmpty(head), "date_format (h.actualDate,'%Y-%m-%d') >= date_format('" + head + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(last), "date_format (h.actualDate,'%Y-%m-%d') <= date_format('" + last + "','%Y-%m-%d')"
);
}
IPage<LoanRepaymentHistoryVo> pagging = baseMapper.monthListPage(page, qw);
List<LoanRepaymentHistoryVo> records = pagging.getRecords();
records.removeAll(Collections.singleton(null));

7
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsRest.java

@ -47,4 +47,11 @@ public class LoanRepaymentPlanDetailsRest implements LoanRepaymentPlanDetailsFei
public ResultBean<LoanRepaymentPlanDetails> fetchDetails(String sid) {
return loanRepaymentPlanDetailsService.fetchDetails(sid);
}
@Override
public ResultBean<String> updateByEntity(LoanRepaymentPlanDetails entity) {
ResultBean rb = ResultBean.fireFail();
loanRepaymentPlanDetailsService.updateById(entity);
return rb.success();
}
}

19
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/becollection/BeCollectionService.java

@ -478,10 +478,21 @@ public class BeCollectionService {
appBeCollectionRecordVehInit.setBeOverdueMoney(loanBeCollectionRecordVehInit.getBeOverdueMoney());
appBeCollectionRecordVehInit.setBeOverdueMoneyAndPeriod(loanBeCollectionRecordVehInit.getBeOverdueMoneyAndPeriod());
appBeCollectionRecordVehInit.setCsjlSid(loanBeCollectionRecordVehInit.getSaleVehSid());
//appBeCollectionRecordVehInit.setKpglSid(loanBeCollectionRecordVehInit.getKpglSid());
//appBeCollectionRecordVehInit.setYhmxSid(loanBeCollectionRecordVehInit.getYhmxSid());
//appBeCollectionRecordVehInit.setJrfaSid(loanBeCollectionRecordVehInit.getJrfaSid());
//appBeCollectionRecordVehInit.setJfkcSid(loanBeCollectionRecordVehInit.getKcbgSid());
List<LoanBeCollectionVehFile> sids = loanBeCollectionRecordVehInit.getSids();
for (LoanBeCollectionVehFile loanBeCollectionVehFile : sids) {
if ("开票信息".equals(loanBeCollectionVehFile.getName())){
appBeCollectionRecordVehInit.setKpglSid(loanBeCollectionVehFile.getSid());
}
if ("月还明细".equals(loanBeCollectionVehFile.getName())){
appBeCollectionRecordVehInit.setYhmxSid(loanBeCollectionVehFile.getSid());
}
if ("金融方案".equals(loanBeCollectionVehFile.getName())){
appBeCollectionRecordVehInit.setJrfaSid(loanBeCollectionVehFile.getSid());
}
if ("家访考察报告".equals(loanBeCollectionVehFile.getName())){
appBeCollectionRecordVehInit.setJfkcSid(loanBeCollectionVehFile.getSid());
}
}
appBeCollectionRecordVehInits.add(appBeCollectionRecordVehInit);
}
appBeCollectionRecordInit.setAppBeCollectionRecordVehInitList(appBeCollectionRecordVehInits);

Loading…
Cancel
Save