From 697c8c33055701d14e6202a2f7203b442448aabb Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 14:20:00 +0800 Subject: [PATCH 01/12] =?UTF-8?q?=E9=80=BE=E6=9C=9F=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E8=BD=A6=E8=BE=86=E5=88=97=E8=A1=A8=E4=BA=A4=E5=9B=9E=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanVehClearanceApplyMapper.java | 2 + .../LoanVehClearanceApplyMapper.xml | 118 +++++++++++++++++- .../LoanVehClearanceApplyService.java | 2 +- 3 files changed, 120 insertions(+), 2 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.java index 91365f6d02..13ef0c6b0c 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.java @@ -76,4 +76,6 @@ public interface LoanVehClearanceApplyMapper extends BaseMapper map); int selectBySid(String join); + + LoanVehClearanceVehInit initVehListBySaleVehSidYCJK(String saleVehSid); } \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml index e3e1b5072c..1001764956 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml @@ -154,7 +154,6 @@ GROUP BY lrpd.`sid` HAVING (yq_total > 0)) a1 WHERE a1.busVinSid = #{saleVehSid} - AND a1.lockCarState = '1' GROUP BY a1.loanContractNo, a1.vinNo, a1.busVinSid @@ -181,4 +180,121 @@ WHERE nodeState != '待提交' and find_in_set(sid, #{list}) + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java index f8270c111f..d3dc35c50d 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java @@ -410,7 +410,7 @@ public class LoanVehClearanceApplyService extends MybatisBaseService loanVehClearanceVehDetailsVoList = new ArrayList<>(); for (String saleVehSid : saleVehSids) { - LoanVehClearanceVehInit loanVehClearanceVehInit = baseMapper.initVehListBySaleVehSid(saleVehSid); + LoanVehClearanceVehInit loanVehClearanceVehInit = baseMapper.initVehListBySaleVehSidYCJK(saleVehSid); LoanVehClearanceVehDetailsVo loanVehClearanceVehDetailsVo = new LoanVehClearanceVehDetailsVo(); BeanUtil.copyProperties(loanVehClearanceVehInit, loanVehClearanceVehDetailsVo); loanVehClearanceVehDetailsVo.setCustomerName(loanVehClearanceVehInit.getCustName()); From b1c64c1f9e326222985c369619cb493624e94a34 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Wed, 24 Jan 2024 09:48:00 +0800 Subject: [PATCH 02/12] =?UTF-8?q?=E4=BB=A3=E4=BB=98=E6=AC=BE=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=8E=A8=E9=80=81=E8=BD=AC=E4=BB=98=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E5=8F=8A=E6=89=93=E5=8D=B0=E9=80=80=E6=96=99=E5=8D=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinPaymentrecordService.java | 16 ++++- .../LoanTransferPaymentApplyFeign.java | 10 ++++ ...LoanTransferPaymentApplyFeignFallback.java | 10 ++++ .../LoanTransferPaymentApplyRest.java | 10 ++++ .../LoanTransferPaymentApplyService.java | 58 ++++++++++++++++--- .../LoanTransferPaymentRecordMapper.java | 2 + .../LoanTransferPaymentRecordMapper.xml | 9 ++- .../LoanTransferPaymentRecordService.java | 4 ++ .../ScmApplyInboundVehQueryMapper.java | 4 +- 9 files changed, 110 insertions(+), 13 deletions(-) diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java index f0befe8bd4..37cdfa5550 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java @@ -76,6 +76,7 @@ import com.yxt.anrui.riskcenter.api.loanbepadsincereveh.LoanBePadsincereVehFeign import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetails; import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetailsFeign; import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanMoneyVo; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyFeign; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.ConstantUtils; @@ -166,6 +167,8 @@ public class FinPaymentrecordService extends MybatisBaseService listPageVo(PagerQuery pq) { FinPaymentrecordQuery query = pq.getParams(); @@ -366,7 +369,7 @@ public class FinPaymentrecordService extends MybatisBaseService loanBePadsincereVehDetailsVos = loanBePadsincereVehFeign.selByMainSid(finPaymentrecord.getBusSid()).getData(); for (LoanBePadsincereVehDetailsVo loanBePadsincereVehDetailsVo : loanBePadsincereVehDetailsVos) { log.info("车辆sid++++++++++++++++++++++++++++++++++++++++++" + loanBePadsincereVehDetailsVo.getBusVinSid()); @@ -375,7 +378,7 @@ public class FinPaymentrecordService extends MybatisBaseService { + loanTransferPaymentApplyFeign.pushPaymentRecord(finPaymentrecord.getBusSid(), finPaymentrecord.getSid()); + }); + Future future2 = pool.submit(() -> { + loanTransferPaymentApplyFeign.pushPaymentVoucher(finPaymentrecord.getBusSid(), finPaymentrecord.getSid()); + }); } } catch (Exception e) { e.printStackTrace(); diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java index fd5c41209f..21141c1492 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java @@ -54,6 +54,16 @@ public interface LoanTransferPaymentApplyFeign { public ResultBean deleteBySids(@RequestBody String[] sids); + @ApiOperation("推送转付记录") + @PostMapping("/pushPaymentRecord") + @ResponseBody + public ResultBean pushPaymentRecord(@RequestParam("sid") String sid, @RequestParam("paySid") String paySid); + + @ApiOperation("推送财务代付款凭证") + @PostMapping("/pushPaymentVoucher") + @ResponseBody + public ResultBean pushPaymentVoucher(@RequestParam("sid") String sid, @RequestParam("paySid") String paySid); + //---------------------------流程--------------------------------------- @ApiOperation("提交") diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java index ddeeca1a69..5cb14eb0c4 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java @@ -40,6 +40,16 @@ public class LoanTransferPaymentApplyFeignFallback implements LoanTransferPaymen return null; } + @Override + public ResultBean pushPaymentRecord(String sid, String paySid) { + return null; + } + + @Override + public ResultBean pushPaymentVoucher(String sid, String paySid) { + return null; + } + @Override public ResultBean submitRecordApplication(SubmitTransferDto dto) { return null; diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java index 91fc8518bf..54778b99b9 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java @@ -54,6 +54,16 @@ public class LoanTransferPaymentApplyRest implements LoanTransferPaymentApplyFei return loanTransferPaymentApplyService.deleteBySids(sids); } + @Override + public ResultBean pushPaymentRecord(String sid, String paySid) { + return loanTransferPaymentApplyService.pushPaymentRecord(sid,paySid); + } + + @Override + public ResultBean pushPaymentVoucher(String sid, String paySid) { + return loanTransferPaymentApplyService.pushPaymentVoucher(sid,paySid); + } + @Override public ResultBean submitRecordApplication(SubmitTransferDto dto) { return loanTransferPaymentApplyService.submitRecordApplication(dto); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java index 4c19e7f6f7..39103693de 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java @@ -187,6 +187,9 @@ public class LoanTransferPaymentApplyService extends MybatisBaseService saveTransferPayment(LoanTransferPaymentApplyDto dto) { ResultBean rb = ResultBean.fireFail(); String sid = ""; + if (StringUtils.isBlank(dto.getPayFormKey())) { + return rb.setMsg("请选择财务付款形式"); + } if (StringUtils.isNotBlank(dto.getSid())) { sid = dto.getSid(); LoanTransferPaymentApply updateEntity = fetchBySid(sid); @@ -629,11 +632,11 @@ public class LoanTransferPaymentApplyService extends MybatisBaseService setConOrNumber = new HashSet<>(); for (LoanTransferPaymentRecord applyRecord : loanTransferPaymentRecords) { LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); -// if (null != repaymentHistory) { -// repaymentHistory.setPaymentStateKey("003"); -// repaymentHistory.setPaymentState("已转付"); -// repaymentHistory.setTransferDate(new DateTime()); -// loanRepaymentHistoryService.updateById(repaymentHistory); + if (null != repaymentHistory) { + repaymentHistory.setPaymentStateKey("003"); + repaymentHistory.setPaymentState("已转付"); + repaymentHistory.setTransferDate(new DateTime()); + loanRepaymentHistoryService.updateById(repaymentHistory); // //推送转付还款记录 // LoanRepaymentHistory transfer = new LoanRepaymentHistory(); // transfer.setScheduleSid(repaymentHistory.getScheduleSid()); @@ -656,7 +659,7 @@ public class LoanTransferPaymentApplyService extends MybatisBaseService records = loanTransferPaymentRecordService.selByMainSid(businessSid); + public ResultBean pushPaymentRecord(String sid, String paySid) { + ResultBean rb = ResultBean.fireFail(); + List records = loanTransferPaymentRecordService.selByMainSidAndPaySid(sid, paySid); + if (!records.isEmpty()) { + for (LoanTransferPaymentRecord applyRecord : records) { + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); + if (null != repaymentHistory) { + //推送转付还款记录 + LoanRepaymentHistory transfer = new LoanRepaymentHistory(); + transfer.setScheduleSid(repaymentHistory.getScheduleSid()); + transfer.setPlanDetailSid(repaymentHistory.getPlanDetailSid()); + transfer.setReturnWay("转付"); + transfer.setReturnWayKey("03"); + transfer.setActualDate(new Date()); + transfer.setDataTime(new DateTime()); + transfer.setBuckleKey("001"); + transfer.setBuckle("未申请"); + transfer.setUpdateState("1"); + transfer.setUpdateTime(new DateTime()); + BigDecimal money = new BigDecimal(0); + if (null != applyRecord.getTransferPrincipal()) { + money = applyRecord.getTransferPrincipal(); + } + if (null != applyRecord.getDefaultInterest()) { + money = applyRecord.getDefaultInterest().add(money); + } + String amount = String.valueOf(money); + transfer.setActualMoney(new BigDecimal("-" + amount)); + loanRepaymentHistoryService.insert(transfer); + } + } + } + return rb.success(); + } + + public ResultBean pushPaymentVoucher(String sid, String paySid) { + ResultBean rb = ResultBean.fireFail(); + List records = loanTransferPaymentRecordService.selByMainSidAndPaySid(sid, paySid); if (!records.isEmpty()) { PaymentVoucher paymentVoucher = new PaymentVoucher(); List voucherDetails = new ArrayList<>(); @@ -889,6 +928,7 @@ public class LoanTransferPaymentApplyService extends MybatisBaseService selByMainSid(String mainSid); LoanTransferPaymentRecord selByBankContractNo(String bankContractNo); + + List selByMainSidAndPaySid(@Param("sid") String sid, @Param("paySid") String paySid); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml index 0cd9056059..c310d43514 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml @@ -21,7 +21,14 @@ LEFT JOIN loan_repayment_plan_details AS p ON h.planDetailSid = p.sid LEFT JOIN loan_transfer_payment_record AS r ON h.sid = r.repaymentHistorySid WHERE p.bankContractNo = #{bankContractNo} - and r.state = 1 + and r.state = 1 ORDER BY r.createTime DESC LIMIT 1 + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java index d272380066..e2ec9cc311 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java @@ -27,4 +27,8 @@ public class LoanTransferPaymentRecordService extends MybatisBaseService selByMainSidAndPaySid(String sid, String paySid) { + return baseMapper.selByMainSidAndPaySid(sid,paySid); + } } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinboundvehquery/ScmApplyInboundVehQueryMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinboundvehquery/ScmApplyInboundVehQueryMapper.java index 7455ba5971..9fb5fc19d4 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinboundvehquery/ScmApplyInboundVehQueryMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinboundvehquery/ScmApplyInboundVehQueryMapper.java @@ -67,6 +67,6 @@ public interface ScmApplyInboundVehQueryMapper extends BaseMapper fetchByMainSid(String cgrkdSid); - @Select("SELECT * FROM scm_apply_inbound_veh_query WHERE vinNo LIKE #{vinNo}") - ScmApplyInboundVehQueryDetailsVo fetchDetailsByVinNo(String vinNo); + @Select("SELECT * FROM scm_apply_inbound_veh_query WHERE vinNo LIKE CONCAT('%',#{vinNo},'%')") + ScmApplyInboundVehQueryDetailsVo fetchDetailsByVinNo(@Param("vinNo") String vinNo); } \ No newline at end of file From c4fa86186a1c6fe0653be03847a4195f56f0b84b Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 14:44:05 +0800 Subject: [PATCH 03/12] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=B7=B2=E8=BF=98?= =?UTF-8?q?=E6=AC=A0=E6=AC=BE=E6=83=85=E5=86=B5=E8=B5=84=E9=87=91=E5=8D=A0?= =?UTF-8?q?=E7=94=A8=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanRestoreReportApplyMapper.xml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml index 2272a84b51..a5f510f0b5 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml @@ -101,14 +101,14 @@ (IFNULL(SUM(ss.yq_total), 0) + IFNULL( (SELECT - SUM(lbpv.`bankBeInter`) + IFNULL(SUM(lbpv.`bankBeInter`),0) FROM loan_be_padsincere_veh lbpv WHERE lbpv.saleVehSid = ss.busVinSid), 0 ) + IFNULL( (SELECT - SUM(fund) + IFNULL(SUM(fund),0) FROM loan_fund_day WHERE busSid IN @@ -116,8 +116,7 @@ lrpd.sid FROM loan_repayment_plan_details lrpd - WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE() - AND lrpd.`busVinSid` = #{saleVehSid})), + WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE())), 0 ) ) AS beMoney @@ -147,8 +146,7 @@ lrpd.sid FROM loan_repayment_plan_details lrpd - WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE() - AND lrpd.`busVinSid` = #{saleVehSid}) + WHERE DATE_FORMAT(lrpd.dueDate, '%Y-%m-%d') < CURDATE()) SELECT * FROM base_vehicle - WHERE vinNo = #{vinNo} + WHERE vinNo like concat('%',#{vinNo},'%') AND useOrgSid = #{useOrgSid} AND isDelete = 0 AND vehicleState != "0004" From 6424c1a132ed74862ca3bb9504b1317df9c66d69 Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 15:12:56 +0800 Subject: [PATCH 05/12] =?UTF-8?q?=E9=80=BE=E6=9C=9F=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BA=A4=E5=9B=9E=E6=8A=A5=E5=A4=87=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96sql=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanRestoreReportCarInfo.java | 31 +++++ .../LoanRestoreReportApplyMapper.java | 3 + .../LoanRestoreReportApplyMapper.xml | 32 +++++ .../LoanRestoreReportApplyService.java | 17 ++- .../LoanVehClearanceApplyMapper.java | 2 - .../LoanVehClearanceApplyMapper.xml | 116 ------------------ .../LoanVehClearanceApplyService.java | 5 - 7 files changed, 74 insertions(+), 132 deletions(-) create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportCarInfo.java diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportCarInfo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportCarInfo.java new file mode 100644 index 0000000000..f853ba142a --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportCarInfo.java @@ -0,0 +1,31 @@ +package com.yxt.anrui.riskcenter.api.loanrestorereportapply; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehFile; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/* +* 交回报备逾期车辆信息 +* */ +@Data +public class LoanRestoreReportCarInfo { + + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String carNum; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("客户名称") + private String custName; + @ApiModelProperty("贷款人") + private String loanName; +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.java index 2718c5706a..b7f6f5e1c0 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.java @@ -29,6 +29,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.riskcenter.api.loanrestorereportapply.LoanRestoreReportCarInfo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -85,4 +86,6 @@ public interface LoanRestoreReportApplyMapper extends BaseMapper + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyService.java index 8a682b9f4d..6c42d508c5 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyService.java @@ -338,19 +338,18 @@ public class LoanRestoreReportApplyService extends MybatisBaseService lockCarList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); - LoanVehClearanceVehInit initVehListBySaleVehSid(String saleVehSid); - int updateFlowFiled(Map map); int selectBySid(String join); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml index 1001764956..e923cdeac2 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml @@ -43,122 +43,6 @@ - - UPDATE loan_veh_clearance_apply SET nodeState=#{nodeState}, nodeSid=#{taskDefKey}, modifyTime = NOW() diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java index d3dc35c50d..c6d01933a6 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyService.java @@ -388,11 +388,6 @@ public class LoanVehClearanceApplyService extends MybatisBaseService saleVehSids = query.getSaleVehSids(); LoanVehClearanceApplyDetailsVo loanVehClearanceApplyDetailsVo = new LoanVehClearanceApplyDetailsVo(); From b074c67f6947e33200432dd1e3875694c1a3cac0 Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 15:15:34 +0800 Subject: [PATCH 06/12] =?UTF-8?q?=E9=80=BE=E6=9C=9F=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BA=A4=E5=9B=9E=E6=8A=A5=E5=A4=87=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96sql=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanRestoreReportFileVo.java | 16 ---------------- .../LoanVehClearanceVehFile.java | 16 ---------------- 2 files changed, 32 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportFileVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportFileVo.java index 87636a4855..e510f831b4 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportFileVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrestorereportapply/LoanRestoreReportFileVo.java @@ -25,26 +25,10 @@ *********************************************************/ package com.yxt.anrui.riskcenter.api.loanrestorereportapply; - import com.yxt.common.core.vo.Vo; -import io.swagger.annotations.ApiModel; import lombok.Data; -/** - * Project: anrui-riskcenter(催收措施申请)
- * File: LoanBeCollectionApplyVo.java
- * Class: com.yxt.anrui.riskcenter.api.loanbecollectionapply.LoanBeCollectionApplyVo
- * Description: 逾期催收申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2023-12-12 16:06:20
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Data -@ApiModel(value = "逾期催收申请 视图数据对象", description = "逾期催收申请 视图数据对象") public class LoanRestoreReportFileVo implements Vo { private String url; diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvehclearanceveh/LoanVehClearanceVehFile.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvehclearanceveh/LoanVehClearanceVehFile.java index 714fab0701..a6b8aae983 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvehclearanceveh/LoanVehClearanceVehFile.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvehclearanceveh/LoanVehClearanceVehFile.java @@ -25,28 +25,12 @@ *********************************************************/ package com.yxt.anrui.riskcenter.api.loanvehclearanceveh; - import com.yxt.common.core.vo.Vo; -import io.swagger.annotations.ApiModel; import lombok.Data; import java.util.List; -/** - * Project: anrui-riskcenter(催收措施申请)
- * File: LoanBeCollectionVehVo.java
- * Class: com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehVo
- * Description: 逾期催收车辆 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2023-12-12 16:06:20
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Data -@ApiModel(value = "逾期催收车辆 视图数据详情", description = "逾期催收车辆 视图数据详情") public class LoanVehClearanceVehFile implements Vo { private String name; From 92f134699eb9dec544abc9ee2b78d7ab6e4118b7 Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 15:25:15 +0800 Subject: [PATCH 07/12] =?UTF-8?q?=E9=80=BE=E6=9C=9F=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BA=A4=E5=9B=9E=E6=8A=A5=E5=A4=87=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96sql=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../loanrestorereportapply/LoanRestoreReportApplyMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml index 0d241c4a18..d3f44ed878 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrestorereportapply/LoanRestoreReportApplyMapper.xml @@ -77,12 +77,12 @@ + select sid + from loan_return_inbound_apply + where nodeState = '已办结' + and busVinSid = #{busVinSid} + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java index e3a2502b26..f7e890712e 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java @@ -267,6 +267,10 @@ public class LoanRedemptionApplyService extends MybatisBaseService Date: Wed, 24 Jan 2024 16:22:00 +0800 Subject: [PATCH 10/12] =?UTF-8?q?=E9=80=BE=E6=9C=9F=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E4=BA=A4=E5=9B=9E=E6=8A=A5=E5=A4=87=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96sql=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanVehClearanceApplyMapper.xml | 224 +++++++++--------- 1 file changed, 115 insertions(+), 109 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml index e923cdeac2..655f7d37d0 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanvehclearanceapply/LoanVehClearanceApplyMapper.xml @@ -68,117 +68,123 @@ \ No newline at end of file From f715ebf2e9c0d53fe0b5e5651ae35986d1f8cddc Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Wed, 24 Jan 2024 16:29:57 +0800 Subject: [PATCH 11/12] =?UTF-8?q?=E8=BF=9C=E7=A8=8B=E8=A7=A3=E6=8E=A7?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanBeCollectionVehMapper.java | 1 - .../loanbecollectionveh/LoanBeCollectionVehMapper.xml | 11 +++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehMapper.java index 3d9c0eb22a..89ea0dc890 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehMapper.java @@ -75,7 +75,6 @@ public interface LoanBeCollectionVehMapper extends BaseMapper + + \ No newline at end of file From 940e51e04f745ce20d88311896044c0259673d04 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Wed, 24 Jan 2024 17:49:26 +0800 Subject: [PATCH 12/12] =?UTF-8?q?=E4=BA=A4=E5=9B=9E=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E9=94=80=E5=94=AE=E9=83=A8=E5=88=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanSecondarySalesApplyDetailsQuery.java | 13 + .../LoanSecondarySalesApplyDetailsVo.java | 79 +++ .../LoanSecondarySalesApplyDto.java | 69 ++ .../LoanSecondarySalesApplyQuery.java | 37 ++ .../LoanSecondarySalesApplyVo.java | 45 ++ .../CompleteLoanSecondarySalesApplyDto.java | 23 + .../LoanSecondarySalesApplyDelegateQuery.java | 13 + .../LoanSecondarySalesApplyNodeQuery.java | 6 + .../LoanSecondarySalesApplyNodeVo.java | 12 + .../LoanSecondarySalesApplyTaskQuery.java | 31 + .../SubmitLoanSecondarySalesApplyDto.java | 8 + .../LoanSecondarySalesCostVo.java | 64 ++ .../LoanSecondarySalesVehVo.java | 28 + .../LoanSecondarySalesApplyMapper.java | 15 + .../LoanSecondarySalesApplyMapper.xml | 86 +++ .../LoanSecondarySalesApplyRest.java | 37 +- .../LoanSecondarySalesApplyService.java | 608 +++++++++++++++++- .../LoanSecondarySalesCostMapper.java | 4 + .../LoanSecondarySalesCostMapper.xml | 12 + .../LoanSecondarySalesCostService.java | 8 + .../LoanSecondarySalesVehMapper.java | 6 + .../LoanSecondarySalesVehMapper.xml | 18 + .../LoanSecondarySalesVehService.java | 10 + 23 files changed, 1219 insertions(+), 13 deletions(-) create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescost/LoanSecondarySalesCostVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesveh/LoanSecondarySalesVehVo.java diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsQuery.java index 7969f1d3af..198e8caaf0 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsQuery.java @@ -1,7 +1,11 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -9,4 +13,13 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyDetailsQuery { + + @ApiModelProperty("sid") + private String sid; + @ApiModelProperty("用户sid") + private String userSid; + @ApiModelProperty("机构全路径sid") + private String orgPath; + + private List chooseSidList = new ArrayList<>(); } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java index 61839199ce..401976b889 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDetailsVo.java @@ -1,7 +1,14 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply; +import com.yxt.anrui.riskcenter.api.loanoverduefin.UrlQuery; +import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -9,4 +16,76 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyDetailsVo { + + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请部门sid") + private String createDeptSid; + @ApiModelProperty("申请人") + private String createByName; + + @ApiModelProperty("申请日期") + private String createDate; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("停放地点") + private String locationName; + @ApiModelProperty("是否年检") + private String inspect; + @ApiModelProperty("年检情况") + private String inspectSituation; + @ApiModelProperty("是否已出保") + private String guaranteed; + @ApiModelProperty("保险情况") + private String insuranceSituation; + @ApiModelProperty("首次登记日期") + private String firstDate; + @ApiModelProperty("当前行驶公里数") + private String kilometerDriven; + @ApiModelProperty("其他车况说明") + private String illustrate; + @ApiModelProperty("车辆照片") + private List filesList = new ArrayList<>(); + @ApiModelProperty("已还金额") + private String alRepaidMoney; + @ApiModelProperty("当前逾期金额") + private String currentBeMoney; + @ApiModelProperty("其中资金占用费") + private String wheFundOccMoney; + @ApiModelProperty("未到期金额") + private String unexpiredMoney; + @ApiModelProperty("总期数") + private String nper; + @ApiModelProperty("当前期数") + private String currentPeriod; + @ApiModelProperty("已还金额换算期数") + private String alRepaidMoneyConPeriod; + @ApiModelProperty("逾期金额换算期数") + private String beOverdueMoneyAndPeriod; + @ApiModelProperty("车辆列表") + private List loanSecondarySalesVehVoList = new ArrayList<>(); + @ApiModelProperty("费用明细") + private LoanSecondarySalesCostVo loanSecondarySalesCost = new LoanSecondarySalesCostVo(); + + private String sid; + @ApiModelProperty("申请人sid") + private String userSid; + private String orgPath; + @ApiModelProperty(value = "任务id") + private String taskId; + @ApiModelProperty(value = "流程实例id") + private String procInstId; + private String useOrgSid; + + private String files; + + } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDto.java index d9289d92f0..e79c5bce5e 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDto.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyDto.java @@ -1,7 +1,14 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply; +import com.yxt.anrui.riskcenter.api.loanoverduefin.UrlQuery; +import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -9,4 +16,66 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyDto { + + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请部门sid") + private String createDeptSid; + @ApiModelProperty("申请人") + private String createByName; + + @ApiModelProperty("申请日期") + private String createDate; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("停放地点") + private String locationName; + @ApiModelProperty("是否年检") + private String inspect; + @ApiModelProperty("年检情况") + private String inspectSituation; + @ApiModelProperty("是否已出保") + private String guaranteed; + @ApiModelProperty("保险情况") + private String insuranceSituation; + @ApiModelProperty("首次登记日期") + private String firstDate; + @ApiModelProperty("当前行驶公里数") + private String kilometerDriven; + @ApiModelProperty("其他车况说明") + private String illustrate; + @ApiModelProperty("车辆照片") + private List fileList = new ArrayList<>(); + @ApiModelProperty("已还金额") + private String alRepaidMoney; + @ApiModelProperty("当前逾期金额") + private String currentBeMoney; + @ApiModelProperty("其中资金占用费") + private String wheFundOccMoney; + @ApiModelProperty("未到期金额") + private String unexpiredMoney; + @ApiModelProperty("总期数") + private String nper; + @ApiModelProperty("当前期数") + private String currentPeriod; + @ApiModelProperty("已还金额换算期数") + private String alRepaidMoneyConPeriod; + @ApiModelProperty("逾期金额换算期数") + private String beOverdueMoneyAndPeriod; + @ApiModelProperty("车辆列表") + private List loanSecondarySalesVehVoList = new ArrayList<>(); + @ApiModelProperty("费用明细") + private LoanSecondarySalesCostVo loanSecondarySalesCost = new LoanSecondarySalesCostVo(); + + private String sid; + + private String userSid; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyQuery.java index 1d583f8a6b..b9504309f6 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyQuery.java @@ -1,6 +1,7 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply; import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -11,4 +12,40 @@ import lombok.Data; @Data public class LoanSecondarySalesApplyQuery implements Query { private static final long serialVersionUID = -8173091575102397453L; + + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请人") + private String createByName; + @ApiModelProperty("申请日期开始") + private String createTimeStart; + @ApiModelProperty("申请日期结束") + private String createTimeEnd; + @ApiModelProperty("办结日期开始") + private String closeDateStart; + @ApiModelProperty("办结日期结束") + private String closeDateEnd; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("欠款合计(大于)") + private String arrearsAll; + + private String menuUrl; + private String orgPath; + + private String userSid; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyVo.java index de278c0cff..188efb5bfb 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyVo.java @@ -1,5 +1,6 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -9,4 +10,48 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyVo { + + @ApiModelProperty("sid") + private String sid; + @ApiModelProperty("流程状态") + private String nodeState; + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请人") + private String createByName; + @ApiModelProperty("申请日期") + private String createDate; + @ApiModelProperty("办结日期") + private String closeDate; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("欠款合计") + private String arrearsAll; + @ApiModelProperty("车辆售价") + private String vehPrice; + @ApiModelProperty("预计亏损金额") + private String lossPrice; + + @ApiModelProperty("是否允许点击办理,true允许,false不允许") + private boolean allowModify; + private String createBySid; + + @ApiModelProperty("流程定义id") + private String procDefId; + @ApiModelProperty("流程实例id") + private String procInstId; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/CompleteLoanSecondarySalesApplyDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/CompleteLoanSecondarySalesApplyDto.java index dd44eb4404..e79da2ed75 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/CompleteLoanSecondarySalesApplyDto.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/CompleteLoanSecondarySalesApplyDto.java @@ -1,7 +1,10 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; + /** * @description: * @author: dimengzhe @@ -9,4 +12,24 @@ import lombok.Data; **/ @Data public class CompleteLoanSecondarySalesApplyDto { + + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "用户全路径sid") + private String orgSidPath; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:instanceId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyDelegateQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyDelegateQuery.java index 47823a25ff..191c07ec38 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyDelegateQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyDelegateQuery.java @@ -1,5 +1,6 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -9,4 +10,16 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyDelegateQuery { + + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") +// @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeQuery.java index 8688e0bcf8..4185bc4f4e 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeQuery.java @@ -1,5 +1,6 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -9,4 +10,9 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyNodeQuery { + + @ApiModelProperty(value = "环节定义id") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeVo.java index 1b2a1609a4..d115d98a97 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyNodeVo.java @@ -1,7 +1,10 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -9,4 +12,13 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyNodeVo { + + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyTaskQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyTaskQuery.java index a0c26fe3e6..9c05838091 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyTaskQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/LoanSecondarySalesApplyTaskQuery.java @@ -1,7 +1,10 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; + /** * @description: * @author: dimengzhe @@ -9,4 +12,32 @@ import lombok.Data; **/ @Data public class LoanSecondarySalesApplyTaskQuery { + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + private String instanceId; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/SubmitLoanSecondarySalesApplyDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/SubmitLoanSecondarySalesApplyDto.java index 110f63151b..c79c265861 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/SubmitLoanSecondarySalesApplyDto.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/flowable/SubmitLoanSecondarySalesApplyDto.java @@ -1,11 +1,19 @@ package com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApplyDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; /** * @description: * @author: dimengzhe * @date: 2024/1/23 **/ +@Data public class SubmitLoanSecondarySalesApplyDto extends LoanSecondarySalesApplyDto { + + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescost/LoanSecondarySalesCostVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescost/LoanSecondarySalesCostVo.java new file mode 100644 index 0000000000..e52abb26e5 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescost/LoanSecondarySalesCostVo.java @@ -0,0 +1,64 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescost; + +import com.yxt.anrui.riskcenter.api.loanoverduefin.UrlQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/24 + **/ +@Data +public class LoanSecondarySalesCostVo { + + @ApiModelProperty("欠款合计") + private String arrearsAll; + @ApiModelProperty("贷款保证金") + private String loanDeposit; + @ApiModelProperty("车辆售价") + private String vehPrice; + @ApiModelProperty("催收费用") + private String collectionCost; + @ApiModelProperty("资方结清费用") + private String bankSettleCost; + @ApiModelProperty("资方结清费用承担方") + private String bankSettleCostAssume; + @ApiModelProperty("车辆违章费用") + private String vehicleViolationCost; + @ApiModelProperty("车辆违章费用承担方") + private String vehicleViolationCostAssume; + @ApiModelProperty("年检费") + private String inspectYearCost; + @ApiModelProperty("年检费承担方") + private String inspectYearCostAssume; + @ApiModelProperty("保险费") + private String insureCost; + @ApiModelProperty("保险费承担方") + private String insureCostAssume; + @ApiModelProperty("过户费") + private String ownershipCost; + @ApiModelProperty("过户费承担方") + private String ownershipCostAssume; + @ApiModelProperty("停车费") + private String stopCost; + @ApiModelProperty("停车费承担方") + private String stopCostAssume; + @ApiModelProperty("其他费用") + private String otherCost; + @ApiModelProperty("其他费用承担方") + private String otherCostAssume; + @ApiModelProperty("费用说明") + private String costDescription; + @ApiModelProperty("预计亏损金额") + private String lossPrice; + @ApiModelProperty("后续欠款处置方向") + private String debtDisposal; + @ApiModelProperty("附件") + private List files = new ArrayList<>(); + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesveh/LoanSecondarySalesVehVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesveh/LoanSecondarySalesVehVo.java new file mode 100644 index 0000000000..791d62dc66 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesveh/LoanSecondarySalesVehVo.java @@ -0,0 +1,28 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalesveh; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/24 + **/ +@Data +public class LoanSecondarySalesVehVo { + + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("车辆类型") + private String vehType; + @ApiModelProperty("车型") + private String modelName; + @ApiModelProperty("销售订单车辆sid") + private String busVinSid; + @ApiModelProperty("车型sid") + private String modelSid; + @ApiModelProperty("配置sid") + private String configSid; +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.java index 0bad910c63..52b110bbd7 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.java @@ -1,8 +1,16 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalesapply; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApplyVo; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.Map; /** * @description: @@ -11,4 +19,11 @@ import org.apache.ibatis.annotations.Mapper; **/ @Mapper public interface LoanSecondarySalesApplyMapper extends BaseMapper { + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + int updateFlowFiled(Map beanToMap); + + int selectBySid(String join); + + LoanSecondarySalesApplyDetailsVo selectDetails(String sid); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.xml index b4adcb15e3..c19151b078 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyMapper.xml @@ -1,4 +1,90 @@ + + + + UPDATE loan_secondary_sales_apply + SET nodeState=#{nodeState} + + , taskDefKey=#{taskDefKey} + + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid = #{sid} + + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java index 99014ee0d9..afd9f06452 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java @@ -1,11 +1,15 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalesapply; +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyVo; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.*; import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -20,63 +24,72 @@ import java.util.List; @RequestMapping("v1/LoanSecondarySalesApply") @Api(tags = "二次销售") public class LoanSecondarySalesApplyRest implements LoanSecondarySalesApplyFeign { + + @Autowired + private LoanSecondarySalesApplyService loanSecondarySalesApplyService; + @Override public ResultBean> listPage(PagerQuery pq) { - return null; + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = loanSecondarySalesApplyService.listPageVo(pq); + return rb.success().setData(pv); } @Override public ResultBean saveOrUpdate(LoanSecondarySalesApplyDto dto) { - return null; + return loanSecondarySalesApplyService.saveOrUpdateSecondarySales(dto); } @Override public ResultBean details(LoanSecondarySalesApplyDetailsQuery query) { - return null; + return loanSecondarySalesApplyService.details(query); } @Override public ResultBean delBySids(String[] sids) { - return null; + return loanSecondarySalesApplyService.delAllBySids(sids); } @Override public ResultBean submitApply(SubmitLoanSecondarySalesApplyDto dto) { - return null; + return loanSecondarySalesApplyService.submitApply(dto); } @Override public ResultBean complete(CompleteLoanSecondarySalesApplyDto query) { - return null; + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(""); + return loanSecondarySalesApplyService.complete(bv); } @Override public ResultBean> getPreviousNodesForReject(LoanSecondarySalesApplyNodeQuery query) { - return null; + return loanSecondarySalesApplyService.getPreviousNodesForReject(query); } @Override public ResultBean> getNextNodesForSubmit(LoanSecondarySalesApplyNodeQuery query) { - return null; + return loanSecondarySalesApplyService.getNextNodesForSubmit(query); } @Override public ResultBean taskReject(LoanSecondarySalesApplyTaskQuery query) { - return null; + return loanSecondarySalesApplyService.taskReject(query); } @Override public ResultBean revokeProcess(LoanSecondarySalesApplyTaskQuery query) { - return null; + return loanSecondarySalesApplyService.revokeProcess(query); } @Override public ResultBean breakProcess(LoanSecondarySalesApplyTaskQuery query) { - return null; + return loanSecondarySalesApplyService.breakProcess(query); } @Override public ResultBean delegate(LoanSecondarySalesApplyDelegateQuery query) { - return null; + return loanSecondarySalesApplyService.delegate(query); } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java index e736c1cc34..d623d8d6a3 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java @@ -1,9 +1,64 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalesapply; -import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +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.basevehmodelconfig.BaseVehmodelVo; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; +import com.yxt.anrui.flowable.api.flow.FlowableFeign; +import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; +import com.yxt.anrui.flowable.api.flow2.FlowFeign; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; +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.riskcenter.api.loanoverduefin.UrlQuery; +import com.yxt.anrui.riskcenter.api.loanrestorereportapply.AlrepaidAndArrVo; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApply; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyQuery; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyVo; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.flowable.ReturnInboundApplyNodeVo; +import com.yxt.anrui.riskcenter.api.loanreturninboundtrailer.LoanReturnInboundTrailer; +import com.yxt.anrui.riskcenter.api.loanreturninboundtrailer.LoanReturnInboundTrailerDto; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.*; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable.*; +import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVeh; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; +import com.yxt.anrui.riskcenter.biz.loanreturnvehledger.LoanReturnVehLedgerService; +import com.yxt.anrui.riskcenter.biz.loansecondarysalescost.LoanSecondarySalesCostService; +import com.yxt.anrui.riskcenter.biz.loansecondarysalesveh.LoanSecondarySalesVehService; +import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +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 org.apache.commons.lang3.StringUtils; +import org.apache.tomcat.util.threads.ThreadPoolExecutor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.*; +import java.util.concurrent.*; +import java.util.stream.Collectors; + /** * @description: * @author: dimengzhe @@ -11,4 +66,555 @@ import org.springframework.stereotype.Service; **/ @Service public class LoanSecondarySalesApplyService extends MybatisBaseService { + + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private FlowFeign flowFeign; + @Autowired + private FlowableFeign flowableFeign; + @Autowired + private FlowTaskFeign flowTaskFeign; + @Autowired + private MessageFeign messageFeign; + @Autowired + private LoanSecondarySalesCostService loanSecondarySalesCostService; + @Autowired + private LoanSecondarySalesVehService loanSecondarySalesVehService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private FileUploadComponent fileUploadComponent; + @Autowired + private LoanReturnVehLedgerService loanReturnVehLedgerService; + + public PagerVo listPageVo(PagerQuery pq) { + LoanSecondarySalesApplyQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + //分公司 + if (StringUtils.isNotBlank(query.getUseOrgName())) { + qw.like("la.useOrgName", query.getUseOrgName()); + } + //申请人 + if (StringUtils.isNotBlank(query.getCreateByName())) { + qw.like("la.createByName", query.getCreateByName()); + } + //申请部门 + if (StringUtils.isNotBlank(query.getCreateDept())) { + qw.like("la.createDept", query.getCreateDept()); + } + //贷款合同编号 + if (StringUtils.isNotBlank(query.getLoanContractNo())) { + qw.like("la.loanContractNo", query.getLoanContractNo()); + } + //ToDo:车架号 + if (StringUtils.isNotBlank(query.getVinNo())) { + + } + //车牌号 + if (StringUtils.isNotBlank(query.getVehMark())) { + } + //贷款人 + if (StringUtils.isNotBlank(query.getLoanName())) { + qw.like("la.loanName", query.getLoanName()); + } + //资方 + if (StringUtils.isNotBlank(query.getBankName())) { + qw.like("la.bankName", query.getBankName()); + } + //资方合同编号 + if (StringUtils.isNotBlank(query.getBankContractNo())) { + qw.like("la.bankContractNo", query.getBankContractNo()); + } + //客户名称 + if (StringUtils.isNotBlank(query.getCustomerName())) { + qw.like("la.customerName", query.getCustomerName()); + } + + //办结日期 + qw.apply(StringUtils.isNotBlank(query.getCloseDateStart()), "date_format (la.closeDate,'%Y-%m-%d') >= date_format('" + query.getCloseDateStart() + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(query.getCloseDateEnd()), "date_format (la.closeDate,'%Y-%m-%d') <= date_format('" + query.getCloseDateEnd() + "','%Y-%m-%d')" + ); + //申请日期 + qw.apply(StringUtils.isNotBlank(query.getCreateTimeStart()), "date_format (la.createTime,'%Y-%m-%d') >= date_format('" + query.getCreateTimeStart() + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(query.getCreateTimeEnd()), "date_format (la.createTime,'%Y-%m-%d') <= date_format('" + query.getCreateTimeEnd() + "','%Y-%m-%d')" + ); + //========================================数据授权开始 + if (StringUtils.isNotBlank(query.getMenuUrl())) { + //======================= + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("la.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("la.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("la.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("la.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("la.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + } + qw.orderByDesc("la.createTime"); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + List paggingRecords = pagging.getRecords(); + paggingRecords.removeAll(Collections.singleton(null)); + if (!paggingRecords.isEmpty()) { + for (LoanSecondarySalesApplyVo record : pagging.getRecords()) { + if (query.getUserSid().equals(record.getCreateBySid())) { + record.setAllowModify(true); + } else { + record.setAllowModify(false); + } + } + } + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean> getPreviousNodesForReject(LoanSecondarySalesApplyNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(query.getBusinessSid()); + bv.setModelId(loanSecondarySalesApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LoanSecondarySalesApplyNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean> getNextNodesForSubmit(LoanSecondarySalesApplyNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(query.getBusinessSid()); + bv.setModelId(loanSecondarySalesApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LoanSecondarySalesApplyNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean taskReject(LoanSecondarySalesApplyTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = query.getBusinessSid(); + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(businessSid); + if (loanSecondarySalesApply == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = loanSecondarySalesApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + Map map = BeanUtil.beanToMap(ufVo); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + //极光推送 + loanSecondarySalesApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = loanSecondarySalesApply.getProcInstId(); + messageFlowVo.setProcInsId(procId); + messageFlowVo.setProcDefId(loanSecondarySalesApply.getProcDefId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("交回车辆二次销售申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextName = listResultBean.getData().get(0).getName_(); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + if ("发起申请".equals(nextName)) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + } else { + messageFlowableQuery.setMsgContent(loanSecondarySalesApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + + messageFlowableQuery.setMsgTitle("交回车辆二次销售申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean revokeProcess(LoanSecondarySalesApplyTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = loanSecondarySalesApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + } + + + private int updateFlowFiled(Map beanToMap) { + return baseMapper.updateFlowFiled(beanToMap); + } + + public ResultBean breakProcess(LoanSecondarySalesApplyTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = loanSecondarySalesApply.getTaskId(); + if (query.getUserSid().equals(loanSecondarySalesApply.getCreateBySid())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } else { + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } + } + } + + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean delegate(LoanSecondarySalesApplyDelegateQuery query) { + ResultBean rb = ResultBean.fireFail(); + FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); + BeanUtil.copyProperties(query, delegateQuery); + flowFeign.delegate(delegateQuery); + return rb.success(); + } + + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = bv.getBusinessSid(); + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(businessSid); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + bv.setFormVariables(variables); + bv.setOrgSidPath(loanSecondarySalesApply.getOrgSidPath()); + bv.setModelId(loanSecondarySalesApply.getProcDefId()); + if (bv.getTaskId().equals(loanSecondarySalesApply.getTaskId())) { + ResultBean resultBean = flowFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { + loanSecondarySalesApply = fetchBySid(businessSid); + loanSecondarySalesApply.setCloseDate(DateUtil.today()); + baseMapper.updateById(loanSecondarySalesApply); + + } else { + //极光推送 + loanSecondarySalesApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowVo.setProcDefId(loanSecondarySalesApply.getProcDefId()); + messageFlowVo.setProcInsId(loanSecondarySalesApply.getProcInstId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("交回车辆二次销售申请"); + messageFlowableQuery.setMsgContent(loanSecondarySalesApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("交回车辆二次销售申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + public ResultBean submitApply(SubmitLoanSecondarySalesApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(dto.getSid()); + int r = submitBusinessData(dto, loanSecondarySalesApply); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + //ToDo:验证车辆是否已处置 + + ResultBean resultBean = saveOrUpdateSecondarySales(dto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + String businessSid = resultBean.getData(); + loanSecondarySalesApply = fetchBySid(businessSid); + //创建BusinessVariables实体对象 + BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + //用户的部门全路径sid + bv.setOrgSidPath(loanSecondarySalesApply.getOrgSidPath()); + bv.setBusinessSid(businessSid); + bv.setUserSid(dto.getUserSid()); + bv.setFormVariables(variables); + if (r == 1) { + //ToDo:流程定义id + bv.setModelId(ProcDefEnum.LOANRETUENINBOUNDAPPLY.getProDefId()); + ResultBean voResultBean = flowFeign.startProcess(bv); + if (!voResultBean.getSuccess()) { + return rb.setMsg(voResultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = voResultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(ufVo)); + loanSecondarySalesApply = fetchBySid(businessSid); + //==================================添加线程 + try { + ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() + .setNameFormat("demo-pool-%d").build(); + ExecutorService pool = new ThreadPoolExecutor(2, 100, + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); + LoanSecondarySalesApply finalLoanSecondarySalesApply = loanSecondarySalesApply; + Future future1 = pool.submit(() -> { + //极光推送 + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("交回车辆二次销售申请"); + messageFlowableQuery.setMsgContent(finalLoanSecondarySalesApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("交回车辆二次销售申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + }); + } catch (Exception e) { + e.printStackTrace(); + } + //==================================添加线程 + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + bv.setTaskId(loanSecondarySalesApply.getTaskId()); + bv.setTaskDefKey(loanSecondarySalesApply.getTaskDefKey()); + bv.setComment("重新提交"); + bv.setInstanceId(dto.getInstanceId()); + return complete(bv); + } + return rb; + } + + public ResultBean saveOrUpdateSecondarySales(LoanSecondarySalesApplyDto dto) { + return null; + } + + private int submitBusinessData(SubmitLoanSecondarySalesApplyDto dto, LoanSecondarySalesApply loanSecondarySalesApply) { + int r = 0; + if (StringUtils.isBlank(dto.getSid())) { + r = 1; + } else { + if (loanSecondarySalesApply != null) { + String businessTaskId = loanSecondarySalesApply.getTaskId(); + if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { + //新提交 + r = 1; + } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { + //二次提交//只有数据一致的时候才能进行下一步 + r = 2; + } + } else { + r = 3; + } + } + return r; + } + + public ResultBean delAllBySids(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + //查询该sid中是否有流程不是待提交的 + int count = baseMapper.selectBySid(StringUtils.join(sids, ",")); + if (count > 0) { + return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败"); + } + List sidss = Arrays.asList(sids); + for (int i = 0; i < sidss.size(); i++) { + loanSecondarySalesVehService.deleteByMainSid(sidss.get(i)); + loanSecondarySalesCostService.deleteByMainSid(sidss.get(i)); + } + delBySids(sids); + return rb.success().setMsg("删除成功"); + } + + public ResultBean details(LoanSecondarySalesApplyDetailsQuery query) { + ResultBean rb = ResultBean.fireFail(); + LoanSecondarySalesApplyDetailsVo loanSecondarySalesApplyDetailsVo = new LoanSecondarySalesApplyDetailsVo(); + String sid = query.getSid(); + String userSid = query.getUserSid(); + String orgPath = query.getOrgPath(); + List chooseSidList = query.getChooseSidList(); + chooseSidList.removeAll(Collections.singleton(null)); + if (StringUtils.isBlank(sid)) {//新增初始化 + if (chooseSidList.isEmpty()) { + return rb.setMsg("请选择车辆"); + } + String busVinSid = ""; + String vinNo = ""; + for (int i = 0; i < chooseSidList.size(); i++) { + String s = chooseSidList.get(i); + LoanReturnVehLedger loanReturnVehLedger = loanReturnVehLedgerService.fetchBySid(s); + if ("未处置".equals(loanReturnVehLedger.getDisposal())) { + + } + } + //根据用户查询发起人、发起部门、发起日期为当前日期 + String deptName = ""; + String deptSid = ""; + String useOrgSid = ""; + if (StringUtils.isNotBlank(orgPath)) { + List split = Arrays.asList(orgPath.split("/")); + if (split.size() > 1) { + //获取本级sid获取本级部门信息 + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(split.size() - 2)).getData(); + SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData(); + deptName = sysOrganization.getName() + "/" + sysOrganization1.getName(); + deptName = sysOrganization1.getName(); + deptSid = sysOrganization1.getSid(); + } else { + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData(); + deptName = sysOrganization.getName(); + deptName = sysOrganization.getName(); + deptSid = sysOrganization.getSid(); + } + useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); + } + //根据用户sid查询人员姓名 + ResultBean userVoResultBean = sysUserFeign.fetchBySid(userSid); + if (!userVoResultBean.getSuccess()) { + return rb.setMsg(userVoResultBean.getMsg()); + } + loanSecondarySalesApplyDetailsVo.setCreateDept(deptName); + loanSecondarySalesApplyDetailsVo.setCreateDeptSid(deptSid); + loanSecondarySalesApplyDetailsVo.setCreateByName(userVoResultBean.getData().getName()); + loanSecondarySalesApplyDetailsVo.setCreateDate(DateUtil.today()); + loanSecondarySalesApplyDetailsVo.setOrgPath(query.getOrgPath()); + loanSecondarySalesApplyDetailsVo.setUserSid(query.getUserSid()); + loanSecondarySalesApplyDetailsVo.setUseOrgSid(useOrgSid); + + + } else {//编辑初始化 + LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(sid); + if (loanSecondarySalesApply == null) { + return rb.setMsg("该申请不存在"); + } + loanSecondarySalesApplyDetailsVo = baseMapper.selectDetails(sid); + String files = loanSecondarySalesApplyDetailsVo.getFiles(); + List list = new ArrayList<>(); + if (StringUtils.isNotBlank(files)) { + List fileList = Arrays.asList(files.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList()); + for (int i = 0; i < fileList.size(); i++) { + UrlQuery urlQuery = new UrlQuery(); + urlQuery.setUrl(fileList.get(i)); + list.add(urlQuery); + } + loanSecondarySalesApplyDetailsVo.setFilesList(list); + } + + loanSecondarySalesApplyDetailsVo.setOrgPath(loanSecondarySalesApply.getOrgSidPath()); + loanSecondarySalesApplyDetailsVo.setUserSid(loanSecondarySalesApply.getCreateBySid()); + loanSecondarySalesApplyDetailsVo.setSid(sid); + loanSecondarySalesApplyDetailsVo.setProcInstId(loanSecondarySalesApply.getProcInstId()); + loanSecondarySalesApplyDetailsVo.setTaskId(loanSecondarySalesApply.getTaskId()); + List loanSecondarySalesVehVoList = loanSecondarySalesVehService.selectByMainSid(sid); + loanSecondarySalesVehVoList.removeAll(Collections.singleton(null)); + if (!loanSecondarySalesVehVoList.isEmpty()) { + loanSecondarySalesApplyDetailsVo.setLoanSecondarySalesVehVoList(loanSecondarySalesVehVoList); + } + LoanSecondarySalesCostVo loanSecondarySalesCost = loanSecondarySalesCostService.selectByMainSid(sid); + loanSecondarySalesApplyDetailsVo.setLoanSecondarySalesCost(loanSecondarySalesCost); + } + return rb.success().setData(loanSecondarySalesApplyDetailsVo); + } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.java index 3da150a1ec..e9f6828415 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.java @@ -2,6 +2,7 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalescost; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost; +import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; import org.apache.ibatis.annotations.Mapper; /** @@ -11,4 +12,7 @@ import org.apache.ibatis.annotations.Mapper; **/ @Mapper public interface LoanSecondarySalesCostMapper extends BaseMapper { + int deleteByMainSid(String s); + + LoanSecondarySalesCostVo selectByMainSid(String sid); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.xml index 2174ff68d6..2962c0dc40 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostMapper.xml @@ -1,4 +1,16 @@ + + delete + from loan_secondary_sales_veh + where mainSid = #{s} + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostService.java index b04c20ecbb..a2ee8f2bb7 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescost/LoanSecondarySalesCostService.java @@ -1,6 +1,7 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalescost; import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCost; +import com.yxt.anrui.riskcenter.api.loansecondarysalescost.LoanSecondarySalesCostVo; import com.yxt.common.base.service.MybatisBaseService; import org.springframework.stereotype.Service; @@ -11,4 +12,11 @@ import org.springframework.stereotype.Service; **/ @Service public class LoanSecondarySalesCostService extends MybatisBaseService { + public int deleteByMainSid(String s) { + return baseMapper.deleteByMainSid(s); + } + + public LoanSecondarySalesCostVo selectByMainSid(String sid) { + return baseMapper.selectByMainSid(sid); + } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.java index d98b597d4f..37ece37cd3 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.java @@ -2,8 +2,11 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalesveh; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVeh; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -11,4 +14,7 @@ import org.apache.ibatis.annotations.Mapper; **/ @Mapper public interface LoanSecondarySalesVehMapper extends BaseMapper { + int deleteByMainSid(String s); + + List selectByMainSid(String sid); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.xml index 08ff1ef504..c11df74405 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehMapper.xml @@ -1,4 +1,22 @@ + + delete + from loan_secondary_sales_veh + where mainSid = #{s} + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehService.java index 629ad2c5ca..65af7c080b 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesveh/LoanSecondarySalesVehService.java @@ -1,9 +1,12 @@ package com.yxt.anrui.riskcenter.biz.loansecondarysalesveh; import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVeh; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; import com.yxt.common.base.service.MybatisBaseService; import org.springframework.stereotype.Service; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -11,4 +14,11 @@ import org.springframework.stereotype.Service; **/ @Service public class LoanSecondarySalesVehService extends MybatisBaseService { + public int deleteByMainSid(String s) { + return baseMapper.deleteByMainSid(s); + } + + public List selectByMainSid(String sid) { + return baseMapper.selectByMainSid(sid); + } }