Browse Source

修改

master
ligaode 1 month ago
parent
commit
14e615a71c
  1. 2
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbecollectionrecord/LoanBeCollectionRecordHistoryVehVo.java
  2. 12
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbeoverdueveh/LoanBeOverdueVehQuery.java
  3. 26
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbeoverdueveh/LoanBeOverdueVehVo.java
  4. 94
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordMapper.xml
  5. 8
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordRest.java
  6. 7
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordService.java
  7. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehMapper.java
  8. 228
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehMapper.xml
  9. 20
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbeoverdueveh/LoanBeOverdueVehService.java
  10. 14
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java
  11. 1
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java
  12. 14
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansubletapply/LoanSubletApplyService.java
  13. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.xml
  14. 2
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapply/ScmVehrebateCheckapplyService.java

2
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbecollectionrecord/LoanBeCollectionRecordHistoryVehVo.java

@ -10,6 +10,8 @@ import java.util.List;
@Data @Data
public class LoanBeCollectionRecordHistoryVehVo { public class LoanBeCollectionRecordHistoryVehVo {
@ApiModelProperty("销售订单车辆sid")
private String busVinSid;
@ApiModelProperty("车架号") @ApiModelProperty("车架号")
private String vinNo; private String vinNo;
@ApiModelProperty("车牌号") @ApiModelProperty("车牌号")

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

@ -13,18 +13,14 @@ public class LoanBeOverdueVehQuery implements Query {
private String dept; private String dept;
@ApiModelProperty("贷款合同编号") @ApiModelProperty("贷款合同编号")
private String loanContractNo; private String loanContractNo;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("还款操作人")
private String repaymentName;
@ApiModelProperty("车架号") @ApiModelProperty("车架号")
private String vinNo; private String vinNo;
@ApiModelProperty("车牌号") @ApiModelProperty("车牌号")
private String carNum; private String carNum;
@ApiModelProperty("资方") @ApiModelProperty("贷款人名称")
private String bankName; private String borrowerName;
@ApiModelProperty("资方合同编号") @ApiModelProperty("还款操作人")
private String bankContractNo; private String repaymentName;
@ApiModelProperty("逾期期数") @ApiModelProperty("逾期期数")
private String beOverduePeriod; private String beOverduePeriod;
@ApiModelProperty("逾期金额") @ApiModelProperty("逾期金额")

26
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanbeoverdueveh/LoanBeOverdueVehVo.java

@ -18,37 +18,25 @@ public class LoanBeOverdueVehVo implements Vo {
private String dept; private String dept;
@ApiModelProperty("贷款合同编号") @ApiModelProperty("贷款合同编号")
private String loanContractNo; private String loanContractNo;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("还款操作人")
private String repaymentName;
@ApiModelProperty("车架号") @ApiModelProperty("车架号")
private String vinNo; private String vinNo;
@ApiModelProperty("车牌号") @ApiModelProperty("车牌号")
private String carNum; private String carNum;
@ApiModelProperty("资方") @ApiModelProperty("贷款人名称")
private String bankName; private String borrowerName;
@ApiModelProperty("资方合同编号") @ApiModelProperty("还款操作人")
private String bankContractNo; private String repaymentName;
@ApiModelProperty("资方月还")
private String dueMoney;
@ApiModelProperty("首次逾期日期")
private String firstBeDate;
@ApiModelProperty("逾期期数") @ApiModelProperty("逾期期数")
private String beOverduePeriod; private String beOverduePeriod;
@ApiModelProperty("逾期金额") @ApiModelProperty("逾期金额")
private String beOverdueMoney; private String beOverdueMoney;
@ApiModelProperty("逾期金额换算期数") @ApiModelProperty("逾期金额换算期数")
private String beOverdueMoneyAndPeriod; private String beOverdueMoneyAndPeriod;
@ApiModelProperty("垫款金额") @ApiModelProperty("最近催收日期")
private String advMoney; @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("资金占用费") private Date createTime;
private String fundPossCostMoney;
@ApiModelProperty("风控专员") @ApiModelProperty("风控专员")
private String riskStaffUserName; private String riskStaffUserName;
@ApiModelProperty("远程控制状态") @ApiModelProperty("远程控制状态")
private String lockCarState; private String lockCarState;
@ApiModelProperty("最近催收日期")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date createTime;
} }

94
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordMapper.xml

@ -39,102 +39,32 @@
a1.borrowerName, a1.borrowerName,
a1.mobile AS borrowerMobile, a1.mobile AS borrowerMobile,
a1.customer AS custName, a1.customer AS custName,
a1.`bankName`, a1.bankName,
a1.dueDate AS firstBeDate, MIN(a1.dueDate) AS firstBeDate,
COUNT(a1.sid) AS beOverduePeriod, a1.busVinSid
(
SUM(a1.yq_total) + IFNULL(
(SELECT
SUM(lbpv.`bankBeInter`)
FROM
loan_be_padsincere_veh lbpv
WHERE lbpv.saleVehSid = a1.busVinSid),
0
) + IFNULL(
(SELECT
SUM(fund)
FROM
loan_fund_day
WHERE busSid IN
(SELECT
lrpd.sid
FROM
loan_repayment_plan_details lrpd
WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE())),
0
)
) AS beOverdueMoney,
ROUND((
SUM(a1.yq_total) + IFNULL(
(SELECT
SUM(lbpv.`bankBeInter`)
FROM
loan_be_padsincere_veh lbpv
WHERE lbpv.saleVehSid = a1.busVinSid),
0
) + IFNULL(
(SELECT
SUM(fund)
FROM
loan_fund_day
WHERE busSid IN
(SELECT
lrpd.sid
FROM
loan_repayment_plan_details lrpd
WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE())),
0
)
) / a1.dueMoney, 1) AS beOverdueMoneyAndPeriod
FROM FROM
(SELECT (SELECT
lrpd.sid, lrpd.sid,
lrpd.busVinSid, lrpd.busVinSid,
lrpd.`useOrgName`,
lrpd.`dept`,
lrpd.`loanContractNo`,
lrpd.borrowerName, lrpd.borrowerName,
bb.mobile, bb.mobile,
lrpd.customer, lrpd.customer,
lrpd.`vinNo`, lrpd.vinNo,
lrpd.vehMark, lrpd.vehMark,
lrpd.`bankName`, lrpd.bankName,
lrpd.`bankContractNo`,
lrpd.dueMoney,
lrpd.dueDate, lrpd.dueDate,
( (
lrpd.`dueMoney` - SUM(IFNULL(lrh.actualMoney, 0)) lrpd.dueMoney - SUM(IFNULL(lrh.actualMoney, 0))
) AS yq_total, ) AS yq_total
(
lrpd.`dueMoney` - SUM(IFNULL(lrh.actualMoney, 0))
) / lrpd.`dueMoney` AS yq_hsqs,
lrpd.`paymentMoney` AS yd_dkje,
lrpd.fund AS yd_zjzyf,
lrpd.orgSidPath,
lrpd.createBySid,
bv.riskStaffUserSid,
bv.riskStaffUserName,
lr.createTime
FROM FROM
`loan_repayment_plan_details` lrpd loan_repayment_plan_details lrpd
LEFT JOIN `loan_repayment_history` lrh LEFT JOIN loan_repayment_history lrh
ON lrh.planDetailSid = lrpd.`sid` ON lrh.planDetailSid = lrpd.sid
LEFT JOIN anrui_buscenter.`bus_sales_order_vehicle` bv LEFT JOIN anrui_buscenter.bus_sales_order_borrower bb
ON lrpd.busVinSid = bv.sid
LEFT JOIN anrui_buscenter.`bus_sales_order_borrower` bb
ON lrpd.borrowerSid = bb.sid ON lrpd.borrowerSid = bb.sid
LEFT JOIN
(SELECT
saleVehSid,
createTime
FROM
loan_be_collection_record
ORDER BY createTime DESC
LIMIT 1) lr
ON lrpd.busVinSid = lr.saleVehSid
WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE() WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE()
AND lrpd.busVinSid = #{saleVehSid} AND lrpd.busVinSid = #{saleVehSid}
GROUP BY lrpd.`sid` GROUP BY lrpd.sid
HAVING (yq_total > 0)) a1 HAVING (yq_total > 0)) a1
</select> </select>
</mapper> </mapper>

8
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordRest.java

@ -47,7 +47,7 @@ public class LoanBeCollectionRecordRest implements LoanBeCollectionRecordFeign {
@Override @Override
@ApiOperation("根据条件分页查询数据的列表") @ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage") @PostMapping("/listPage")
public ResultBean<PagerVo<LoanBeCollectionRecordVo>> listPage(@RequestBody PagerQuery<LoanBeCollectionRecordQuery> pq){ public ResultBean<PagerVo<LoanBeCollectionRecordVo>> listPage(@RequestBody PagerQuery<LoanBeCollectionRecordQuery> pq) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<LoanBeCollectionRecordVo> pv = loanBeCollectionRecordService.listPageVo(pq); PagerVo<LoanBeCollectionRecordVo> pv = loanBeCollectionRecordService.listPageVo(pq);
return rb.success().setData(pv); return rb.success().setData(pv);
@ -56,7 +56,7 @@ public class LoanBeCollectionRecordRest implements LoanBeCollectionRecordFeign {
@Override @Override
@ApiOperation("新增或修改") @ApiOperation("新增或修改")
@PostMapping("/save") @PostMapping("/save")
public ResultBean save(@RequestBody LoanBeCollectionRecordDto dto){ public ResultBean save(@RequestBody LoanBeCollectionRecordDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
loanBeCollectionRecordService.saveOrUpdateDto(dto); loanBeCollectionRecordService.saveOrUpdateDto(dto);
return rb.success(); return rb.success();
@ -65,7 +65,7 @@ public class LoanBeCollectionRecordRest implements LoanBeCollectionRecordFeign {
@Override @Override
@ApiOperation("根据sid批量删除") @ApiOperation("根据sid批量删除")
@PostMapping("/delBySids") @PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){ public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
loanBeCollectionRecordService.delBySids(sids); loanBeCollectionRecordService.delBySids(sids);
return rb.success(); return rb.success();
@ -74,7 +74,7 @@ public class LoanBeCollectionRecordRest implements LoanBeCollectionRecordFeign {
@Override @Override
@ApiOperation("根据SID获取一条记录") @ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}") @GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<LoanBeCollectionRecordDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){ public ResultBean<LoanBeCollectionRecordDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
LoanBeCollectionRecordDetailsVo vo = loanBeCollectionRecordService.fetchDetailsVoBySid(sid); LoanBeCollectionRecordDetailsVo vo = loanBeCollectionRecordService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo); return rb.success().setData(vo);

7
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionrecord/LoanBeCollectionRecordService.java

@ -47,6 +47,7 @@ import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomer; import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomer;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomerDetailsVo; import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomerDetailsVo;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetails; import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetails;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.AlrepaidAndArrVo;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo; import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.biz.loanbeoverdueveh.LoanBeOverdueVehService; import com.yxt.anrui.riskcenter.biz.loanbeoverdueveh.LoanBeOverdueVehService;
@ -54,6 +55,7 @@ import com.yxt.anrui.riskcenter.biz.loanfile.LoanFileService;
import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigate.LoanHomevisitInvestigateService; import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigate.LoanHomevisitInvestigateService;
import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomerService; import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomerService;
import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService; import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService;
import com.yxt.anrui.riskcenter.biz.loanrestorereportapply.LoanRestoreReportApplyService;
import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService; import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -96,6 +98,8 @@ public class LoanBeCollectionRecordService extends MybatisBaseService<LoanBeColl
private LoanHomevisitInvestigateService loanHomevisitInvestigateService; private LoanHomevisitInvestigateService loanHomevisitInvestigateService;
@Autowired @Autowired
private LoanRepaymentPlanDetailsService loanRepaymentPlanDetailsService; private LoanRepaymentPlanDetailsService loanRepaymentPlanDetailsService;
@Autowired
private LoanRestoreReportApplyService loanRestoreReportApplyService;
private QueryWrapper<LoanBeCollectionRecord> createQueryWrapper(LoanBeCollectionRecordQuery query) { private QueryWrapper<LoanBeCollectionRecord> createQueryWrapper(LoanBeCollectionRecordQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
@ -249,6 +253,9 @@ public class LoanBeCollectionRecordService extends MybatisBaseService<LoanBeColl
public LoanBeCollectionRecordHistoryVehVo viewHistory(String saleVehSid) { public LoanBeCollectionRecordHistoryVehVo viewHistory(String saleVehSid) {
LoanBeCollectionRecordHistoryVehVo loanBeCollectionRecordHistoryVehVo = baseMapper.viewHistoryVeh(saleVehSid); LoanBeCollectionRecordHistoryVehVo loanBeCollectionRecordHistoryVehVo = baseMapper.viewHistoryVeh(saleVehSid);
AlrepaidAndArrVo alrepaidAndArr2 = loanRestoreReportApplyService.getAlrepaidAndArr2(loanBeCollectionRecordHistoryVehVo.getBusVinSid());
loanBeCollectionRecordHistoryVehVo.setBeOverdueMoney(alrepaidAndArr2.getCurrentBeMoney());
loanBeCollectionRecordHistoryVehVo.setBeOverdueMoneyAndPeriod(alrepaidAndArr2.getBeOverdueMoneyAndPeriod());
List<LoanBeCollectionRecordHistoryVo> loanBeCollectionRecordDetailsVoList = baseMapper.viewHistory(saleVehSid); List<LoanBeCollectionRecordHistoryVo> loanBeCollectionRecordDetailsVoList = baseMapper.viewHistory(saleVehSid);
loanBeCollectionRecordHistoryVehVo.setLoanBeCollectionRecordHistoryVoList(loanBeCollectionRecordDetailsVoList); loanBeCollectionRecordHistoryVehVo.setLoanBeCollectionRecordHistoryVoList(loanBeCollectionRecordDetailsVoList);
return loanBeCollectionRecordHistoryVehVo; return loanBeCollectionRecordHistoryVehVo;

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

@ -18,6 +18,8 @@ public interface LoanBeOverdueVehMapper {
IPage<LoanBeOverdueVehVo> selectPageVo(IPage<LoanBeOverdueVehVo> page, @Param(Constants.WRAPPER) Wrapper<LoanBeOverdueVehVo> qw); IPage<LoanBeOverdueVehVo> selectPageVo(IPage<LoanBeOverdueVehVo> page, @Param(Constants.WRAPPER) Wrapper<LoanBeOverdueVehVo> qw);
IPage<LoanBeOverdueVehVo> riskListPage(IPage<LoanBeOverdueVehVo> page, @Param(Constants.WRAPPER) Wrapper<LoanBeOverdueVehVo> qw);
void allocationRiskStaff(@Param("saleVehSid") String saleVehSid, @Param("userSid") String userSid, @Param("userName") String userName); void allocationRiskStaff(@Param("saleVehSid") String saleVehSid, @Param("userSid") String userSid, @Param("userName") String userName);
List<LoanBeCollectionRecordVehInit> initVehListByBorrSid(String borrowerSid); List<LoanBeCollectionRecordVehInit> initVehListByBorrSid(String borrowerSid);

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

@ -13,11 +13,9 @@
a1.borrowerName, a1.borrowerName,
RIGHT(a1.vinNo, 8) AS vinNo, RIGHT(a1.vinNo, 8) AS vinNo,
a1.vehMark AS carNum, a1.vehMark AS carNum,
a1.bankName, SUM(CASE WHEN (a1.yq_total +
a1.bankContractNo, COALESCE(lbpv_sum.bankBeInter_sum, 0) +
a1.dueMoney AS bankMonthRep, COALESCE(lfd_sum.fund_sum, 0)) > 0 THEN 1 ELSE 0 END) AS beOverduePeriod,
MIN(a1.dueDate) AS firstBeDate, -- 改为取最早逾期日期
COUNT(a1.nowOverdue) AS beOverduePeriod,
ROUND(SUM(a1.yq_total) + ROUND(SUM(a1.yq_total) +
COALESCE(lbpv_sum.bankBeInter_sum, 0) + COALESCE(lbpv_sum.bankBeInter_sum, 0) +
CAST(COALESCE(lfd_sum.fund_sum, 0) AS DECIMAL(10,2)),2) AS beOverdueMoney, CAST(COALESCE(lfd_sum.fund_sum, 0) AS DECIMAL(10,2)),2) AS beOverdueMoney,
@ -26,9 +24,6 @@
MAX(a1.qjyh), -- 保证聚合正确性 MAX(a1.qjyh), -- 保证聚合正确性
2 2
) AS beOverdueMoneyAndPeriod, ) AS beOverdueMoneyAndPeriod,
SUM(a1.yd_dkje) AS advMoney,
SUM(a1.yd_zjzyf) AS fundPossCostMoney,
MAX(a1.riskStaffUserSid) AS riskStaffUserSid, -- 保证聚合正确性
MAX(a1.riskStaffUserName) AS riskStaffUserName, MAX(a1.riskStaffUserName) AS riskStaffUserName,
MAX(a1.reaRepaymentName) AS repaymentName, MAX(a1.reaRepaymentName) AS repaymentName,
MAX(a1.createTime) AS createTime, MAX(a1.createTime) AS createTime,
@ -45,14 +40,123 @@
lrpd.borrowerName, lrpd.borrowerName,
lrpd.vinNo, lrpd.vinNo,
lrpd.vehMark, lrpd.vehMark,
lrpd.bankName,
lrpd.bankContractNo,
lrpd.dueMoney,
lrpd.dueDate,
COALESCE(lrs.mainMidRepay, 0) + COALESCE(lrs.otherMidRepay, 0) AS qjyh, COALESCE(lrs.mainMidRepay, 0) + COALESCE(lrs.otherMidRepay, 0) AS qjyh,
lrpd.dueMoney - COALESCE(SUM(lrh.actualMoney), 0) AS yq_total, lrpd.dueMoney - COALESCE(SUM(lrh.actualMoney), 0) AS yq_total,
lrpd.paymentMoney AS yd_dkje, lrpd.orgSidPath,
lrpd.fund AS yd_zjzyf, bv.riskStaffUserName,
bv.reaRepaymentName,
lbcr.createTime,
CASE lbcv.lockCarState
WHEN 0 THEN '未控制'
WHEN 1 THEN '控制成功'
WHEN 2 THEN '控制失败'
WHEN 3 THEN '已解控'
END AS lockCarState,
if(lrpd.dueDate &lt;= lrpd.updateTime,0,1) as nowOverdue
FROM loan_repayment_plan_details lrpd
LEFT JOIN loan_repayment_history lrh
ON lrh.planDetailSid = lrpd.sid
INNER JOIN loan_repayment_schedule lrs
ON lrpd.scheduleSid = lrs.sid
LEFT JOIN anrui_buscenter.bus_sales_order_vehicle bv
ON lrpd.busVinSid = bv.sid
LEFT JOIN (
SELECT
saleVehSid,
MAX(createTime) AS createTime -- 取最新记录
FROM loan_be_collection_record
GROUP BY saleVehSid
) lbcr ON lrpd.busVinSid = lbcr.saleVehSid
LEFT JOIN (
SELECT
lbcv.saleVehSid,
lbcv.lockCarState,
ROW_NUMBER() OVER (PARTITION BY lbcv.saleVehSid ORDER BY lbca.createTime DESC) AS rn
FROM loan_be_collection_veh lbcv
JOIN loan_be_collection_apply lbca
ON lbca.sid = lbcv.mainSid
WHERE lbca.collMeasure LIKE '%远程控制%'
AND lbca.nodeState = '已办结'
) lbcv ON lbcv.saleVehSid = lrpd.busVinSid AND lbcv.rn = 1
WHERE lrpd.dueDate &lt;= lrpd.updateTime -- 移除DATE_FORMAT函数
GROUP BY lrpd.sid
) a1
LEFT JOIN (
SELECT
saleVehSid,
SUM(bankBeInter) AS bankBeInter_sum
FROM loan_be_padsincere_veh
GROUP BY saleVehSid
) lbpv_sum ON lbpv_sum.saleVehSid = a1.busVinSid
LEFT JOIN (
SELECT
lp.busVinSid,
SUM(fjj.reveivableMoney - fjj.m) AS fund_sum
FROM (
SELECT
IFNULL((
SELECT SUM(subscriptionMoney)
FROM anrui_fin.fin_selected_receivables_detailed s
WHERE s.auditState = '3'
AND s.receivablesSid = fj.sid
), 0) AS m,
fj.*
FROM (
SELECT j.busSid, j.sid, j.reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr j
WHERE j.payCostTitleKey = '006'
) fj
) fjj
LEFT JOIN loan_repayment_plan_details lp
ON lp.sid = fjj.busSid
WHERE lp.dueDate &lt;= lp.updateTime
AND lp.busVinSid IS NOT NULL
GROUP BY lp.busVinSid
) lfd_sum ON lfd_sum.busVinSid = a1.busVinSid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="riskListPage" resultType="com.yxt.anrui.riskcenter.api.loanbeoverdueveh.LoanBeOverdueVehVo">
SELECT
a1.busVinSid AS saleVehSid,
a1.useOrgName,
a1.dept,
a1.loanContractNo,
a1.borrowerName,
RIGHT(a1.vinNo, 8) AS vinNo,
a1.vehMark AS carNum,
SUM(CASE WHEN (a1.yq_total +
COALESCE(lbpv_sum.bankBeInter_sum, 0) +
COALESCE(lfd_sum.fund_sum, 0)) > 0 THEN 1 ELSE 0 END) AS beOverduePeriod,
ROUND(SUM(a1.yq_total) +
COALESCE(lbpv_sum.bankBeInter_sum, 0) +
CAST(COALESCE(lfd_sum.fund_sum, 0) AS DECIMAL(10,2)),2) AS beOverdueMoney,
ROUND(
(SUM(a1.yq_total) + COALESCE(lbpv_sum.bankBeInter_sum, 0) + COALESCE(lfd_sum.fund_sum, 0)) /
MAX(a1.qjyh), -- 保证聚合正确性
2
) AS beOverdueMoneyAndPeriod,
MAX(a1.riskStaffUserSid) AS riskStaffUserSid,
MAX(a1.riskStaffUserName) AS riskStaffUserName,
MAX(a1.reaRepaymentName) AS repaymentName,
MAX(a1.createTime) AS createTime,
a1.orgSidPath,
MAX(a1.lockCarState) AS lockCarState, -- 保证聚合正确性
a1.nowOverdue
FROM (
SELECT
lrpd.sid,
lrpd.busVinSid,
lrpd.useOrgName,
lrpd.dept,
lrpd.loanContractNo,
lrpd.borrowerName,
lrpd.vinNo,
lrpd.vehMark,
COALESCE(lrs.mainMidRepay, 0) + COALESCE(lrs.otherMidRepay, 0) AS qjyh,
lrpd.dueMoney - COALESCE(SUM(lrh.actualMoney), 0) AS yq_total,
lrpd.orgSidPath, lrpd.orgSidPath,
bv.riskStaffUserSid, bv.riskStaffUserSid,
bv.riskStaffUserName, bv.riskStaffUserName,
@ -142,26 +246,30 @@
resultType="com.yxt.anrui.riskcenter.api.loanbecollectionrecord.LoanBeCollectionRecordVehInit"> resultType="com.yxt.anrui.riskcenter.api.loanbecollectionrecord.LoanBeCollectionRecordVehInit">
SELECT SELECT
RIGHT(a1.vinNo, 8) AS vinNo, RIGHT(a1.vinNo, 8) AS vinNo,
MAX(a1.customer) AS custName, -- 使用聚合函数确保分组正确 MAX(a1.customer) AS custName,
MAX(a1.mobile) AS custPhone, MAX(a1.mobile) AS custPhone,
a1.loanContractNo, a1.loanContractNo,
MAX(a1.bankContractNo) AS bankContractNo, MAX(a1.bankContractNo) AS bankContractNo,
MAX(a1.bankName) AS bankName, MAX(a1.bankName) AS bankName,
MAX(a1.borrowerName) AS loanName, MAX(a1.borrowerName) AS loanName,
MAX(a1.vehMark) AS carNum, MAX(a1.vehMark) AS carNum,
MIN(a1.dueDate) AS firstBeDate, -- 根据业务需求确定合适的聚合函数 MIN(CASE WHEN (a1.yq_total +
COUNT(a1.sid) AS beOverduePeriod, COALESCE(lbpv_agg.bankBeInter_sum, 0) +
COALESCE(lfd_agg.fund_sum, 0)) > 0
THEN a1.dueDate ELSE NULL END) AS firstBeDate,
SUM(CASE WHEN (a1.yq_total +
COALESCE(lbpv_agg.bankBeInter_sum, 0) +
COALESCE(lfd_agg.fund_sum, 0)) > 0 THEN 1 ELSE 0 END) AS beOverduePeriod,
ROUND( ROUND(
SUM(a1.yq_total) + IFNULL(MAX(a1.bankBeInter_sum), 0) + IFNULL(MAX(a1.fund_sum), 0), SUM(a1.yq_total) + IFNULL(MAX(lbpv_agg.bankBeInter_sum), 0) + IFNULL(MAX(lfd_agg.fund_sum), 0),
2 2
) AS beOverdueMoney, ) AS beOverdueMoney,
ROUND( ROUND(
(SUM(a1.yq_total) + IFNULL(MAX(a1.bankBeInter_sum), 0) + IFNULL(MAX(a1.fund_sum), 0)) / MAX(a1.qjyh), (SUM(a1.yq_total) + IFNULL(MAX(lbpv_agg.bankBeInter_sum), 0) + IFNULL(MAX(lfd_agg.fund_sum), 0)) / MAX(a1.qjyh),
2 2
) AS beOverdueMoneyAndPeriod, ) AS beOverdueMoneyAndPeriod,
a1.busVinSid AS saleVehSid, a1.busVinSid AS saleVehSid,
MAX(a1.salesOrderSid) AS salesOrderSid, MAX(a1.salesOrderSid) AS salesOrderSid,
MAX(a1.lockCarState) AS lockCarState,
a1.nowOverdue a1.nowOverdue
FROM ( FROM (
SELECT SELECT
@ -177,14 +285,11 @@
lrpd.dueMoney, lrpd.dueMoney,
(IFNULL(lrs.mainMidRepay, 0) + IFNULL(lrs.otherMidRepay, 0)) AS qjyh, (IFNULL(lrs.mainMidRepay, 0) + IFNULL(lrs.otherMidRepay, 0)) AS qjyh,
(lrpd.dueMoney - SUM(IFNULL(lrh.actualMoney, 0))) AS yq_total, (lrpd.dueMoney - SUM(IFNULL(lrh.actualMoney, 0))) AS yq_total,
lbpv_agg.bankBeInter_sum,
lfd_agg.fund_sum,
lrpd.customer, lrpd.customer,
ct.mobile, ct.mobile,
lrpd.borrowerSid, lrpd.borrowerSid,
lrpd.salesOrderSid, lrpd.salesOrderSid,
lbcv_agg.lockCarState, IF(lrpd.dueDate &lt;= lrpd.updateTime,0,1) AS nowOverdue
if(lrpd.dueDate &lt;= lrpd.updateTime,0,1) as nowOverdue
FROM FROM
loan_repayment_plan_details lrpd loan_repayment_plan_details lrpd
LEFT JOIN loan_repayment_history lrh LEFT JOIN loan_repayment_history lrh
@ -193,58 +298,43 @@
ON lrpd.scheduleSid = lrs.sid ON lrpd.scheduleSid = lrs.sid
LEFT JOIN anrui_crm.crm_customer_temp ct LEFT JOIN anrui_crm.crm_customer_temp ct
ON lrpd.customerSid = ct.sid ON lrpd.customerSid = ct.sid
LEFT JOIN (
SELECT
saleVehSid,
CASE lockCarState
WHEN 0 THEN '未控制'
WHEN 1 THEN '控制成功'
WHEN 2 THEN '控制失败'
WHEN 3 THEN '已解控'
END AS lockCarState
FROM (
SELECT
lbcv.saleVehSid,
lbcv.lockCarState,
ROW_NUMBER() OVER (
PARTITION BY lbcv.saleVehSid
ORDER BY lbca.createTime DESC
) AS rn
FROM loan_be_collection_veh lbcv
LEFT JOIN loan_be_collection_apply lbca
ON lbca.sid = lbcv.mainSid
WHERE WHERE
lbca.collMeasure LIKE '%远程控制%' lrpd.dueDate &lt; CURDATE()
AND lbca.nodeState = '已办结' GROUP BY
) t WHERE rn = 1 lrpd.sid
) lbcv_agg ) a1
ON lbcv_agg.saleVehSid = lrpd.busVinSid
LEFT JOIN ( LEFT JOIN (
SELECT SELECT
saleVehSid, saleVehSid,
SUM(bankBeInter) AS bankBeInter_sum SUM(bankBeInter) AS bankBeInter_sum
FROM loan_be_padsincere_veh FROM loan_be_padsincere_veh
GROUP BY saleVehSid GROUP BY saleVehSid
) lbpv_agg ) lbpv_agg ON lbpv_agg.saleVehSid = a1.busVinSid
ON lbpv_agg.saleVehSid = lrpd.busVinSid
LEFT JOIN ( LEFT JOIN (
SELECT SELECT
lrpd_sub.busVinSid, lp.busVinSid,
SUM(lfd.fund) AS fund_sum SUM(fjj.reveivableMoney - fjj.m) AS fund_sum
FROM loan_fund_day lfd FROM (
JOIN loan_repayment_plan_details lrpd_sub SELECT
ON lfd.busSid = lrpd_sub.sid IFNULL((
WHERE SELECT SUM(subscriptionMoney)
lrpd_sub.dueDate &lt; CURDATE() FROM anrui_fin.fin_selected_receivables_detailed s
GROUP BY WHERE s.auditState = '3'
lrpd_sub.busVinSid AND s.receivablesSid = fj.sid
) lfd_agg ), 0) AS m,
ON lfd_agg.busVinSid = lrpd.busVinSid fj.*
WHERE FROM (
lrpd.dueDate &lt; CURDATE() SELECT j.busSid, j.sid, j.reveivableMoney
GROUP BY FROM anrui_fin.fin_uncollected_receivables_detailed_jr j
lrpd.sid WHERE j.payCostTitleKey = '006'
) a1 ) fj
) fjj
LEFT JOIN loan_repayment_plan_details lp
ON lp.sid = fjj.busSid
WHERE lp.dueDate &lt;= lp.updateTime
AND lp.busVinSid IS NOT NULL
GROUP BY lp.busVinSid
) lfd_agg ON lfd_agg.busVinSid = a1.busVinSid
WHERE WHERE
a1.borrowerSid = #{borrowerSid} a1.borrowerSid = #{borrowerSid}
AND a1.nowOverdue = 0 AND a1.nowOverdue = 0
@ -283,7 +373,9 @@
a1.bankContractNo, a1.bankContractNo,
a1.dueMoney AS bankMonthRep, a1.dueMoney AS bankMonthRep,
MIN(a1.dueDate) AS firstBeDate, -- 改为取最早逾期日期 MIN(a1.dueDate) AS firstBeDate, -- 改为取最早逾期日期
COUNT(a1.sid) AS beOverduePeriod, SUM(CASE WHEN (a1.yq_total +
COALESCE(lbpv_sum.bankBeInter_sum, 0) +
COALESCE(lfd_sum.fund_sum, 0)) > 0 THEN 1 ELSE 0 END) AS beOverduePeriod,
ROUND(SUM(a1.yq_total) + ROUND(SUM(a1.yq_total) +
COALESCE(lbpv_sum.bankBeInter_sum, 0) + COALESCE(lbpv_sum.bankBeInter_sum, 0) +
CAST(COALESCE(lfd_sum.fund_sum, 0) AS DECIMAL(10,2)),2) AS beOverdueMoney, CAST(COALESCE(lfd_sum.fund_sum, 0) AS DECIMAL(10,2)),2) AS beOverdueMoney,

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

@ -91,12 +91,6 @@ public class LoanBeOverdueVehService {
if (StringUtils.isNotBlank(query.getCarNum())) { if (StringUtils.isNotBlank(query.getCarNum())) {
qw.like("a1.vehMark", query.getCarNum()); qw.like("a1.vehMark", query.getCarNum());
} }
if (StringUtils.isNotBlank(query.getBankName())) {
qw.like("a1.bankName", query.getBankName());
}
if (StringUtils.isNotBlank(query.getBankContractNo())) {
qw.like("a1.bankContractNo", query.getBankContractNo());
}
if (StringUtils.isNotBlank(query.getRiskStaffName())) { if (StringUtils.isNotBlank(query.getRiskStaffName())) {
qw.like("a1.riskStaffUserName", query.getRiskStaffName()); qw.like("a1.riskStaffUserName", query.getRiskStaffName());
} }
@ -153,12 +147,6 @@ public class LoanBeOverdueVehService {
if (StringUtils.isNotBlank(query.getCarNum())) { if (StringUtils.isNotBlank(query.getCarNum())) {
qw.like("a1.vehMark", query.getCarNum()); qw.like("a1.vehMark", query.getCarNum());
} }
if (StringUtils.isNotBlank(query.getBankName())) {
qw.like("a1.bankName", query.getBankName());
}
if (StringUtils.isNotBlank(query.getBankContractNo())) {
qw.like("a1.bankContractNo", query.getBankContractNo());
}
if (StringUtils.isNotBlank(query.getVinNo())) { if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("a1.vinNo", query.getVinNo()); qw.like("a1.vinNo", query.getVinNo());
} }
@ -185,7 +173,7 @@ public class LoanBeOverdueVehService {
} }
qw.having("beOverdueMoney > {0}", 0); qw.having("beOverdueMoney > {0}", 0);
IPage<LoanBeOverdueVehVo> page = PagerUtil.queryToPage(pq); IPage<LoanBeOverdueVehVo> page = PagerUtil.queryToPage(pq);
IPage<LoanBeOverdueVehVo> pagging = loanBeOverdueVehMapper.selectPageVo(page, qw); IPage<LoanBeOverdueVehVo> pagging = loanBeOverdueVehMapper.riskListPage(page, qw);
PagerVo<LoanBeOverdueVehVo> p = PagerUtil.pageToVo(pagging, null); PagerVo<LoanBeOverdueVehVo> p = PagerUtil.pageToVo(pagging, null);
return p; return p;
} }
@ -271,12 +259,6 @@ public class LoanBeOverdueVehService {
if (StringUtils.isNotBlank(query.getCarNum())) { if (StringUtils.isNotBlank(query.getCarNum())) {
qw.like("a1.vehMark", query.getCarNum()); qw.like("a1.vehMark", query.getCarNum());
} }
if (StringUtils.isNotBlank(query.getBankName())) {
qw.like("a1.bankName", query.getBankName());
}
if (StringUtils.isNotBlank(query.getBankContractNo())) {
qw.like("a1.bankContractNo", query.getBankContractNo());
}
if (StringUtils.isNotBlank(query.getRiskStaffName())) { if (StringUtils.isNotBlank(query.getRiskStaffName())) {
qw.like("a1.riskStaffUserName", query.getRiskStaffName()); qw.like("a1.riskStaffUserName", query.getRiskStaffName());
} }

14
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java

@ -45,6 +45,7 @@ import com.yxt.anrui.riskcenter.api.loanredemptionapply.flow.*;
import com.yxt.anrui.riskcenter.api.loanredemptionveh.LoanRedemptionVeh; import com.yxt.anrui.riskcenter.api.loanredemptionveh.LoanRedemptionVeh;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.AlrepaidAndArrVo; import com.yxt.anrui.riskcenter.api.loanrestorereportapply.AlrepaidAndArrVo;
import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger; import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger;
import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVeh;
import com.yxt.anrui.riskcenter.api.loansubletapply.VehDisposal; import com.yxt.anrui.riskcenter.api.loansubletapply.VehDisposal;
import com.yxt.anrui.riskcenter.biz.loanbuckleapplyrecord.LoanBuckleApplyRecordService; import com.yxt.anrui.riskcenter.biz.loanbuckleapplyrecord.LoanBuckleApplyRecordService;
import com.yxt.anrui.riskcenter.biz.loanfile.LoanFileService; import com.yxt.anrui.riskcenter.biz.loanfile.LoanFileService;
@ -53,6 +54,7 @@ import com.yxt.anrui.riskcenter.biz.loanredemptionveh.LoanRedemptionVehService;
import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService; import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService;
import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService; import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService;
import com.yxt.anrui.riskcenter.biz.loanrestorereportapply.LoanRestoreReportApplyService; import com.yxt.anrui.riskcenter.biz.loanrestorereportapply.LoanRestoreReportApplyService;
import com.yxt.anrui.riskcenter.biz.loanreturnvehledger.LoanReturnVehLedgerService;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -114,6 +116,8 @@ public class LoanRedemptionApplyService extends MybatisBaseService<LoanRedemptio
private CrmCustomerTempFeign crmCustomerTempFeign; private CrmCustomerTempFeign crmCustomerTempFeign;
@Autowired @Autowired
private FinUncollectedReceivablesDetailedJRFeign finUncollectedReceivablesDetailedJRFeign; private FinUncollectedReceivablesDetailedJRFeign finUncollectedReceivablesDetailedJRFeign;
@Autowired
private LoanReturnVehLedgerService loanReturnVehLedgerService;
public PagerVo<LoanRedemptionApplyVo> listPage(PagerQuery<LoanRedemptionApplyQuery> pq) { public PagerVo<LoanRedemptionApplyVo> listPage(PagerQuery<LoanRedemptionApplyQuery> pq) {
IPage<LoanRedemptionApply> page = PagerUtil.queryToPage(pq); IPage<LoanRedemptionApply> page = PagerUtil.queryToPage(pq);
@ -798,6 +802,16 @@ public class LoanRedemptionApplyService extends MybatisBaseService<LoanRedemptio
FinUncollectedReceivablesDetailedJR finUncollectedReceivablesDetailedJR = new FinUncollectedReceivablesDetailedJR(); FinUncollectedReceivablesDetailedJR finUncollectedReceivablesDetailedJR = new FinUncollectedReceivablesDetailedJR();
finUncollectedReceivablesDetailedJR.setCreateByName(redemptionApply.getApplyName()); finUncollectedReceivablesDetailedJR.setCreateByName(redemptionApply.getApplyName());
finUncollectedReceivablesDetailedJR.setCreateBySid(redemptionApply.getCreateBySid()); finUncollectedReceivablesDetailedJR.setCreateBySid(redemptionApply.getCreateBySid());
redemptionVinLists.removeAll(Collections.singleton(null));
if (!redemptionVinLists.isEmpty()) {
for (int j = 0; j < redemptionVinLists.size(); j++) {
RedemptionVinList redemptionVinList = redemptionVinLists.get(j);
LoanReturnVehLedger loanReturnVehLedger = loanReturnVehLedgerService.fetchBySid(redemptionVinList.getLedgerSid());
loanReturnVehLedger.setDisposal("客户赎回");
loanReturnVehLedger.setDisposalKey("02");
loanReturnVehLedgerService.updateById(loanReturnVehLedger);
}
}
//查询销售订单信息 //查询销售订单信息
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.fetchBySalesOrderVehiclerSid(redemptionVinLists.get(0).getBusVinSid()).getData(); BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.fetchBySalesOrderVehiclerSid(redemptionVinLists.get(0).getBusVinSid()).getData();
BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData(); BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData();

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

@ -10,6 +10,7 @@ import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerQuery
import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerVo; import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
/** /**
* @description: * @description:

14
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansubletapply/LoanSubletApplyService.java

@ -47,6 +47,7 @@ import com.yxt.anrui.riskcenter.biz.loanoutboundapply.LoanOutboundApplyService;
import com.yxt.anrui.riskcenter.biz.loanredemptionapply.LoanRedemptionApplyService; import com.yxt.anrui.riskcenter.biz.loanredemptionapply.LoanRedemptionApplyService;
import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService; import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService;
import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService; import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService;
import com.yxt.anrui.riskcenter.biz.loanreturnvehledger.LoanReturnVehLedgerService;
import com.yxt.anrui.riskcenter.biz.loansubletveh.LoanSubletVehService; import com.yxt.anrui.riskcenter.biz.loansubletveh.LoanSubletVehService;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
@ -101,6 +102,8 @@ public class LoanSubletApplyService extends MybatisBaseService<LoanSubletApplyMa
private LoanOutboundApplyService loanOutboundApplyService; private LoanOutboundApplyService loanOutboundApplyService;
@Autowired @Autowired
private CrmCustomerTempFeign crmCustomerTempFeign; private CrmCustomerTempFeign crmCustomerTempFeign;
@Autowired
private LoanReturnVehLedgerService loanReturnVehLedgerService;
public PagerVo<LoanSubletApplyVo> listPage(PagerQuery<LoanSubletApplyQuery> pq) { public PagerVo<LoanSubletApplyVo> listPage(PagerQuery<LoanSubletApplyQuery> pq) {
IPage<LoanSubletApply> page = PagerUtil.queryToPage(pq); IPage<LoanSubletApply> page = PagerUtil.queryToPage(pq);
@ -682,6 +685,17 @@ public class LoanSubletApplyService extends MybatisBaseService<LoanSubletApplyMa
LoanSubletApply subletApply = fetchBySid(businessSid); LoanSubletApply subletApply = fetchBySid(businessSid);
subletApply.setClosingDate(new DateTime()); subletApply.setClosingDate(new DateTime());
baseMapper.updateById(subletApply); baseMapper.updateById(subletApply);
List<SubletVinList> subletVinLists = loanSubletVehService.selByMainSid(businessSid);
subletVinLists.removeAll(Collections.singleton(null));
if (!subletVinLists.isEmpty()) {
for (int j = 0; j < subletVinLists.size(); j++) {
SubletVinList subletVinList = subletVinLists.get(j);
LoanReturnVehLedger loanReturnVehLedger = loanReturnVehLedgerService.fetchBySid(subletVinList.getLedgerSid());
loanReturnVehLedger.setDisposal("二次转租");
loanReturnVehLedger.setDisposalKey("04");
loanReturnVehLedgerService.updateById(loanReturnVehLedger);
}
}
try { try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build(); .setNameFormat("demo-pool-%d").build();

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.xml

@ -47,7 +47,7 @@
WHEN n.alreadyMoney = 0 THEN'未调整' WHEN n.alreadyMoney = 0 THEN'未调整'
WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整' WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整'
WHEN n.nowDiffAmount = 0 THEN'已调整' WHEN n.nowDiffAmount = 0 THEN'已调整'
END AS `state` END AS state
FROM FROM
(SELECT (SELECT
a.sid as checkApplySid, a.sid as checkApplySid,
@ -73,7 +73,7 @@
scm_vehrebate_checkapplydetail AS d scm_vehrebate_checkapplydetail AS d
LEFT JOIN scm_vehrebate_checkapply as a ON d.mainSid = a.sid LEFT JOIN scm_vehrebate_checkapply as a ON d.mainSid = a.sid
LEFT JOIN scm_veh_rebate as r ON d.vehRebateSid = r.sid LEFT JOIN scm_veh_rebate as r ON d.vehRebateSid = r.sid
WHERE r.adjustmentMoney &lt; 0 AND a.nodeState = '已办结' AND d.rebateTypeValue = '金融贴息') as n WHERE r.adjustmentMoney &lt; 0 AND a.nodeState = '已办结' AND d.rebateTypeValue = '金融贴息' AND d.isAdjustment = '是') as n
LEFT JOIN anrui_buscenter.bus_sales_order as bo ON n.orderSid = bo.sid LEFT JOIN anrui_buscenter.bus_sales_order as bo ON n.orderSid = bo.sid
<where> ${ew.sqlSegment} </where> <where> ${ew.sqlSegment} </where>
</select> </select>
@ -85,7 +85,7 @@
WHEN n.alreadyMoney = 0 THEN'未调整' WHEN n.alreadyMoney = 0 THEN'未调整'
WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整' WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整'
WHEN n.nowDiffAmount = 0 THEN'已调整' WHEN n.nowDiffAmount = 0 THEN'已调整'
END AS `state` END AS state
FROM FROM
(SELECT (SELECT
a.sid as checkApplySid, a.sid as checkApplySid,

2
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapply/ScmVehrebateCheckapplyService.java

@ -833,7 +833,7 @@ public class ScmVehrebateCheckapplyService extends MybatisBaseService<ScmVehreba
if (rebate.getIsAdjustment().equals("是")) { if (rebate.getIsAdjustment().equals("是")) {
if (StringUtils.isNotBlank(rebate.getAdjustmentMoney())) { if (StringUtils.isNotBlank(rebate.getAdjustmentMoney())) {
BigDecimal adMoney = new BigDecimal(rebate.getAdjustmentMoney()); BigDecimal adMoney = new BigDecimal(rebate.getAdjustmentMoney());
if (adMoney.compareTo(BigDecimal.ZERO) != 0) { if (adMoney.compareTo(BigDecimal.ZERO) == 1) {
CostAdjustmentsBill.CostAdjustmentsBillDetailDto dto = new CostAdjustmentsBill.CostAdjustmentsBillDetailDto(); CostAdjustmentsBill.CostAdjustmentsBillDetailDto dto = new CostAdjustmentsBill.CostAdjustmentsBillDetailDto();
dto.setCompanyCode(useOrgCode); dto.setCompanyCode(useOrgCode);
dto.setMaterialID(vinCode); dto.setMaterialID(vinCode);

Loading…
Cancel
Save