From a60ad01225fa90704e214d1df31c20243a46302b Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 21 Aug 2023 16:39:19 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/bussalesorder/BusSalesOrderMapper.xml | 18 +++++++++-- .../bussalesorder/BusSalesOrderService.java | 5 ++- .../BusSalesOrderVehicleMapper.xml | 29 +++++++++++++++-- .../BusSalesOrderVehicleService.java | 8 ++--- .../anrui/flowable/api/flow2/FlowFeign.java | 5 +++ .../anrui/flowable/biz/flow2/FlowRest.java | 7 ++++- .../anrui/flowable/biz/flow2/FlowService.java | 31 +++++++++++++++++-- 7 files changed, 87 insertions(+), 16 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml index fd90023924..2ff8de9bfc 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml @@ -509,16 +509,28 @@ @@ -150,9 +170,14 @@ from bus_sales_order_vehicle bv left join bus_sales_order bo on bo.sid = bv.salesOrderSid left join bus_sales_order_model bm on bo.sid = bm.salesOrderSid + LEFT JOIN anrui_base.base_vehicle_state bs ON bs.busSid = bv.sid ${ew.sqlSegment} - and length(bv.linkSid)>0 + AND bs.finSourceKey = '2' + AND length( bv.linkSid )> 0 + AND bs.finState = '0' + AND bs.carryVehicleState = '0' + AND bs.busState = '401' diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java index 2170d84cc3..96055e79da 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java @@ -424,7 +424,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode()); if (!resultBean.getData().isEmpty()) { resultBean.getData().removeAll(Collections.singleton(null)); @@ -439,7 +439,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService list = baseMapper.getCanUseCars(qw); list.removeAll(Collections.singleton(null)); if (!list.isEmpty()) { @@ -490,7 +490,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode()); + /* ResultBean> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode()); if (!resultBean.getData().isEmpty()) { resultBean.getData().removeAll(Collections.singleton(null)); List vinSidList = resultBean.getData().stream().map(v -> v.getVehSid()).collect(Collectors.toList()); @@ -504,7 +504,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService pagging = baseMapper.selectPageVo(page, qw); PagerVo p = PagerUtil.pageToVo(pagging, null); List list = pagging.getRecords(); diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java index 9e4f439e5f..6198639d99 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java @@ -31,4 +31,9 @@ public interface FlowFeign { @PostMapping(value = "/handleProsess") @ResponseBody ResultBean handleProsess(@RequestBody BusinessVariables bv); + + @ApiOperation(value = "驳回流程") + @PostMapping(value = "/taskReject") + @ResponseBody + ResultBean taskReject(@RequestBody com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl); } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java index eb77c65232..5faa7d7719 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java @@ -57,7 +57,7 @@ public class FlowRest implements FlowFeign { formVariables.put("createrOrgPath", orgPath); formVariables.put("businessSid", bv.getBusinessSid()); //获取下一环节待办人 - if(StringUtils.isBlank(bv.getNextNodeUserSids())){ + if (StringUtils.isBlank(bv.getNextNodeUserSids())) { ResultBean userResultBean = flowService.getNextNodeUser(bv); bv.setNextNodeUserSids(userResultBean.getData()); } @@ -100,5 +100,10 @@ public class FlowRest implements FlowFeign { return updateFlowFieldVoResultBean; } + @Override + public ResultBean taskReject(FlowTaskVo fl) { + return flowService.taskReject(fl); + } + } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java index 0a1aa20f05..7b6417f123 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java @@ -134,6 +134,7 @@ public class FlowService extends MybatisBaseService { /** * 根据业务参数取流程流转的环节 信息 + * * @param bv * @return */ @@ -273,6 +274,7 @@ public class FlowService extends MybatisBaseService { /** * 启动流程 + * * @param bv * @return */ @@ -426,6 +428,7 @@ public class FlowService extends MybatisBaseService { /** * 办理 + * * @param bv * @param b * @return @@ -726,10 +729,10 @@ public class FlowService extends MybatisBaseService { userSids.append(processVariables.get("sendRecommendSid").toString()).append(","); } //查询是否有设置转办的,抄送给设置转办人员 - List zbUserSids = processCommentService.selectByIdAndComment("转办",bv.getInstanceId()); + List zbUserSids = processCommentService.selectByIdAndComment("转办", bv.getInstanceId()); zbUserSids.removeAll(Collections.singleton(null)); - if(!zbUserSids.isEmpty()){ - String zbUser = String.join(",",zbUserSids); + if (!zbUserSids.isEmpty()) { + String zbUser = String.join(",", zbUserSids); userSids.append(zbUser).append(","); } userSids.deleteCharAt(userSids.length() - 1); @@ -746,4 +749,26 @@ public class FlowService extends MybatisBaseService { } + public ResultBean taskReject(FlowTaskVo fl) { + ResultBean rb = ResultBean.fireFail(); + UpdateFlowFieldVo vo = new UpdateFlowFieldVo(); + //获取表单中的参数 + Map formVariables = fl.getValues(); + formVariables = formVariables == null ? new HashMap<>() : formVariables; + formVariables.put("businessSid", fl.getBusinessSid()); + //当前任务task + Task task = taskService.createTaskQuery().taskId(fl.getTaskId()).singleResult(); + if (task.isSuspended()) { + return rb.setMsg("任务处于挂起状态"); + } + // 获取流程定义信息 + ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(task.getProcessDefinitionId()).singleResult(); + // 获取所有节点信息 + Process process = repositoryService.getBpmnModel(processDefinition.getId()).getProcesses().get(0); + // 获取全部节点列表,包含子节点 + Collection allElements = FlowableUtils.getAllElements(process.getFlowElements(), null); + + + return null; + } } From 21fa0a6f19a6f18de2bb9c8a2a872e497eab06aa Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Mon, 21 Aug 2023 17:23:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=A3=8E=E6=8E=A7=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E3=80=81=E9=99=84=E4=BB=B6=E6=B8=85=E5=8D=95?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui/base/api/basefiles/BaseFiles.java | 72 +++++ .../api/basefiles/BaseFilesDetailsVo.java | 40 +++ .../base/api/basefiles/BaseFilesDto.java | 80 ++++++ .../base/api/basefiles/BaseFilesFeign.java | 107 ++++++++ .../api/basefiles/BaseFilesFeignFallback.java | 79 ++++++ .../base/api/basefiles/BaseFilesQuery.java | 61 +++++ .../anrui/base/api/basefiles/BaseFilesVo.java | 75 +++++ .../base/biz/basefiles/BaseFilesMapper.java | 62 +++++ .../base/biz/basefiles/BaseFilesMapper.xml | 27 ++ .../base/biz/basefiles/BaseFilesRest.java | 92 +++++++ .../base/biz/basefiles/BaseFilesService.java | 257 ++++++++++++++++++ .../api/loanparameter/LoanParameter.java | 32 +++ .../loanparameter/LoanParameterDetailsVo.java | 25 ++ .../api/loanparameter/LoanParameterDto.java | 27 ++ .../api/loanparameter/LoanParameterFeign.java | 53 ++++ .../LoanParameterFeignFallback.java | 35 +++ .../api/loanparameter/LoanParameterQuery.java | 29 ++ .../api/loanparameter/LoanParameterVo.java | 23 ++ .../loanparameter/LoanParameterMapper.java | 24 ++ .../biz/loanparameter/LoanParameterMapper.xml | 21 ++ .../biz/loanparameter/LoanParameterRest.java | 51 ++++ .../loanparameter/LoanParameterService.java | 148 ++++++++++ 22 files changed, 1420 insertions(+) create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java create mode 100644 anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java create mode 100644 anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml create mode 100644 anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java create mode 100644 anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java new file mode 100644 index 0000000000..8af566ddc3 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java @@ -0,0 +1,72 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + +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; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataList.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataList
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "附件清单", description = "附件清单") +@TableName("base_files") +@Data +public class BaseFiles extends BaseEntity { + private static final long serialVersionUID = 1L; + @ApiModelProperty("业务类别key") + private String busTypeKey; + @ApiModelProperty("业务类别value") + private String busTypeValue; + @ApiModelProperty("文件编号") + private String fileNo; + @ApiModelProperty("文件名称") + private String fileName; + @ApiModelProperty("文件格式") + private String fileType; + @ApiModelProperty("示例") + private String sample; + @ApiModelProperty("份数") + private Integer count; + @ApiModelProperty("是否必传0非必传,1必传") + private Integer isUpload; + @ApiModelProperty("分公司sid") + private String useOrgSid; + @ApiModelProperty("分公司名") + private String useOrgName; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java new file mode 100644 index 0000000000..e44a9df0ca --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java @@ -0,0 +1,40 @@ +package com.yxt.anrui.base.api.basefiles; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/2/26 15:40 + * @Description + */ +@Data +public class BaseFilesDetailsVo implements Vo { + private static final long serialVersionUID = -8075833659958149115L; + private String sid; + private String userSid; + @ApiModelProperty("业务类别key") + private String busTypeKey; + @ApiModelProperty("业务类别value") + private String busTypeValue; + @ApiModelProperty("文件编号") + private String fileNo; + @ApiModelProperty("文件名称") + private String fileName; + @ApiModelProperty("文件格式") + private String fileType; + @ApiModelProperty("份数") + private Integer count; + @ApiModelProperty("是否必传0非必传,1必传") + private Integer isUpload; + @ApiModelProperty("分公司sid") + private String useOrgSid; + @ApiModelProperty("示例") + private List files = new ArrayList<>(); + @ApiModelProperty("备注") + private String remarks; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java new file mode 100644 index 0000000000..d0382a9e05 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java @@ -0,0 +1,80 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + + +import com.yxt.anrui.base.api.commonappendix.CommonAppendixDto; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.ArrayList; +import java.util.List; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListDto.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListDto
+ * Description: 资料清单 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "资料清单 数据传输对象", description = "资料清单 数据传输对象") +@Data +public class BaseFilesDto implements Dto { + private static final long serialVersionUID = 6031157146326125370L; + + private String sid; + private String userSid; + @ApiModelProperty("业务类别key") + private String busTypeKey; + @ApiModelProperty("业务类别value") + private String busTypeValue; + @ApiModelProperty("文件编号") + private String fileNo; + @ApiModelProperty("文件名称") + private String fileName; + @ApiModelProperty("文件格式") + private String fileType; + @ApiModelProperty("份数") + private Integer count; + @ApiModelProperty("是否必传0非必传,1必传") + private Integer isUpload; + @ApiModelProperty("分公司sid") + private String useOrgSid; + @ApiModelProperty("示例") + private List files = new ArrayList<>(); + @ApiModelProperty("备注") + private String remarks; +} \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java new file mode 100644 index 0000000000..68c0ff0a15 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java @@ -0,0 +1,107 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + +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.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeign.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListFeign
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "附件清单") +@FeignClient( + contextId = "anrui-base-BaseFiles", + name = "anrui-base", + path = "v1/basefiles", + fallback = BaseFilesFeignFallback.class) +public interface BaseFilesFeign { + /** + * PC-附件清单分页列表 + * + * @param pq 查询条件 + * @return + */ + @ApiOperation("PC-附件清单分页列表") + @PostMapping("/listPage") + @ResponseBody + ResultBean> listPage(@RequestBody PagerQuery pq); + + /** + * PC-附件清单新增保存 + * + * @param dto 数据传输对象 + * @return + */ + @ApiOperation("新增编辑") + @PostMapping("/saveOrUpdate") + ResultBean saveOrUpdateBaseFiles(@RequestBody BaseFilesDto dto); + + /** + * PC-附件清单编辑初始化和详情 + * + * @param sid 资料清单sid + * @return + */ + @ApiOperation("编辑初始化、详情") + @GetMapping("/details/{sid}") + ResultBean selectDetails(@PathVariable("sid") String sid); + + @ApiOperation("批量删除") + @DeleteMapping("/deleteBySids") + @ResponseBody + public ResultBean deleteBySids(@RequestBody String[] sids); + + + /** + * PC-生成文件编号 + * + * @param busTypeKey 业务类型key + * @return + */ + @ApiOperation("生成文件编号") + @GetMapping("/createFileNo") + ResultBean createFileNo(@RequestParam("busTypeKey") String busTypeKey); + + +} \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java new file mode 100644 index 0000000000..5b888ae2c1 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java @@ -0,0 +1,79 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + +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; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeignFallback.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListFeignFallback
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Component +public class BaseFilesFeignFallback implements BaseFilesFeign { + + + @Override + public ResultBean> listPage(PagerQuery pq) { + return null; + } + + @Override + public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) { + return null; + } + + + @Override + public ResultBean selectDetails(String sid) { + return null; + } + + @Override + public ResultBean deleteBySids(String[] sids) { + return null; + } + + @Override + public ResultBean createFileNo(String busTypeKey) { + return null; + } + + +} \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java new file mode 100644 index 0000000000..ecb8351138 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java @@ -0,0 +1,61 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListQuery.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListQuery
+ * Description: 资料清单 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "资料清单 查询条件", description = "资料清单 查询条件") +@Data +public class BaseFilesQuery implements Query { + + private String userSid; + @ApiModelProperty("业务类别key") + private String busTypeKey; + @ApiModelProperty("文件名称") + private String fileName; + @ApiModelProperty("是否必传0非必传,1必传") + private Integer isUpload; + @ApiModelProperty("分公司sid") + private String useOrgSid; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java new file mode 100644 index 0000000000..4cc2592527 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java @@ -0,0 +1,75 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.api.basefiles; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListVo.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListVo
+ * Description: 资料清单 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "资料清单 视图数据对象", description = "资料清单 视图数据对象") +@Data +public class BaseFilesVo implements Vo { + + private static final long serialVersionUID = 8585166912605249026L; + @ApiModelProperty(value = "sid") + private String sid; + @ApiModelProperty("业务类别value") + private String busTypeValue; + @ApiModelProperty("文件名称") + private String fileName; + @ApiModelProperty("文件格式") + private String fileType; + @ApiModelProperty("份数") + private Integer count; + @ApiModelProperty("是否必传0非必传,1必传") + private Integer isUpload; + @ApiModelProperty("示例") + private String sample; + @ApiModelProperty("示例") + private List files = new ArrayList<>(); + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("查看附件按钮显示") + private Boolean showSampleBtn; +} \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java new file mode 100644 index 0000000000..dcdcc7eb21 --- /dev/null +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java @@ -0,0 +1,62 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.biz.basefiles; + +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.base.api.basefiles.BaseFiles; +import com.yxt.anrui.base.api.basefiles.BaseFilesVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListMapper.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListMapper
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface BaseFilesMapper extends BaseMapper { + + IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + + int updateBySidDelete(String sid); + + + String createFileNo(String busTypeKey); +} \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml new file mode 100644 index 0000000000..13e446a146 --- /dev/null +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml @@ -0,0 +1,27 @@ + + + + + update base_files + set isDelete = 1 + where sid = #{sid} + + + + + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java new file mode 100644 index 0000000000..267210a2fb --- /dev/null +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java @@ -0,0 +1,92 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.biz.basefiles; + +import com.yxt.anrui.base.api.basefiles.*; + +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; + +import javax.validation.Valid; +import java.util.Arrays; +import java.util.List; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeignFallback.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListRest
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "资料清单") +@RestController("com.yxt.anrui.base.biz.basefiles.BaseFilesRest") +@RequestMapping("v1/basefiles") +public class BaseFilesRest implements BaseFilesFeign { + + @Autowired + private BaseFilesService baseFilesService; + + @Override + public ResultBean> listPage(PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = baseFilesService.listPage(pq); + return rb.success().setData(pv); + } + + @Override + public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) { + return baseFilesService.saveOrUpdateBaseFiles(dto); + } + + + @Override + public ResultBean selectDetails(String sid) { + return baseFilesService.selectDetails(sid); + } + + @Override + public ResultBean deleteBySids(String[] sids) { + return baseFilesService.deleteBySids(sids); + } + + @Override + public ResultBean createFileNo(String busTypeKey) { + return baseFilesService.createFileNo(busTypeKey); + } + +} diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java new file mode 100644 index 0000000000..92f9956c21 --- /dev/null +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java @@ -0,0 +1,257 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.base.biz.basefiles; + +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.base.api.basefiles.*; +import com.yxt.anrui.base.biz.commonappendix.CommonAppendixService; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; +import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; +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.common.base.config.component.FileUploadComponent; +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.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 java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.List; + +/** + * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListService.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListService
+ * Description: 资料清单 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class BaseFilesService extends MybatisBaseService { + + + @Autowired + private FileUploadComponent fileUploadComponent; + @Autowired + private CommonAppendixService commonAppendixService; + + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + /** + * 编辑保存 + * + * @param dto + * @return + */ + public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isNotBlank(dto.getSid())) { + BaseFiles baseFiles = fetchBySid(dto.getSid()); + BeanUtil.copyProperties(dto, baseFiles, "id", "sid"); + StringBuilder sb = new StringBuilder(); + String urlPrefix = fileUploadComponent.getUrlPrefix(); + if (!dto.getFiles().isEmpty()) { + for (String filePath : dto.getFiles()) { + String path = filePath.substring(urlPrefix.length()); + sb.append(path).append(","); + } + sb.delete(sb.length() - 1, sb.length()); + baseFiles.setSample(sb.toString()); + } + baseMapper.updateById(baseFiles); + } else { + BaseFiles baseFiles = new BaseFiles(); + BeanUtil.copyProperties(dto, baseFiles, "id", "sid"); + baseFiles.setCreateBySid(dto.getUserSid()); + String userOrgSid = dto.getUseOrgSid(); + baseFiles.setUseOrgSid(userOrgSid); + ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid); + if (organizationVo.getSuccess()) { + SysOrganizationVo organizationVoData = organizationVo.getData(); + if (null != organizationVoData) { + baseFiles.setUseOrgName(organizationVoData.getName()); + } + } + StringBuilder sb = new StringBuilder(); + String urlPrefix = fileUploadComponent.getUrlPrefix(); + if (!dto.getFiles().isEmpty()) { + for (String filePath : dto.getFiles()) { + String path = filePath.substring(urlPrefix.length()); + sb.append(path).append(","); + } + sb.delete(sb.length() - 1, sb.length()); + baseFiles.setSample(sb.toString()); + } + baseMapper.insert(baseFiles); + } + return rb.success(); + } + + /** + * 分页列表 + * + * @param pq + * @return + */ + public PagerVo listPage(PagerQuery pq) { + IPage page = PagerUtil.queryToPage(pq); + BaseFilesQuery pagerQuery = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + //业务类型 + if (StringUtils.isNotBlank(pagerQuery.getBusTypeKey())) { + qw.eq("busTypeKey", pagerQuery.getBusTypeKey()); + } + //文件名称 + if (StringUtils.isNotBlank(pagerQuery.getFileName())) { + qw.like("fileName", pagerQuery.getFileName()); + } + //是否必传 + if (null != pagerQuery.getIsUpload()) { + qw.eq("isUpload", pagerQuery.getIsUpload()); + } + qw.eq("useOrgSid", pagerQuery.getUseOrgSid()); + qw.eq("isDelete", 0); + qw.orderByDesc("createTime"); + IPage pagging = baseMapper.listPage(page, qw); + List records = pagging.getRecords(); + records.removeAll(Collections.singleton(null)); + if (!records.isEmpty()) { + for (BaseFilesVo record : records) { + record.setShowSampleBtn(false); + if (StringUtils.isNotBlank(record.getSample())) { + record.setShowSampleBtn(true); + String filePath = record.getSample(); + List filePaths = new ArrayList<>(); + String array[] = filePath.split(","); + for (int i = 0; i < array.length; i++) { + String urlPrefix = fileUploadComponent.getUrlPrefix(); + filePath = urlPrefix + array[i]; + filePaths.add(filePath); + record.setFiles(filePaths); + } + } + } + } + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + /** + * 编辑回显 + * + * @param sid + * @return + */ + public ResultBean selectDetails(String sid) { + ResultBean rb = ResultBean.fireFail(); + BaseFilesDetailsVo vo = new BaseFilesDetailsVo(); + BaseFiles baseFiles = fetchBySid(sid); + BeanUtil.copyProperties(baseFiles, vo); + if (StringUtils.isNotBlank(baseFiles.getSample())) { + String filePath = baseFiles.getSample(); + List filePaths = new ArrayList<>(); + String array[] = filePath.split(","); + for (int i = 0; i < array.length; i++) { + String urlPrefix = fileUploadComponent.getUrlPrefix(); + filePath = urlPrefix + array[i]; + filePaths.add(filePath); + vo.setFiles(filePaths); + } + } + return rb.success().setData(vo); + } + + /** + * 批量删除 + * + * @param sids + * @return + */ + public ResultBean deleteBySids(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + for (String sid : sids) { + int count = baseMapper.updateBySidDelete(sid); + if (count == 0) { + return rb.setMsg("删除失败"); + } + } + return ResultBean.fireSuccess().setMsg("删除成功"); + } + + /** + * 生成文件编号 + * + * @param busTypeKey + * @return + */ + public ResultBean createFileNo(String busTypeKey) { + ResultBean rb = ResultBean.fireFail(); + String fileNo = baseMapper.createFileNo(busTypeKey); + String finNo = ""; + if (StringUtils.isNotBlank(fileNo)) { + String substringFileNo = fileNo.substring(busTypeKey.length()); + int parseInt = Integer.parseInt(substringFileNo); + if (parseInt >= 999) { + int i = Integer.parseInt(substringFileNo); + int finalNo = i + 1; + String value = String.valueOf(finalNo); + finNo = busTypeKey + value; + } else { + String countNo = substringFileNo.substring(substringFileNo.lastIndexOf('0') + 1, substringFileNo.length()); + int i = Integer.parseInt(countNo); + int finalNo = i + 1; + String value = String.valueOf(finalNo); + if (i == 99) { + finNo = busTypeKey + value; + } else if (i < 99 && i >= 9) { + finNo = busTypeKey + "0" + value; + } else if (i < 9) { + finNo = busTypeKey + "00" + value; + } + } + } else { + finNo = busTypeKey + "001"; + } + return rb.success().setData(finNo); + } +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java new file mode 100644 index 0000000000..44ec58ea2b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +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; + +import java.util.Date; + +/** + * @author Administrator + * @description + * @date 2023/8/16 14:34 + */ +@Data +@ApiModel(value = "风控参数", description = "风控参数") +@TableName("loan_parameter") +public class LoanParameter extends BaseEntity { + @ApiModelProperty("参数编码") + private String parameterNo; + @ApiModelProperty("参数名称") + private String parameterName; + @ApiModelProperty("参数值") + private String parameterValue; + @ApiModelProperty("使用组织sid") + private String useOrgSid; + @ApiModelProperty("使用组织名称") + private String useOrgName; + @ApiModelProperty("使用组织全路径") + private String orgSidPath; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java new file mode 100644 index 0000000000..5598fdf27b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/21 9:13 + */ +@Data +public class LoanParameterDetailsVo implements Vo { + private String sid; + private String remarks; + private String userSid; + @ApiModelProperty("参数编码") + private String parameterNo; + @ApiModelProperty("参数名称") + private String parameterName; + @ApiModelProperty("参数值") + private String parameterValue; + @ApiModelProperty("使用组织全路径") + private String orgPath; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java new file mode 100644 index 0000000000..5506a8705e --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java @@ -0,0 +1,27 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/8/21 9:12 + */ +@Data +public class LoanParameterDto implements Dto { + + private String sid; + private String remarks; + private String userSid; + @ApiModelProperty("参数编码") + private String parameterNo; + @ApiModelProperty("参数名称") + private String parameterName; + @ApiModelProperty("参数值") + private String parameterValue; + @ApiModelProperty("使用组织全路径") + private String orgPath; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java new file mode 100644 index 0000000000..833d4df97e --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java @@ -0,0 +1,53 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +import com.yxt.anrui.riskcenter.api.loanfinpolicyrecordapply.LoanFinPolicyApplyQuery; +import com.yxt.anrui.riskcenter.api.loanfinpolicyrecordapply.LoanFinPolicyApplyVo; +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-LoanParameter", + name = "anrui-riskcenter", + path = "v1/loanparameter", + fallback = LoanParameterFeignFallback.class) +public interface LoanParameterFeign { + + /** + * 根据条件分页查询数据的列表(已测试) + * + * @param pq + */ + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq); + + + @ApiOperation("新增或修改") + @PostMapping("/saveOrUpdate") + @ResponseBody + public ResultBean saveOrUpdateParameter(@RequestBody LoanParameterDto dto); + + @ApiOperation("批量删除") + @DeleteMapping("/deleteBySids") + @ResponseBody + public ResultBean deleteBySids(@RequestBody String[] sids); + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + @ResponseBody + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid); + + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java new file mode 100644 index 0000000000..d34f88f1fe --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java @@ -0,0 +1,35 @@ +package 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 org.springframework.stereotype.Component; + +/** + * @author Administrator + * @description + * @date 2023/8/16 14:36 + */ +@Component +public class LoanParameterFeignFallback implements LoanParameterFeign { + @Override + public ResultBean> listPage(PagerQuery pq) { + return null; + } + + @Override + public ResultBean saveOrUpdateParameter(LoanParameterDto dto) { + return null; + } + + + @Override + public ResultBean deleteBySids(String[] sids) { + return null; + } + + @Override + public ResultBean fetchDetailsBySid(String sid) { + return null; + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java new file mode 100644 index 0000000000..c52a9d43ae --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java @@ -0,0 +1,29 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +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 LoanParameterQuery 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/loanparameter/LoanParameterVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java new file mode 100644 index 0000000000..f2f5dce78c --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.riskcenter.api.loanparameter; + +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 LoanParameterVo 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-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java new file mode 100644 index 0000000000..a8ce00219d --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.riskcenter.biz.loanparameter; + +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.loanparameter.LoanParameter; +import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Mapper +public interface LoanParameterMapper extends BaseMapper { + + IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + int updateBySidDelete(String sid); +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml new file mode 100644 index 0000000000..48b1e7753b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml @@ -0,0 +1,21 @@ + + + + + update loan_parameter + set isDelete = 1 + where sid = #{sid} + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java new file mode 100644 index 0000000000..f42e65ffa1 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java @@ -0,0 +1,51 @@ +package com.yxt.anrui.riskcenter.biz.loanparameter; + + +import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppBusSalesOrderVo; +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; + +import java.util.List; + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Api(tags = "风控参数") +@RestController +@RequestMapping("v1/loanparameter") +public class LoanParameterRest implements LoanParameterFeign { + + @Autowired + private LoanParameterService parameterService; + + @Override + public ResultBean> listPage(PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = parameterService.listPage(pq); + return rb.success().setData(pv); + } + + @Override + public ResultBean saveOrUpdateParameter(LoanParameterDto dto) { + return parameterService.saveOrUpdateParameter(dto); + } + + @Override + public ResultBean deleteBySids(String[] sids) { + return parameterService.deleteBySids(sids); + } + + @Override + public ResultBean fetchDetailsBySid(String sid) { + return parameterService.fetchDetailsBySid(sid); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java new file mode 100644 index 0000000000..ab1569d4e1 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java @@ -0,0 +1,148 @@ +package com.yxt.anrui.riskcenter.biz.loanparameter; + +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.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.loanfinpolicy.LoanFinPolicy; +import com.yxt.anrui.riskcenter.api.loanparameter.*; +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; + + +/** + * @description: + * @author: fan + * @date: 2023/8/21 + **/ +@Service +public class LoanParameterService extends MybatisBaseService { + + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + public PagerVo listPage(PagerQuery pq) { + IPage page = PagerUtil.queryToPage(pq); + LoanParameterQuery 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("orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("createBySid", pagerQuery.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + //======================= + //参数编码 + if (StringUtils.isNotBlank(pagerQuery.getParameterNo())) { + qw.like("parameterNo", pagerQuery.getParameterNo()); + } + //参数名称 + if (StringUtils.isNotBlank(pagerQuery.getParameterName())) { + qw.like("parameterName", pagerQuery.getParameterName()); + } + qw.eq("isDelete", 0); + qw.orderByDesc("createTime"); + IPage pagging = baseMapper.listPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean saveOrUpdateParameter(LoanParameterDto dto) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isNotBlank(dto.getSid())) { + LoanParameter loanParameter = fetchBySid(dto.getSid()); + BeanUtil.copyProperties(dto, loanParameter, "id", "sid"); + baseMapper.updateById(loanParameter); + } else { + LoanParameter loanParameter = new LoanParameter(); + BeanUtil.copyProperties(dto, loanParameter, "id", "sid"); + loanParameter.setOrgSidPath(dto.getOrgPath()); + loanParameter.setCreateBySid(dto.getUserSid()); + ResultBean orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()); + if (orgSidByPath.getSuccess()) { + String userOrgSid = orgSidByPath.getData(); + loanParameter.setUseOrgSid(userOrgSid); + ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid); + if (organizationVo.getSuccess()) { + SysOrganizationVo organizationVoData = organizationVo.getData(); + if (null != organizationVoData) { + loanParameter.setUseOrgName(organizationVoData.getName()); + } + } + } + baseMapper.insert(loanParameter); + } + return rb.success(); + } + + public ResultBean deleteBySids(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + for (String sid : sids) { + int count = baseMapper.updateBySidDelete(sid); + if (count == 0) { + return rb.setMsg("删除失败"); + } + } + return ResultBean.fireSuccess().setMsg("删除成功"); + } + + public ResultBean fetchDetailsBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanParameterDetailsVo vo = new LoanParameterDetailsVo(); + LoanParameter loanParameter = fetchBySid(sid); + BeanUtil.copyProperties(loanParameter, vo); + vo.setUserSid(loanParameter.getCreateBySid()); + vo.setOrgPath(loanParameter.getOrgSidPath()); + return rb.success().setData(vo); + } +}