From 606d22d9adf410f9e2f4b813c88df1abef43643d Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Mon, 11 Sep 2023 13:56:30 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=AE=B6=E8=AE=BF?= =?UTF-8?q?=E8=B5=84=E6=96=99=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../homevisitdatareview.js | 29 + anrui-riskcenter-ui/src/router/index.js | 16 + .../homevisitdatareview.vue | 330 ++++++++ .../homevisitdatareviewAdd.vue | 685 +++++++++++++++ .../homevisitdatareviewInfo.vue | 327 ++++++++ .../homevisitdatareviewReplenish.vue | 783 ++++++++++++++++++ .../homevisitdatatobereviewed.vue | 344 ++++++++ 7 files changed, 2514 insertions(+) create mode 100644 anrui-riskcenter-ui/src/api/homevisitdatareview/homevisitdatareview.js create mode 100644 anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareview.vue create mode 100644 anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewAdd.vue create mode 100644 anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewInfo.vue create mode 100644 anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewReplenish.vue create mode 100644 anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatatobereviewed.vue diff --git a/anrui-riskcenter-ui/src/api/homevisitdatareview/homevisitdatareview.js b/anrui-riskcenter-ui/src/api/homevisitdatareview/homevisitdatareview.js new file mode 100644 index 0000000000..ea6838fc15 --- /dev/null +++ b/anrui-riskcenter-ui/src/api/homevisitdatareview/homevisitdatareview.js @@ -0,0 +1,29 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function(params) { + return request({ + url: '/riskcenter/v1/loanhomevisitfileexamine/homeInforListPage', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 回显 + fetchDetailsBySid: function(data) { + return request({ + url: '/riskcenter/v1/loanhomevisitfileexamine/fetchDetailsBySid/' + data, + method: 'get' + }) + }, + // 保存 + save: function(params) { + return request({ + url: '/riskcenter/v1/loanhomevisitfileexamine/save', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + } +} diff --git a/anrui-riskcenter-ui/src/router/index.js b/anrui-riskcenter-ui/src/router/index.js index 352210bebc..a31eb7509f 100644 --- a/anrui-riskcenter-ui/src/router/index.js +++ b/anrui-riskcenter-ui/src/router/index.js @@ -219,6 +219,22 @@ export const constantRoutes = [ } ] }, + { + path: '/homevisitdatareview', + component: Layout, + redirect: '/homevisitdatareview', + meta: { + title: '家访资料审核' + }, + children: [ + { + path: '/homevisitdatareview/homevisitdatatobereviewed', + component: () => import('@/views/homevisitdatareview/homevisitdatatobereviewed.vue'), + name: 'HomeVisitDataReview', + meta: { title: '家访资料审核', noCache: true } + } + ] + }, { path: '/managementcreditaudit', component: Layout, diff --git a/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareview.vue b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareview.vue new file mode 100644 index 0000000000..3a09728472 --- /dev/null +++ b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareview.vue @@ -0,0 +1,330 @@ + + + + diff --git a/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewAdd.vue b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewAdd.vue new file mode 100644 index 0000000000..7fd1e8a93c --- /dev/null +++ b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewAdd.vue @@ -0,0 +1,685 @@ + + + + + diff --git a/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewInfo.vue b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewInfo.vue new file mode 100644 index 0000000000..0ec7a20068 --- /dev/null +++ b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewInfo.vue @@ -0,0 +1,327 @@ + + + + + diff --git a/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewReplenish.vue b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewReplenish.vue new file mode 100644 index 0000000000..5cacb8b6a8 --- /dev/null +++ b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatareviewReplenish.vue @@ -0,0 +1,783 @@ + + + + + diff --git a/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatatobereviewed.vue b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatatobereviewed.vue new file mode 100644 index 0000000000..c9bb417eb9 --- /dev/null +++ b/anrui-riskcenter-ui/src/views/homevisitdatareview/homevisitdatatobereviewed.vue @@ -0,0 +1,344 @@ + + + + From e91a1e5e0ad36d411adcf36188b6f572754f3818 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 11 Sep 2023 14:10:33 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/bussalesorder/app/vin/VinListVo2.java | 13 ++++-- .../bussalesorder/BusSalesOrderService.java | 40 +++++++++++++------ .../api/loanfinpolicy/LoanFinPolicyVo.java | 3 ++ .../loanfinpolicy/LoanFinPolicyService.java | 8 ++++ .../saleOrders/vininput/BusVinNoVo2.java | 15 +++++-- 5 files changed, 59 insertions(+), 20 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/vin/VinListVo2.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/vin/VinListVo2.java index 5af500dc70..9db00248a3 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/vin/VinListVo2.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/vin/VinListVo2.java @@ -1,5 +1,6 @@ package com.yxt.anrui.buscenter.api.bussalesorder.app.vin; +import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -13,8 +14,12 @@ import java.util.List; @Data public class VinListVo2 { - @ApiModelProperty("贷款人") - private String borrowName; - private String borrowSid; - private List vinList; + @ApiModelProperty("是否已出库") + private Boolean state; + private String linkNo; + private String linkSid; + @ApiModelProperty("车架号是0,标题是1,全款时全是0,贷款时,有贷款人的是1,其他分组人也是1") + private int viewType; + @ApiModelProperty("当上面字段为0时,该值为空字符串,为1时,贷款人:xxx,/未选择贷款人") + private String groupName; } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java index 64ab3b1d81..001b01c1b7 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java @@ -7272,6 +7272,15 @@ public class BusSalesOrderService extends MybatisBaseService saleOrderInputVin2(String saleOrderSid) { ResultBean rb = ResultBean.fireFail(); + BusSalesOrder busSalesOrder = fetchBySid(saleOrderSid); + int type = 0; + if (busSalesOrder != null) { + if ("1".equals(busSalesOrder.getPayTypeKey())) { + type = 1;//全款 + } else { + type = 2;//贷款 + } + } VinVo2 vinVo = new VinVo2(); List busSalesOrderVehicleList = busSalesOrderVehicleService.selectListByOrdersSid(saleOrderSid); busSalesOrderVehicleList.removeAll(Collections.singleton(null)); @@ -7281,21 +7290,30 @@ public class BusSalesOrderService extends MybatisBaseService vinList2 = new ArrayList<>(); for (int i = 0; i < busSalesOrderVehicleList.size(); i++) { + vinListVo2 = new VinListVo2(); + vinListVo2.setViewType(0); busSalesOrderVehicle = busSalesOrderVehicleList.get(i); - VinListVo vinListVo = new VinListVo(); if (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) { - vinListVo.setLinkNo(busSalesOrderVehicle.getLinkNo()); + vinListVo2.setLinkNo(busSalesOrderVehicle.getLinkNo()); } if (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkSid())) { - vinListVo.setLinkSid(busSalesOrderVehicle.getLinkSid()); + vinListVo2.setLinkSid(busSalesOrderVehicle.getLinkSid()); } if (StringUtils.isNotBlank(busSalesOrderVehicle.getLinkSid())) { //根据车架号查询是否已出库 @@ -7304,18 +7322,16 @@ public class BusSalesOrderService extends MybatisBaseService vehTypeKeyList; + private List vehTypeValueList; } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java index 0a25407c21..55c9a49dbb 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java @@ -269,6 +269,14 @@ public class LoanFinPolicyService extends MybatisBaseService listKey = Arrays.asList(loanFinPolicyVo.getVehTypeKey().split(",")); + loanFinPolicyVo.setVehTypeKeyList(listKey); + } + if (StringUtils.isNotBlank(loanFinPolicyVo.getVehTypeValue())) { + List listValue = Arrays.asList(loanFinPolicyVo.getVehTypeValue().split(",")); + loanFinPolicyVo.setVehTypeValueList(listValue); + } loanFinPolicyVo.setOrgPath(loanFinPolicy.getOrgSidPath()); loanFinPolicyVo.setUserSid(loanFinPolicy.getCreateBySid()); if (loanFinPolicy.getIsOtherProduct() == 1) { diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/vininput/BusVinNoVo2.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/vininput/BusVinNoVo2.java index afff5ac201..3f79cb0e46 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/vininput/BusVinNoVo2.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/vininput/BusVinNoVo2.java @@ -1,5 +1,6 @@ package com.yxt.anrui.terminal.api.autoservice.saleOrders.vininput; +import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -12,8 +13,14 @@ import java.util.List; **/ @Data public class BusVinNoVo2 { - @ApiModelProperty("贷款人") - private String borrowName; - private String borrowSid; - private List vinList; + @ApiModelProperty("是否已出库") + private Boolean state; + @JsonProperty("vin") + private String linkNo; + @JsonProperty("carSid") + private String linkSid; + @ApiModelProperty("车架号是0,标题是1,全款时全是0,贷款时,有贷款人的是1,其他分组人也是1") + private int viewType; + @ApiModelProperty("当上面字段为0时,该值为空字符串,为1时,贷款人:xxx,/未选择贷款人") + private String groupName; } From cda4e72a523b2a8437b73e4baf0e2a610b1d16b6 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Mon, 11 Sep 2023 14:39:24 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=85=AC=E5=8F=B8?= =?UTF-8?q?=E9=9D=9E=E6=8B=85=E4=BF=9D=E8=BF=9B=E5=BA=A6=E7=BB=B4=E6=8A=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusNoGuaranteeCreditReviewQuery.java | 48 ++++ .../BusNoGuaranteeCreditReviewVo.java | 50 ++++ .../BusSalesOrderBorrowerFeign.java | 9 + .../BusSalesOrderBorrowerFeignFallback.java | 10 + .../BusSalesOrderBorrowerMapper.java | 30 ++- .../BusSalesOrderBorrowerMapper.xml | 67 +++-- .../BusSalesOrderBorrowerRest.java | 12 + .../BusSalesOrderBorrowerService.java | 120 ++++++++- .../riskcenter/api/loanfile/LoanFileEnum.java | 3 + .../LoanNoGuaranteeCreditReview.java | 36 +++ .../LoanNoGuaranteeCreditReviewDetailsVo.java | 44 ++++ .../LoanNoGuaranteeCreditReviewDto.java | 46 ++++ .../LoanNoGuaranteeCreditReviewFallback.java | 25 ++ .../LoanNoGuaranteeCreditReviewFeign.java | 41 +++ .../LoanNoGuaranteeCreditReviewQuery.java | 29 +++ .../LoanNoGuaranteeCreditReviewVo.java | 23 ++ .../AppRepaymentPlanDetailsVo.java | 36 +++ .../AppRepaymentPlanListDetailsVo.java | 21 ++ .../AppRepaymentPlanQuery.java | 23 ++ .../AppRepaymentPlanVo.java | 32 +++ .../LoanRepaymentSchedule.java | 6 + .../LoanRepaymentScheduleFeign.java | 22 ++ .../LoanRepaymentScheduleFeignFallback.java | 12 + .../LoanNoGuaranteeCreditReviewMapper.java | 26 ++ .../LoanNoGuaranteeCreditReviewMapper.xml | 5 + .../LoanNoGuaranteeCreditReviewRest.java | 38 +++ .../LoanNoGuaranteeCreditReviewService.java | 152 +++++++++++ .../LoanRepaymentScheduleMapper.java | 4 + .../LoanRepaymentScheduleMapper.xml | 16 ++ .../LoanRepaymentScheduleRest.java | 15 ++ .../LoanRepaymentScheduleService.java | 237 ++++++++++++++++++ .../repaymentplan/RepaymentPlanDetailsVo.java | 35 +++ .../repaymentplan/RepaymentPlanFeign.java | 37 +++ .../RepaymentPlanFeignFallback.java | 27 ++ .../RepaymentPlanListDetailsVo.java | 22 ++ .../repaymentplan/RepaymentPlanQuery.java | 23 ++ .../risk/repaymentplan/RepaymentPlanVo.java | 34 +++ .../risk/repaymentplan/RepaymentPlanRest.java | 39 +++ .../repaymentplan/RepaymentPlanService.java | 57 +++++ 39 files changed, 1481 insertions(+), 31 deletions(-) create mode 100644 anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewQuery.java create mode 100644 anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReview.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFallback.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFeign.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanListDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.xml create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewRest.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanDetailsVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeign.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeignFallback.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanListDetailsVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanRest.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanService.java diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewQuery.java new file mode 100644 index 0000000000..f89c206bdd --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewQuery.java @@ -0,0 +1,48 @@ +package com.yxt.anrui.buscenter.api.bussalesorderborrower; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 9:09 + */ +@Data +public class BusNoGuaranteeCreditReviewQuery implements Query { + + @ApiModelProperty("用户sid") + private String userSid; + @ApiModelProperty("组织全路径") + private String orgPath; + @ApiModelProperty("菜单sid") + private String menuSid; + @ApiModelProperty("菜单url") + private String menuUrl; + @ApiModelProperty("分公司") + private String company; + @ApiModelProperty("销售部门") + private String department; + @ApiModelProperty("销售专员") + private String salesman; + @ApiModelProperty("订单开始日期") + private String startTime; + @ApiModelProperty("订单结束日期") + private String endTime; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("消贷合同编号") + private String contractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("家访考察结果") + private String homeVisit; + @ApiModelProperty("信审终审结果") + private String creditReview; + @ApiModelProperty("放款审核结果") + private String loanReview; + @ApiModelProperty("是否放款") + private String isLoan; + +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewVo.java new file mode 100644 index 0000000000..d5b78c06af --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusNoGuaranteeCreditReviewVo.java @@ -0,0 +1,50 @@ +package com.yxt.anrui.buscenter.api.bussalesorderborrower; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 9:09 + */ +@Data +public class BusNoGuaranteeCreditReviewVo implements Vo { + + + @ApiModelProperty("订单日期") + private String orderDate; + @ApiModelProperty("分公司") + private String company; + @ApiModelProperty("销售部门") + private String department; + @ApiModelProperty("销售专员") + private String salesman; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("消贷合同编号") + private String contractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("手机号码") + private String mobile; + @ApiModelProperty("家访考察结果") + private String homeVisit; + @ApiModelProperty("家访考察日期") + private String homeVisitDate; + @ApiModelProperty("信审终审结果") + private String creditReview; + @ApiModelProperty("信审终审日期") + private String creditReviewDate; + @ApiModelProperty("放款审核结果") + private String loanReview; + @ApiModelProperty("放款审核日期") + private String loanReviewDate; + @ApiModelProperty("是否放款") + private String isLoan; + @ApiModelProperty("放款日期") + private String isLoanDate; + + +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeign.java index da63979176..f9fe783f86 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeign.java @@ -91,5 +91,14 @@ public interface BusSalesOrderBorrowerFeign { @ResponseBody ResultBean confirmBorrow(@RequestBody OrderBorrowQuery query); + @ApiOperation("公司非担保业务进度维护") + @PostMapping("/noGuaranteeCreditReviewPage") + @ResponseBody + public ResultBean> noGuaranteeCreditReviewPage(@RequestBody PagerQuery pq); + + @ApiOperation("根据销售订单SID获取一条记录") + @GetMapping("/fetchDetailsByOrderSid/{orderSid}") + @ResponseBody + public ResultBean fetchDetailsByOrderSid(@PathVariable("orderSid") String orderSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeignFallback.java index 304d1c4f7c..d69c177f12 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderborrower/BusSalesOrderBorrowerFeignFallback.java @@ -84,4 +84,14 @@ public class BusSalesOrderBorrowerFeignFallback implements BusSalesOrderBorrower public ResultBean confirmBorrow(OrderBorrowQuery query) { return null; } + + @Override + public ResultBean> noGuaranteeCreditReviewPage(PagerQuery pq) { + return null; + } + + @Override + public ResultBean fetchDetailsByOrderSid(String orderSid) { + return null; + } } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.java index bbed69f2fd..13b91fc559 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.java @@ -26,9 +26,11 @@ package com.yxt.anrui.buscenter.biz.bussalesorderborrower; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.buscenter.api.bussalesorderborrower.BusNoGuaranteeCreditReviewVo; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicy; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; @@ -57,23 +59,27 @@ import java.util.List; @Mapper public interface BusSalesOrderBorrowerMapper extends BaseMapper { - //@Update("update bus_sales_order_borrower set name=#{msg} where id=#{id}") - //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); - - IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - - List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - - @Select("select * from bus_sales_order_borrower") - List selectListVo(); + //@Update("update bus_sales_order_borrower set name=#{msg} where id=#{id}") + //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); - @Update("update bus_sales_order_borrower set busNo = #{busNo} where sid = #{saleOrderBorrowerSid}") - void updateBusNo(@Param("busNo") String busNo,@Param("saleOrderBorrowerSid") String saleOrderBorrowerSid); + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from bus_sales_order_borrower") + List selectListVo(); + + @Update("update bus_sales_order_borrower set busNo = #{busNo} where sid = #{saleOrderBorrowerSid}") + void updateBusNo(@Param("busNo") String busNo, @Param("saleOrderBorrowerSid") String saleOrderBorrowerSid); int selectBySalesOrderSid(String sid); LoanFinPolicy selectBySid(String sid); - BusSalesOrderBorrower selectByOrderSid(@Param("sid") String sid,@Param("customerSid") String customerSid); + BusSalesOrderBorrower selectByOrderSid(@Param("sid") String sid, @Param("customerSid") String customerSid); + + IPage noGuaranteeCreditReviewPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + @Select("select * from bus_sales_order_borrower where salesOrderSid =#{orderSid}") + BusSalesOrderBorrower fetchDetailsByOrderSid(String orderSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.xml index e96093d57c..e940887a54 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerMapper.xml @@ -1,27 +1,58 @@ - - - - - + + + + + - + select ifnull(sum(vehCount), 0) + from bus_sales_order_borrower + where salesOrderSid = #{sid} - + select lp.* + from anrui_riskcenter.loan_solutions ls + left join anrui_riskcenter.loan_fin_policy lp on lp.sid = ls.policySid + where ls.salesOrderSid = #{sid} - + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerRest.java index c5ca8955e9..d3d994a508 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerRest.java @@ -107,4 +107,16 @@ public class BusSalesOrderBorrowerRest implements BusSalesOrderBorrowerFeign { public ResultBean confirmBorrow(OrderBorrowQuery query) { return busSalesOrderBorrowerService.confirmBorrow(query); } + + @Override + public ResultBean> noGuaranteeCreditReviewPage(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = busSalesOrderBorrowerService.noGuaranteeCreditReviewPage(pq); + return rb.success().setData(pv); + } + + @Override + public ResultBean fetchDetailsByOrderSid(String orderSid) { + return busSalesOrderBorrowerService.fetchDetailsByOrderSid(orderSid); + } } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerService.java index 1999e6cd3a..75148e8200 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderborrower/BusSalesOrderBorrowerService.java @@ -34,7 +34,12 @@ import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPriceDto; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.buscenter.biz.bussalesorderprice.BusSalesOrderPriceService; import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService; +import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicy; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterQuery; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; @@ -69,7 +74,8 @@ public class BusSalesOrderBorrowerService extends MybatisBaseService createQueryWrapper(BusSalesOrderBorrowerQuery query) { // todo: 这里根据具体业务调整查询条件 @@ -175,4 +181,116 @@ public class BusSalesOrderBorrowerService extends MybatisBaseService noGuaranteeCreditReviewPage(PagerQuery pq) { + IPage page = PagerUtil.queryToPage(pq); + BusNoGuaranteeCreditReviewQuery pagerQuery = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + //======================= + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(pagerQuery.getOrgPath()); + privilegeQuery.setMenuSid(pagerQuery.getMenuSid()); + privilegeQuery.setMenuUrl(pagerQuery.getMenuUrl()); + privilegeQuery.setUserSid(pagerQuery.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = pagerQuery.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("bo.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("bo.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("bo.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("bo.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("bo.createBySid", pagerQuery.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + //======================= + //PC办结时间查询 + String createStartTime = pagerQuery.getStartTime(); + String createEndTime = pagerQuery.getEndTime(); + qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (bo.createDate,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotEmpty(createEndTime), "date_format (bo.createDate,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" + ); + //分公司 + if (StringUtils.isNotBlank(pagerQuery.getCompany())) { + qw.like("bo.usdOrgName", pagerQuery.getCompany()); + } + //销售部门 + if (StringUtils.isNotBlank(pagerQuery.getDepartment())) { + qw.like("bo.orgName", pagerQuery.getDepartment()); + } + //销售专员 + if (StringUtils.isNotBlank(pagerQuery.getSalesman())) { + qw.like("bo.staffName", pagerQuery.getSalesman()); + } + //贷款人 + if (StringUtils.isNotBlank(pagerQuery.getBorrowerName())) { + qw.like("bor.borrowerName", pagerQuery.getBorrowerName()); + } + //合同号 + if (StringUtils.isNotBlank(pagerQuery.getContractNo())) { + qw.like("bo.contractNo", pagerQuery.getContractNo()); + } + //资方 + if (StringUtils.isNotBlank(pagerQuery.getBankName())) { + qw.like("bor.bankName", pagerQuery.getBankName()); + } + //家访考察结果 + if (StringUtils.isNotBlank(pagerQuery.getHomeVisit())) { + qw.like("cr.homeVisit", pagerQuery.getHomeVisit()); + } + //信审终审结果 + if (StringUtils.isNotBlank(pagerQuery.getCreditReview())) { + qw.like("cr.creditReview", pagerQuery.getCreditReview()); + } + //放款审核结果 + if (StringUtils.isNotBlank(pagerQuery.getLoanReview())) { + qw.like("cr.loanReview", pagerQuery.getLoanReview()); + } + //是否放款 + if (StringUtils.isNotBlank(pagerQuery.getIsLoan())) { + qw.like("cr.isLoan", pagerQuery.getIsLoan()); + } + qw.eq("bor.isDelete", 0); + qw.eq("bo.payTypeKey", "1"); + qw.eq("bo.nodeState", "已办结"); + qw.orderByDesc("bo.createDate"); + IPage pagging = baseMapper.noGuaranteeCreditReviewPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean fetchDetailsByOrderSid(String orderSid) { + ResultBean rb = ResultBean.fireFail(); + BusSalesOrderBorrower entity = baseMapper.fetchDetailsByOrderSid(orderSid); + BusSalesOrderBorrowerDetailsVo vo = new BusSalesOrderBorrowerDetailsVo(); + BeanUtil.copyProperties(entity, vo); + return rb.success().setData(vo); + } } \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java index 3885737688..45f999826a 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java @@ -11,6 +11,9 @@ public enum LoanFileEnum { REGISTRATION_FILES_TWO("002", "登记证(3、4页)"), TAXI_FILES("003", "营运证"), DRIVING_CARD_FILES("004", "行驶证"), + HOME_VISIT_FILES("005", "非担保业务进度家访考察结果"), + CREDIT_REVIEW_FILES("006", "非担保业务进度资方信审结果"), + LOAN_REVIEW_FILES("007", "非担保业务进度资方放款审核结果"), ; diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReview.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReview.java new file mode 100644 index 0000000000..e08811608d --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReview.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/16 14:34 + */ +@Data +@ApiModel(value = "公司非担保业务进度维护", description = "公司非担保业务进度维护") +@TableName("loan_noguarantee_credit_review") +public class LoanNoGuaranteeCreditReview extends BaseEntity { + @ApiModelProperty("销售订单sid") + private String salesOrderSid; + @ApiModelProperty("家访考察结果") + private String homeVisit; + @ApiModelProperty("家访考察日期") + private String homeVisitDate; + @ApiModelProperty("信审终审结果") + private String creditReview; + @ApiModelProperty("信审终审日期") + private String creditReviewDate; + @ApiModelProperty("放款审核结果") + private String loanReview; + @ApiModelProperty("放款审核日期") + private String loanReviewDate; + @ApiModelProperty("是否放款") + private String isLoan; + @ApiModelProperty("放款日期") + private String isLoanDate; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDetailsVo.java new file mode 100644 index 0000000000..f27ba73cbf --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDetailsVo.java @@ -0,0 +1,44 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Administrator + * @description + * @date 2023/8/21 9:13 + */ +@Data +public class LoanNoGuaranteeCreditReviewDetailsVo implements Vo { + private String salesOrderSid; + @ApiModelProperty("销售专员") + private String salesman; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("家访考察结果") + private String homeVisit; + @ApiModelProperty("家访考察日期") + private String homeVisitDate; + @ApiModelProperty("信审终审结果") + private String creditReview; + @ApiModelProperty("信审终审日期") + private String creditReviewDate; + @ApiModelProperty("放款审核结果") + private String loanReview; + @ApiModelProperty("放款审核日期") + private String loanReviewDate; + @ApiModelProperty("是否放款") + private String isLoan; + @ApiModelProperty("放款日期") + private String isLoanDate; + @ApiModelProperty("家访考察结果截图") + private List homeVisitFiles = new ArrayList<>(); + @ApiModelProperty("信审终审结果截图") + private List creditReviewFiles = new ArrayList<>(); + @ApiModelProperty("放款审核结果截图") + private List loanReviewFiles = new ArrayList<>(); +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDto.java new file mode 100644 index 0000000000..c580bd63b8 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewDto.java @@ -0,0 +1,46 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Administrator + * @description + * @date 2023/8/21 9:12 + */ +@Data +public class LoanNoGuaranteeCreditReviewDto implements Dto { + + private String salesOrderSid; + @ApiModelProperty("销售专员") + private String salesman; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("家访考察结果") + private String homeVisit; + @ApiModelProperty("家访考察日期") + private String homeVisitDate; + @ApiModelProperty("信审终审结果") + private String creditReview; + @ApiModelProperty("信审终审日期") + private String creditReviewDate; + @ApiModelProperty("放款审核结果") + private String loanReview; + @ApiModelProperty("放款审核日期") + private String loanReviewDate; + @ApiModelProperty("是否放款") + private String isLoan; + @ApiModelProperty("放款日期") + private String isLoanDate; + @ApiModelProperty("家访考察结果截图") + private List homeVisitFiles = new ArrayList<>(); + @ApiModelProperty("信审终审结果截图") + private List creditReviewFiles = new ArrayList<>(); + @ApiModelProperty("放款审核结果截图") + private List loanReviewFiles = new ArrayList<>(); + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFallback.java new file mode 100644 index 0000000000..217393d825 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFallback.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.stereotype.Component; + +/** + * @author Administrator + * @description + * @date 2023/8/16 14:36 + */ +@Component +public class LoanNoGuaranteeCreditReviewFallback implements LoanNoGuaranteeCreditReviewFeign { + + @Override + public ResultBean details(String salesOrderSid) { + return null; + } + + @Override + public ResultBean saveReviewInfo(LoanNoGuaranteeCreditReviewDto dto) { + return null; + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFeign.java new file mode 100644 index 0000000000..8b32f11b19 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewFeign.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanAuditInfoDto; +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 io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + + +/** + * @description: 风控参数 + * @author: fan + * @date: 2023/7/6 + **/ +@Api(tags = "公司非担保业务进度维护") +@FeignClient( + contextId = "anrui-riskcenter-LoanNoGuaranteeCreditReview", + name = "anrui-riskcenter", + path = "v1/noguaranteereview", + fallback = LoanNoGuaranteeCreditReviewFallback.class) +public interface LoanNoGuaranteeCreditReviewFeign { + + @ApiOperation("编辑回显、详情") + @PostMapping("/details") + @ResponseBody + public ResultBean details(@RequestParam("salesOrderSid") String salesOrderSid); + + /** + * 办理保存 + * + * @param + */ + @ApiOperation("审核保存") + @PostMapping("/saveReviewInfo") + public ResultBean saveReviewInfo(@RequestBody LoanNoGuaranteeCreditReviewDto dto); + + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewQuery.java new file mode 100644 index 0000000000..01f4672524 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewQuery.java @@ -0,0 +1,29 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/16 15:05 + */ +@Data +public class LoanNoGuaranteeCreditReviewQuery implements Query { + + @ApiModelProperty("参数编码") + private String parameterNo; + @ApiModelProperty("参数名称") + private String parameterName; + @ApiModelProperty("组织全路径") + private String orgPath; + @ApiModelProperty("菜单sid") + private String menuSid; + @ApiModelProperty("菜单url") + private String menuUrl; + @ApiModelProperty("用户sid") + private String userSid; + + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewVo.java new file mode 100644 index 0000000000..c654430e73 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewVo.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/16 15:04 + */ +@Data +public class LoanNoGuaranteeCreditReviewVo implements Vo { + private String sid; + @ApiModelProperty("参数编码") + private String parameterNo; + @ApiModelProperty("参数名称") + private String parameterName; + @ApiModelProperty("参数值") + private String parameterValue; + @ApiModelProperty("备注") + private String remarks; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanDetailsVo.java new file mode 100644 index 0000000000..002084bf20 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanDetailsVo.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author Administrator + * @description + * @date 2023/9/11 14:00 + */ +@Data +public class AppRepaymentPlanDetailsVo implements Vo { + @ApiModelProperty("sid") + private String sid; + @ApiModelProperty("合同号") + private String contractId; + @ApiModelProperty("贷款人名称") + private String lenderName; + @ApiModelProperty("车辆台数") + private String carNumber; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("资方") + private String managementName; + @ApiModelProperty("金融产品") + private String financial; + @ApiModelProperty("销售专员") + private String salesName; + private List records = new ArrayList<>(); +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanListDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanListDetailsVo.java new file mode 100644 index 0000000000..f26bf54bbe --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanListDetailsVo.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 14:03 + */ +@Data +public class AppRepaymentPlanListDetailsVo implements Vo { + private String times; + private String otherTimes; + private String number; + private String total; + private String month; + private String monthlyPayment; + private String otherMonthlyPayment; + private String companyMonthlyPayment; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanQuery.java new file mode 100644 index 0000000000..50914f12de --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanQuery.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 11:56 + */ +@Data +public class AppRepaymentPlanQuery implements Query { + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("合同编号/贷款人姓名/资方名称") + private String names; + + @ApiModelProperty("当前组织机构全路径sid") + private String orgPath; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanVo.java new file mode 100644 index 0000000000..60a27dbbb5 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/AppRepaymentPlanVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 11:54 + */ +@Data +public class AppRepaymentPlanVo implements Vo { + @ApiModelProperty("业务sid") + private String sid; + @ApiModelProperty("消贷合同编号") + private String contractId; + @ApiModelProperty("贷款人名称") + private String lenderName; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("资方") + private String managementName; + @ApiModelProperty("金融产品") + private String financial; + @ApiModelProperty("销售专员") + private String salesName; + @ApiModelProperty("车辆台数") + private String carNum; + @ApiModelProperty("下载路径") + private String downloadUrl; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentSchedule.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentSchedule.java index af051718d6..e9bf9632a6 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentSchedule.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentSchedule.java @@ -22,6 +22,10 @@ public class LoanRepaymentSchedule extends BaseEntity { private String salesOrderSid; @ApiModelProperty("借款人sid") private String borrowerSid; + @ApiModelProperty("销售专员sid") + private String staffSid; + @ApiModelProperty("销售专员") + private String staffName; @ApiModelProperty("借款人名称") private String borrowerName; @ApiModelProperty("车架号") @@ -32,6 +36,8 @@ public class LoanRepaymentSchedule extends BaseEntity { private String loanContractNo; @ApiModelProperty("资方名称") private String bankName; + @ApiModelProperty("金融产品政策") + private String policyName; @ApiModelProperty("主产品期数") private String mainPeriod; @ApiModelProperty("主产品首期还款日") diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeign.java index 368bcc6fe4..8c0d87c3fe 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeign.java @@ -1,6 +1,10 @@ package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformationQuery; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformationVo; +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 io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; @@ -44,4 +48,22 @@ public interface LoanRepaymentScheduleFeign { public ResultBean> viewVinOneSchedule(@RequestParam("salesOrderSid") String salesOrderSid); + //-------------------------app接口-------------------- + + /** + * 根据条件分页查询数据的列表(已测试) + * + * @param pq + */ + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/getRepaymentPlanList") + @ResponseBody + public ResultBean> getRepaymentPlanList(@RequestBody PagerQuery pq); + + @ApiOperation("查看还款计划表") + @GetMapping("/getRepaymentPlanListBySid") + @ResponseBody + public ResultBean getRepaymentPlanListBySid(@RequestParam("sid") String sid); + + } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeignFallback.java index 656144a604..0285ff78ec 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeignFallback.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymentschedule/LoanRepaymentScheduleFeignFallback.java @@ -1,6 +1,8 @@ package com.yxt.anrui.riskcenter.api.loanrepaymentschedule; +import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; import org.springframework.stereotype.Component; import java.util.List; @@ -32,4 +34,14 @@ public class LoanRepaymentScheduleFeignFallback implements LoanRepaymentSchedule public ResultBean> viewVinOneSchedule(String salesOrderSid) { return null; } + + @Override + public ResultBean> getRepaymentPlanList(PagerQuery pq) { + return null; + } + + @Override + public ResultBean getRepaymentPlanListBySid(String sid) { + return null; + } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.java new file mode 100644 index 0000000000..3850e8e952 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.riskcenter.biz.loannoguaranteecreditreview; + +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.loannoguaranteecreditreview.LoanNoGuaranteeCreditReview; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Mapper +public interface LoanNoGuaranteeCreditReviewMapper extends BaseMapper { + + + @Select("SELECT * FROM loan_noguarantee_credit_review WHERE salesOrderSid = #{salesOrderSid}") + LoanNoGuaranteeCreditReview selectOneByOrderSid(String salesOrderSid); +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.xml new file mode 100644 index 0000000000..668cda556b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewRest.java new file mode 100644 index 0000000000..0df632ea93 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewRest.java @@ -0,0 +1,38 @@ +package com.yxt.anrui.riskcenter.biz.loannoguaranteecreditreview; + + +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewDetailsVo; +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewDto; +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewFeign; +import com.yxt.anrui.riskcenter.api.loanparameter.*; +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; + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Api(tags = "公司非担保业务进度维护") +@RestController +@RequestMapping("v1/noguaranteereview") +public class LoanNoGuaranteeCreditReviewRest implements LoanNoGuaranteeCreditReviewFeign { + + @Autowired + private LoanNoGuaranteeCreditReviewService loanNoGuaranteeCreditReviewService; + + @Override + public ResultBean details(String salesOrderSid) { + return loanNoGuaranteeCreditReviewService.details(salesOrderSid); + } + + @Override + public ResultBean saveReviewInfo(LoanNoGuaranteeCreditReviewDto dto) { + return loanNoGuaranteeCreditReviewService.saveReviewInfo(dto); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java new file mode 100644 index 0000000000..622911b065 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loannoguaranteecreditreview/LoanNoGuaranteeCreditReviewService.java @@ -0,0 +1,152 @@ +package com.yxt.anrui.riskcenter.biz.loannoguaranteecreditreview; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; +import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo; +import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; +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.riskcenter.api.loanfile.LoanFile; +import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum; +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReview; +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewDetailsVo; +import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewDto; +import com.yxt.anrui.riskcenter.api.loanparameter.*; +import com.yxt.anrui.riskcenter.biz.loanfile.LoanFileService; +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 org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Service +public class LoanNoGuaranteeCreditReviewService extends MybatisBaseService { + + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + @Autowired + private BusSalesOrderFeign busSalesOrderFeign; + @Autowired + private BusSalesOrderBorrowerFeign busSalesOrderBorrowerFeign; + @Autowired + private LoanFileService loanFileService; + @Autowired + private FileUploadComponent fileUploadComponent; + + public ResultBean details(String salesOrderSid) { + ResultBean rb = ResultBean.fireFail(); + LoanNoGuaranteeCreditReviewDetailsVo vo = new LoanNoGuaranteeCreditReviewDetailsVo(); + LoanNoGuaranteeCreditReview entity = baseMapper.selectOneByOrderSid(salesOrderSid); + BeanUtil.copyProperties(entity, vo); + String sid = ""; + if (StringUtils.isNotBlank(entity.getSid())) { + sid = entity.getSid(); + } + BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(salesOrderSid).getData(); + if (null != busSalesOrder) { + if (StringUtils.isNotBlank(busSalesOrder.getStaffName())) { + vo.setSalesman(busSalesOrder.getStaffName()); + } + } + BusSalesOrderBorrowerDetailsVo borrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsByOrderSid(salesOrderSid).getData(); + if (null != borrowerDetailsVo) { + if (StringUtils.isNotBlank(borrowerDetailsVo.getBorrowerName())) { + vo.setBorrowerName(borrowerDetailsVo.getBorrowerName()); + } + } + //家访考察结果截图 + List fileList = loanFileService.selectByLinkSid(sid, LoanFileEnum.HOME_VISIT_FILES.getAttachType()); + fileList.removeAll(Collections.singleton(null)); + if (!fileList.isEmpty()) { + List homeVisitFiles = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()). + collect(Collectors.toList()); + vo.setHomeVisitFiles(homeVisitFiles); + } + //信审终审结果截图 + fileList = loanFileService.selectByLinkSid(sid, LoanFileEnum.CREDIT_REVIEW_FILES.getAttachType()); + fileList.removeAll(Collections.singleton(null)); + if (!fileList.isEmpty()) { + List creditReviewFiles = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList()); + vo.setCreditReviewFiles(creditReviewFiles); + } + //放款审核结果截图 + fileList = loanFileService.selectByLinkSid(sid, LoanFileEnum.LOAN_REVIEW_FILES.getAttachType()); + fileList.removeAll(Collections.singleton(null)); + if (!fileList.isEmpty()) { + List loanReviewFiles = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList()); + vo.setLoanReviewFiles(loanReviewFiles); + } + return rb.success().setData(vo); + } + + + public ResultBean saveReviewInfo(LoanNoGuaranteeCreditReviewDto dto) { + ResultBean rb = ResultBean.fireFail(); + String salesOrderSid = dto.getSalesOrderSid(); + LoanNoGuaranteeCreditReview entity = baseMapper.selectOneByOrderSid(salesOrderSid); + if (null != entity) { + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + String sid = entity.getSid(); + //删除附件表中关于该linkSid的文件 + loanFileService.deleteByLinkSid(sid); + List homeVisitFiles = dto.getHomeVisitFiles(); + if (!homeVisitFiles.isEmpty()) { + loanFileService.saveAll(sid, homeVisitFiles, LoanFileEnum.HOME_VISIT_FILES.getAttachType()); + } + List creditReviewFiles = dto.getCreditReviewFiles(); + if (!creditReviewFiles.isEmpty()) { + loanFileService.saveAll(sid, creditReviewFiles, LoanFileEnum.CREDIT_REVIEW_FILES.getAttachType()); + } + List loanReviewFiles = dto.getLoanReviewFiles(); + if (!loanReviewFiles.isEmpty()) { + loanFileService.saveAll(sid, loanReviewFiles, LoanFileEnum.LOAN_REVIEW_FILES.getAttachType()); + } + } else { + LoanNoGuaranteeCreditReview loanNoGuaranteeCreditReview = new LoanNoGuaranteeCreditReview(); + BeanUtil.copyProperties(dto, loanNoGuaranteeCreditReview, "id", "sid"); + baseMapper.insert(loanNoGuaranteeCreditReview); + String sid = loanNoGuaranteeCreditReview.getSid(); + //删除附件表中关于该linkSid的文件 + loanFileService.deleteByLinkSid(sid); + List homeVisitFiles = dto.getHomeVisitFiles(); + if (!homeVisitFiles.isEmpty()) { + loanFileService.saveAll(sid, homeVisitFiles, LoanFileEnum.HOME_VISIT_FILES.getAttachType()); + } + List creditReviewFiles = dto.getCreditReviewFiles(); + if (!creditReviewFiles.isEmpty()) { + loanFileService.saveAll(sid, creditReviewFiles, LoanFileEnum.CREDIT_REVIEW_FILES.getAttachType()); + } + List loanReviewFiles = dto.getLoanReviewFiles(); + if (!loanReviewFiles.isEmpty()) { + loanFileService.saveAll(sid, loanReviewFiles, LoanFileEnum.LOAN_REVIEW_FILES.getAttachType()); + } + } + return rb.success().setData(salesOrderSid); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.java index dea96d27ef..8f620a9ae1 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter; import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo; +import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.AppRepaymentPlanVo; import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.LoanRepaymentSchedule; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformation; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -21,4 +23,6 @@ public interface LoanRepaymentScheduleMapper extends BaseMapper getRepaymentPlanList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.xml index 0ecffc0f8f..2aa226e292 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleMapper.xml @@ -8,4 +8,20 @@ from loan_repayment_schedule where salesOrderSid = #{salesOrderSid} + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleRest.java index 92c1575d89..7ae29d682c 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleRest.java @@ -2,7 +2,10 @@ package com.yxt.anrui.riskcenter.biz.loanrepaymentschedule; import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.*; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformationVo; +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; @@ -42,4 +45,16 @@ public class LoanRepaymentScheduleRest implements LoanRepaymentScheduleFeign { public ResultBean> viewVinOneSchedule(String salesOrderSid) { return loanRepaymentScheduleService.viewVinOneSchedule(salesOrderSid); } + + @Override + public ResultBean> getRepaymentPlanList(PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo page = loanRepaymentScheduleService.getRepaymentPlanList(pq); + return rb.success().setData(page); + } + + @Override + public ResultBean getRepaymentPlanListBySid(String sid) { + return loanRepaymentScheduleService.getRepaymentPlanListBySid(sid); + } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java index 6b4c8e31c2..d672bd6dce 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java @@ -2,6 +2,10 @@ package com.yxt.anrui.riskcenter.biz.loanrepaymentschedule; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; import com.yxt.anrui.buscenter.api.bussalesorder.SolutionsDetailsssVo; import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontract; import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractFeign; @@ -11,18 +15,25 @@ import com.yxt.anrui.buscenter.api.busvehicledatahandover.BusDataListPdfVo; import com.yxt.anrui.buscenter.api.busvehicledatahandover.BusVehicleDataHandoverPdfVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; 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.riskcenter.api.loanrepaymentschedule.*; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo; import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformation; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformationQuery; +import com.yxt.anrui.riskcenter.api.loanwarrantinformation.LoanWarrantInformationVo; import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService; import com.yxt.anrui.riskcenter.biz.loansolutionsotherpolicy.LoanSolutionsOtherpolicyService; import com.yxt.common.base.config.component.DocPdfComponent; import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.StringUtils; import com.yxt.common.base.utils.WordConvertUtils; +import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -59,6 +70,8 @@ public class LoanRepaymentScheduleService extends MybatisBaseService busSalesOrderVehicles = busSalesOrderVehicleFeign.selectListByOrderSid(dto.getSalesOrderSid()).getData(); busSalesOrderVehicles.removeAll(Collections.singleton(null)); if (!busSalesOrderVehicles.isEmpty()) { @@ -231,6 +253,9 @@ public class LoanRepaymentScheduleService extends MybatisBaseService getRepaymentPlanList(PagerQuery pq) { + IPage page = PagerUtil.queryToPage(pq); + AppRepaymentPlanQuery pagerQuery = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("isDelete", 0); + qw.orderByDesc("createTime"); + qw.eq("staffSid", pagerQuery.getUserSid()); + if (StringUtils.isNotBlank(pagerQuery.getNames())) { + qw.and(wrapper -> wrapper.like("loanContractNo", pagerQuery.getNames()).or().like("borrowerName", pagerQuery.getNames()).or().like("bankName", pagerQuery.getNames())); + } + IPage pagging = baseMapper.getRepaymentPlanList(page, qw); + List records = pagging.getRecords(); + records.removeAll(Collections.singleton(null)); + if (!records.isEmpty()) { + String urlPrefix = docPdfComponent.getPrefixTemplateUrl(); + for (AppRepaymentPlanVo record : records) { + if (StringUtils.isNotBlank(record.getDownloadUrl())) { + record.setDownloadUrl(urlPrefix + record.getDownloadUrl()); + } + } + } + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean getRepaymentPlanListBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + AppRepaymentPlanDetailsVo vo = new AppRepaymentPlanDetailsVo(); + LoanRepaymentSchedule schedule = fetchBySid(sid); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String mainDate = ""; + String otherDate = ""; + String isOther = ""; + BigDecimal mainF = new BigDecimal(0); + BigDecimal otherF = new BigDecimal(0); + BigDecimal mainM = new BigDecimal(0); + BigDecimal otherM = new BigDecimal(0); + BigDecimal mainL = new BigDecimal(0); + BigDecimal otherL = new BigDecimal(0); + if (null != schedule) { + vo.setSid(sid); + if (StringUtils.isNotBlank(schedule.getLoanContractNo())) { + vo.setContractId(schedule.getLoanContractNo()); + } + if (StringUtils.isNotBlank(schedule.getBorrowerName())) { + vo.setLenderName(schedule.getBorrowerName()); + } + if (StringUtils.isNotBlank(schedule.getVehCount())) { + vo.setCarNumber(schedule.getVehCount()); + } + if (StringUtils.isNotBlank(schedule.getVinNo())) { + vo.setVinNo(schedule.getVinNo()); + } + if (StringUtils.isNotBlank(schedule.getBankName())) { + vo.setManagementName(schedule.getBankName()); + } + if (StringUtils.isNotBlank(schedule.getPolicyName())) { + vo.setFinancial(schedule.getPolicyName()); + } + if (StringUtils.isNotBlank(schedule.getStaffName())) { + vo.setSalesName(schedule.getStaffName()); + } + if (null != schedule.getMainRepayDate()) { + mainDate = sdf.format(schedule.getMainRepayDate()); + } + if (null != schedule.getOtherRepayDate()) { + otherDate = sdf.format(schedule.getOtherRepayDate()); + } + String mainRepayDate = ""; + String otherRepayDate = ""; + //主产品月还日 + if (StringUtils.isNotBlank(mainDate)) { + String[] splitMainDate = mainDate.split("-"); + String day = splitMainDate[2]; + if (day.length() == 2 && Integer.parseInt(day) >= 10) { + mainRepayDate = day; + } else { + mainRepayDate = day.replace("0", ""); + } + } + //其他融月还日 + if (StringUtils.isNotBlank(otherDate)) { + String[] splitOtherDate = otherDate.split("-"); + String day = splitOtherDate[2]; + if (day.length() == 2 && Integer.parseInt(day) >= 10) { + otherRepayDate = day; + } else { + otherRepayDate = day.replace("0", ""); + } + } + //月还金额 + if (null != schedule.getMainFirstRepay()) { + mainF = schedule.getMainFirstRepay(); + } + if (null != schedule.getMainMidRepay()) { + mainM = schedule.getMainMidRepay(); + } + if (null != schedule.getMainLastRepay()) { + mainL = schedule.getMainLastRepay(); + } + if (null != schedule.getOtherFirstRepay()) { + otherF = schedule.getOtherFirstRepay(); + } + if (null != schedule.getOtherMidRepay()) { + otherM = schedule.getOtherMidRepay(); + } + if (null != schedule.getOtherLastRepay()) { + otherL = schedule.getOtherLastRepay(); + } + //-----还款计划表列表信息------- + List scheduleVins = new ArrayList<>(); + if (StringUtils.isNotBlank(schedule.getMainPeriod())) { + int mainPeriod = Integer.parseInt(schedule.getMainPeriod()); + if (StringUtils.isNotBlank(schedule.getIsOtherPolicy())) { + isOther = schedule.getIsOtherPolicy(); + } + String otherPer = ""; + if (StringUtils.isNotBlank(schedule.getOtherPeriod())) { + otherPer = schedule.getOtherPeriod(); + } + int otherMidPer = 0; + int otherLastPer = 0; + String month = ""; + String year = ""; + String moth = ""; + String otherMoth = ""; + String otherFDate = ""; + String otherMonth = ""; + if (StringUtils.isNotBlank(mainDate)) { + String[] splitMain = mainDate.split("-"); + year = splitMain[0]; + moth = splitMain[1]; + if (moth.length() == 2 && Integer.parseInt(moth) >= 10) { + month = moth; + } else { + month = moth.replace("0", ""); + } + } + if (StringUtils.isNotBlank(otherDate)) { + String[] splitOther = otherDate.split("-"); + + otherMoth = splitOther[1]; + if (otherMoth.length() == 2 && Integer.parseInt(otherMoth) >= 10) { + otherMonth = otherMoth; + } else { + otherMonth = otherMoth.replace("0", ""); + } + otherFDate = splitOther[0] + otherMonth; + } + for (int i = 1; i <= mainPeriod; i++) { + String yearMonth = year + month; + AppRepaymentPlanListDetailsVo scheduleVo = new AppRepaymentPlanListDetailsVo(); + scheduleVo.setTimes(mainRepayDate); + scheduleVo.setOtherTimes(otherRepayDate); + scheduleVo.setMonth(year + "年" + month + "月"); + scheduleVo.setNumber(String.valueOf(i)); + int m = Integer.parseInt(month); + month = String.valueOf(++m); + if (Integer.parseInt(month) > 12) { + int y = Integer.parseInt(year); + year = String.valueOf(++y); + month = "1"; + } + if (isOther.equals("1")) { + //首期 + if (i == 1) { + scheduleVo.setMonthlyPayment(mainF.toString()); + } else if (i == mainPeriod) { + scheduleVo.setMonthlyPayment(mainL.toString()); + } else { + scheduleVo.setMonthlyPayment(mainM.toString()); + } + if ((yearMonth.equals(otherFDate))) { + scheduleVo.setOtherMonthlyPayment(otherF.toString()); + scheduleVo.setTotal((new BigDecimal(scheduleVo.getMonthlyPayment()).add(otherF)).toString()); + otherMidPer = (i + Integer.parseInt(otherPer)) - 2; + otherLastPer = (i + Integer.parseInt(otherPer)) - 1; + } else if (i <= otherMidPer && otherMidPer != 0) { + scheduleVo.setOtherMonthlyPayment(otherM.toString()); + scheduleVo.setTotal((new BigDecimal(scheduleVo.getMonthlyPayment()).add(otherM)).toString()); + } else if (i == otherLastPer && otherLastPer != 0) { + scheduleVo.setOtherMonthlyPayment(otherL.toString()); + scheduleVo.setTotal((new BigDecimal(scheduleVo.getMonthlyPayment()).add(otherL)).toString()); + } else if (scheduleVo.getOtherMonthlyPayment() == null || "".equals(scheduleVo.getOtherMonthlyPayment())) { + scheduleVo.setTotal(scheduleVo.getMonthlyPayment()); + scheduleVo.setOtherMonthlyPayment(""); + } + } else if (isOther.equals("0")) { + //首期 + if (i == 1) { + scheduleVo.setMonthlyPayment(mainF.toString()); + } else if (i == mainPeriod) { + scheduleVo.setMonthlyPayment(mainL.toString()); + } else { + scheduleVo.setMonthlyPayment(mainM.toString()); + } + if (scheduleVo.getOtherMonthlyPayment() == null || "".equals(scheduleVo.getOtherMonthlyPayment())) { + scheduleVo.setTotal(scheduleVo.getMonthlyPayment()); + scheduleVo.setOtherMonthlyPayment(""); + } + } + scheduleVins.add(scheduleVo); + } + if (!scheduleVins.isEmpty()) { + vo.setRecords(scheduleVins); + } + } + } + return rb.success().setData(vo); + } } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanDetailsVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanDetailsVo.java new file mode 100644 index 0000000000..1ab3093eb2 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanDetailsVo.java @@ -0,0 +1,35 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Administrator + * @description + * @date 2023/8/28 10:41 + */ +@Data +public class RepaymentPlanDetailsVo implements Vo { + @ApiModelProperty("sid") + private String sid; + @ApiModelProperty("合同号") + private String contractId; + @ApiModelProperty("贷款人名称") + private String lenderName; + @ApiModelProperty("车辆台数") + private String carNumber; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("资方") + private String managementName; + @ApiModelProperty("金融产品") + private String financial; + @ApiModelProperty("销售专员") + private String salesName; + private List records = new ArrayList<>(); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeign.java new file mode 100644 index 0000000000..6a44375f8e --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeign.java @@ -0,0 +1,37 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + + +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 io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + +/** + * @Author + * @Date + * @Description + */ +@Api(tags = "还款计划表") +@FeignClient( + contextId = "terminal-RepaymentPlan", + name = "anrui-terminal", + path = "/riskcenter/v1/repaymentPlan", + fallback = RepaymentPlanFeignFallback.class) +public interface RepaymentPlanFeign { + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/getRepaymentPlanList") + @ResponseBody + public ResultBean> getRepaymentPlanList(@RequestBody PagerQuery pq); + + + @ApiOperation("查看还款计划表") + @GetMapping("/getRepaymentPlanListBySid") + @ResponseBody + public ResultBean getRepaymentPlanListBySid(@RequestParam("sid") String sid); + + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeignFallback.java new file mode 100644 index 0000000000..5d54632b77 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanFeignFallback.java @@ -0,0 +1,27 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + +import com.yxt.anrui.terminal.api.risk.mortgage.AppMortgageInformationTransactDto; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.stereotype.Component; + +/** + * @Author + * @Date 2023/3/21 15:19 + * @Description + */ +@Component +public class RepaymentPlanFeignFallback implements RepaymentPlanFeign { + + + @Override + public ResultBean> getRepaymentPlanList(PagerQuery pq) { + return null; + } + + @Override + public ResultBean getRepaymentPlanListBySid(String sid) { + return null; + } +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanListDetailsVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanListDetailsVo.java new file mode 100644 index 0000000000..4c5f379461 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanListDetailsVo.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/11 14:26 + */ +@Data +public class RepaymentPlanListDetailsVo implements Vo { + + private String times; + private String otherTimes; + private String number; + private String total; + private String month; + private String monthlyPayment; + private String otherMonthlyPayment; + private String companyMonthlyPayment; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanQuery.java new file mode 100644 index 0000000000..5467920433 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanQuery.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/28 10:35 + */ +@Data +public class RepaymentPlanQuery implements Query { + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("合同编号/贷款人姓名/资方名称") + private String names; + + @ApiModelProperty("当前组织机构全路径sid") + private String orgPath; + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanVo.java new file mode 100644 index 0000000000..1970f8e968 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/repaymentplan/RepaymentPlanVo.java @@ -0,0 +1,34 @@ +package com.yxt.anrui.terminal.api.risk.repaymentplan; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/28 10:33 + */ +@Data +public class RepaymentPlanVo implements Vo { + + @ApiModelProperty("业务sid") + private String sid; + @ApiModelProperty("消贷合同编号") + private String contractId; + @ApiModelProperty("贷款人名称") + private String lenderName; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("资方") + private String managementName; + @ApiModelProperty("金融产品") + private String financial; + @ApiModelProperty("销售专员") + private String salesName; + @ApiModelProperty("车辆台数") + private String carNum; + @ApiModelProperty("下载路径") + private String downloadUrl; + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanRest.java new file mode 100644 index 0000000000..fd46a23cda --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanRest.java @@ -0,0 +1,39 @@ +package com.yxt.anrui.terminal.biz.risk.repaymentplan; + +import com.yxt.anrui.terminal.api.risk.mortgage.*; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanDetailsVo; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanFeign; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanQuery; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanVo; +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.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @Author + * @Date 2023/3/25 9:39 + * @Description + */ +@Api(tags = "还款计划表") +@Controller +@RequestMapping("/riskcenter/v1/repaymentPlan") +public class RepaymentPlanRest implements RepaymentPlanFeign { + + + @Autowired + private RepaymentPlanService repaymentPlanService; + + @Override + public ResultBean> getRepaymentPlanList(PagerQuery pq) { + return repaymentPlanService.getRepaymentPlanList(pq); + } + + @Override + public ResultBean getRepaymentPlanListBySid(String sid) { + return repaymentPlanService.getRepaymentPlanListBySid(sid); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanService.java new file mode 100644 index 0000000000..72ae4bef49 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/repaymentplan/RepaymentPlanService.java @@ -0,0 +1,57 @@ +package com.yxt.anrui.terminal.biz.risk.repaymentplan; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.riskcenter.api.loanmortgageinformationtransact.*; +import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.AppRepaymentPlanDetailsVo; +import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.AppRepaymentPlanQuery; +import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.AppRepaymentPlanVo; +import com.yxt.anrui.riskcenter.api.loanrepaymentschedule.LoanRepaymentScheduleFeign; +import com.yxt.anrui.terminal.api.risk.mortgage.AppMortgageInformationTransactDetailsVo; +import com.yxt.anrui.terminal.api.risk.mortgage.AppMortgageInformationTransactDto; +import com.yxt.anrui.terminal.api.risk.mortgage.AppMortgageInformationTransactQuery; +import com.yxt.anrui.terminal.api.risk.mortgage.AppMortgageInformationTransactVo; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanDetailsVo; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanQuery; +import com.yxt.anrui.terminal.api.risk.repaymentplan.RepaymentPlanVo; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @Author + * @Date 2023/3/25 9:40 + * @Description + */ +@Service +public class RepaymentPlanService { + + + @Autowired + private LoanRepaymentScheduleFeign loanRepaymentScheduleFeign; + + + public ResultBean> getRepaymentPlanList(PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pagerVo = new PagerVo<>(); + PagerQuery pagerQuery = new PagerQuery<>(); + BeanUtil.copyProperties(pq, pagerQuery); + ResultBean> repaymentPlanList = loanRepaymentScheduleFeign.getRepaymentPlanList(pagerQuery); + if (repaymentPlanList.getSuccess()) { + PagerVo data = repaymentPlanList.getData(); + BeanUtil.copyProperties(data, pagerVo); + } + return rb.success().setData(pagerVo); + } + + public ResultBean getRepaymentPlanListBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + RepaymentPlanDetailsVo vo = new RepaymentPlanDetailsVo(); + AppRepaymentPlanDetailsVo data = loanRepaymentScheduleFeign.getRepaymentPlanListBySid(sid).getData(); + if (null != data) { + BeanUtil.copyProperties(data, vo); + } + return rb.success().setData(vo); + } +} From 353d8dcf61904b72614b6ed76804333227da2c3e Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Mon, 11 Sep 2023 14:41:17 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=87=91=E8=9E=8D?= =?UTF-8?q?=E4=BA=A7=E5=93=81=E6=94=BF=E7=AD=96=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../financialpolicymanagementAdd.vue | 54 ++++++++++--------- .../financialpolicymanagementInfo.vue | 6 +-- 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementAdd.vue b/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementAdd.vue index 5980d45b65..a4380628f2 100644 --- a/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementAdd.vue +++ b/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementAdd.vue @@ -11,13 +11,13 @@
金融产品政策
- -
产品政策名称
+ +
产品政策名称:
- {{ formobj.bankShortName }} {{ formobj.period !== '' ? formobj.period + '期' : '' }} {{ formobj.guaranteeTypeValue !== '' ? '( ' + formobj.guaranteeTypeValue + '、' : '' }} {{ formobj.isPack == '1' ? '打包 )' : formobj.isPack == '0' ? '不打包 )' : '' }} {{ formobj.downPayRatio }} {{ formobj.bondRatio !== '' ? '+ ' + formobj.bondRatio : '' }} + {{ formobj.bankShortName }} {{ formobj.period !== '' ? formobj.period + '期' : '' }} {{ formobj.guaranteeTypeValue !== '' ? '( ' + formobj.guaranteeTypeValue + '、' : '' }} {{ formobj.isPack == '1' ? '打包 )' : formobj.isPack == '0' ? '不打包 )' : '' }} {{ formobj.downPayRatio }} {{ formobj.bondRatio !== '' ? '+ ' + formobj.bondRatio : '' }}
- +
适用销售部门
@@ -54,7 +54,7 @@
车辆功能
- + @@ -123,7 +123,7 @@
标准年利率(%)
- +
@@ -139,19 +139,19 @@
服务费(%)(元)
- +
保险保证金(元)
- +
落户保证金(元)
- +
@@ -159,13 +159,13 @@
单车意外险/年(元)
- +
名义/留购价款(元)
- +
@@ -205,13 +205,13 @@
最高融资比例(%)
- +
最高融资额(元)
- +
@@ -227,7 +227,7 @@
年利率(%)
- +
@@ -309,8 +309,8 @@ export default { vehAccidentAmount: '', vehCategoryKey: '', vehCategoryValue: '', - vehTypeKey: '', - vehTypeValue: '', + vehTypeKeyList: [], + vehTypeValueList: [], yearRatio: '' }, rules: {} @@ -450,14 +450,6 @@ export default { this.formobj.vehCategoryValue = '' } }, - vehTypeChange(value) { - const choose = this.vehicleFunction_list.filter((item) => item.dictKey === value) - if (choose !== null && choose.length > 0) { - this.formobj.vehTypeValue = choose[0].dictValue - } else { - this.formobj.vehTypeValue = '' - } - }, guaranteeTypeChange(value) { const choose = this.guaranteeType_list.filter((item) => item.dictKey === value) if (choose !== null && choose.length > 0) { @@ -559,6 +551,15 @@ export default { } } } + if (this.formobj.vehTypeKeyList.length > 0) { + for (var m = 0; m < this.vehicleFunction_list.length; m++) { + for (var n = 0; n < this.formobj.vehTypeKeyList.length; n++) { + if (this.vehicleFunction_list[m].dictKey === this.formobj.vehTypeKeyList[n]) { + this.formobj.vehTypeValueList.push(this.vehicleFunction_list[m].dictValue) + } + } + } + } this.submitdisabled = true // 保存 req.saveOrUpdate(this.formobj).then((res) => { @@ -621,8 +622,8 @@ export default { vehAccidentAmount: '', vehCategoryKey: '', vehCategoryValue: '', - vehTypeKey: '', - vehTypeValue: '', + vehTypeKeyList: [], + vehTypeValueList: [], yearRatio: '' } this.useDept_list = [] @@ -639,6 +640,7 @@ export default { } .addinputInfo { margin-left: 130px !important; + width: calc(100% - 135px); } .tlineheightb { display: flex; diff --git a/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementInfo.vue b/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementInfo.vue index f708f44b6c..bdc2818223 100644 --- a/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementInfo.vue +++ b/anrui-riskcenter-ui/src/views/financialpolicymanagement/financialpolicymanagementInfo.vue @@ -13,7 +13,7 @@ -
产品政策名称
+
产品政策名称:
{{ formobj.bankShortName }} {{ formobj.period !== '' ? formobj.period + '期' : '' }} {{ formobj.guaranteeTypeValue !== '' ? '( ' + formobj.guaranteeTypeValue + '、' : '' }} {{ formobj.isPack == '1' ? '打包 )' : formobj.isPack == '0' ? '不打包 )' : '' }} {{ formobj.downPayRatio }} {{ formobj.bondRatio !== '' ? '+ ' + formobj.bondRatio : '' }} @@ -21,7 +21,7 @@ -
适用销售部门
+
适用销售部门:
{{ formobj.useDeptNames }}
@@ -38,7 +38,7 @@
车辆大类
{{ formobj.vehCategoryValue }} - +
车辆功能
{{ formobj.vehTypeValue }}
From 94bf83e387f477dbd4d0d0e9f075fc3bc4e1f783 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 11 Sep 2023 14:57:55 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bussalesorder/BusSalesOrderService.java | 7 ++++- .../BusSalesOrderVehicleMapper.java | 1 + .../BusSalesOrderVehicleMapper.xml | 6 ++++ .../BusSalesOrderVehicleService.java | 4 +++ .../flowable/api/flow2/FlowableMessageVo.java | 2 ++ .../anrui/flowable/biz/flow2/FlowService.java | 2 +- .../LoanFinOtherPolicy.java | 4 +++ .../api/loanfinpolicy/LoanFinPolicyDto.java | 4 +-- .../biz/loanfinpolicy/LoanFinPolicyRest.java | 4 +-- .../loanfinpolicy/LoanFinPolicyService.java | 28 +++++++++++++++++++ 10 files changed, 56 insertions(+), 6 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java index 001b01c1b7..a629438247 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java @@ -7302,7 +7302,12 @@ public class BusSalesOrderService extends MybatisBaseService selectByOrderSid(@Param("salesOrderSid") String salesOrderSid); List selectByOrderSid2(@Param("salesOrderSid") String salesOrderSid,@Param("borrowSid") String borrowSid); + List selectByOrderSid3(@Param("salesOrderSid") String salesOrderSid); @Select("select * from bus_sales_order_vehicle where sid = #{busVinSid}") BusSalesOrderVehicle selectBySalesOrderVehiclerSid(String busVinSid); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml index e4beae389d..62c567ed1b 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.xml @@ -86,6 +86,12 @@ where salesOrderSid = #{salesOrderSid} and borrowerSid = #{borrowSid} + +