From a60a54a7c2bbd91436a02b3647723c21cda616e5 Mon Sep 17 00:00:00 2001 From: God <10745413@qq.com> Date: Tue, 20 Feb 2024 16:34:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E6=A1=88=E4=BB=B6?= =?UTF-8?q?=E4=B8=8A=E8=AF=89=E7=94=B3=E8=AF=B7=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanCaseAppealApplyDetailsVo.java | 6 + .../LoanCaseAppealVehDetailsVo.java | 2 + .../AppCaseAppealApplyDetailsVo.java | 120 +++++++++++ .../caseappeal/AppCaseAppealVehDetailsVo.java | 64 ++++++ .../api/risk/caseappeal/CaseAppealFeign.java | 61 ++++++ .../caseappeal/CaseAppealFeignFallback.java | 12 ++ .../flowable/AppCaseAppealDelegateQuery.java | 25 +++ .../caseappeal/flowable/CaseAppealQuery.java | 17 ++ .../flowable/CaseAppealTaskQuery.java | 42 ++++ .../flowable/CompleteCaseAppealDto.java | 34 ++++ .../biz/risk/caseappeal/CaseAppealRest.java | 86 ++++++++ .../risk/caseappeal/CaseAppealService.java | 188 ++++++++++++++++++ 12 files changed, 657 insertions(+) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealApplyDetailsVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealVehDetailsVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeign.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeignFallback.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/AppCaseAppealDelegateQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealTaskQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CompleteCaseAppealDto.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealRest.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealService.java diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealapply/LoanCaseAppealApplyDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealapply/LoanCaseAppealApplyDetailsVo.java index fcb7041c67..405abaaa2a 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealapply/LoanCaseAppealApplyDetailsVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealapply/LoanCaseAppealApplyDetailsVo.java @@ -55,6 +55,12 @@ public class LoanCaseAppealApplyDetailsVo implements Vo { private String sid; // sid + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("申请日期") + private String createTime; + @ApiModelProperty("创建人sid") + private String createBySid; @ApiModelProperty("创建人") private String createByName; // 创建人 @ApiModelProperty("申请编号") diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealveh/LoanCaseAppealVehDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealveh/LoanCaseAppealVehDetailsVo.java index de44e5a6db..8a993205e4 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealveh/LoanCaseAppealVehDetailsVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancaseappealveh/LoanCaseAppealVehDetailsVo.java @@ -59,6 +59,8 @@ public class LoanCaseAppealVehDetailsVo implements Vo { private String affiliatedCompany; // 挂靠公司 @ApiModelProperty("车辆状态") private String carState; // 车辆状态 + @ApiModelProperty("备注") + private String remarks; @ApiModelProperty("案件上诉申请sid") private String mainSid; // 案件上诉申请sid diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealApplyDetailsVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealApplyDetailsVo.java new file mode 100644 index 0000000000..8b72eb1cd9 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealApplyDetailsVo.java @@ -0,0 +1,120 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.api.risk.caseappeal; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * Project: anrui-riskcenter(案件上诉申请)
+ * File: LoanCaseAppealApplyVo.java
+ * Class: com.yxt.anrui.riskcenter.api.loancaseappealapply.LoanCaseAppealApplyVo
+ * Description: 案件上诉申请 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-02-06 10:26:59
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "案件上诉申请 视图数据详情", description = "案件上诉申请 视图数据详情") +public class AppCaseAppealApplyDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("申请部门-申请人") + private String publishInfo; + @ApiModelProperty("申请日期") + private String time; + @ApiModelProperty("案件创建日期") + private String caseCreateDate; + @ApiModelProperty("公司负责人") + private String compHead; + @ApiModelProperty("法务部门负责人") + private String legalDeptHead; + @ApiModelProperty("案件编号") + private String caseNo; + @ApiModelProperty("案件类型") + private String caseType; + @ApiModelProperty("贷款合同编号") + private String loanContract; + @ApiModelProperty("贷款人") + private String lenderName; + @ApiModelProperty("贷款人证件号码") + private String lenderIdNo; + @ApiModelProperty("贷款人户籍/注册地址") + private String lenderAddress; + @ApiModelProperty("客户") + private String customName; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContract; + @ApiModelProperty("欠款合计") + private String arrearsTotal; + @ApiModelProperty("是否全额诉讼") + private String isFullLitigation; + @ApiModelProperty("起诉金额合计") + private String sueMoneyTotal; + @ApiModelProperty("部分诉讼说明") + private String partProceRemarks; + @ApiModelProperty("判决日期") + private String judgDate; + @ApiModelProperty("判决结果") + private String judgResult; + @ApiModelProperty("判决金额") + private String judgMoney; + @ApiModelProperty("领取判决书日期") + private String receivejudgDate; + @ApiModelProperty("判决备注") + private String judgRemarks; + @ApiModelProperty("案件阶段") + private String caseStage; + @ApiModelProperty("预上/应诉日期") + private String expectDate; + @ApiModelProperty("上诉到期日期") + private String appealDueDate; + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("流程实例的sid") + private String procInsId; + @ApiModelProperty("任务id") + private String taskId; + + @ApiModelProperty + private List appPjclFiles; + @ApiModelProperty + private List appYsclFiles; + @ApiModelProperty("上诉车辆") + private List appCaseAppealVehList; +} \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealVehDetailsVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealVehDetailsVo.java new file mode 100644 index 0000000000..2930c0dfd2 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/AppCaseAppealVehDetailsVo.java @@ -0,0 +1,64 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.api.risk.caseappeal; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-riskcenter(案件上诉申请)
+ * File: LoanCaseAppealVehVo.java
+ * Class: com.yxt.anrui.riskcenter.api.loancaseappealveh.LoanCaseAppealVehVo
+ * Description: 案件上诉车辆 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-02-06 10:26:59
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "案件上诉车辆 视图数据详情", description = "案件上诉车辆 视图数据详情") +public class AppCaseAppealVehDetailsVo implements Vo { + + private String sid; + + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String carNum; + @ApiModelProperty("挂靠公司") + private String affiliatedCompany; + @ApiModelProperty("车辆状态") + private String carState; + @ApiModelProperty("备注") + private String remarks; + +} \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeign.java new file mode 100644 index 0000000000..f7d12d481e --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeign.java @@ -0,0 +1,61 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal; + +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.AppCaseAppealDelegateQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CompleteCaseAppealDto; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealTaskQuery; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +/** + * @Author + * @Date + * @Description + */ +@Api(tags = "案件上诉管理") +@FeignClient( + contextId = "terminal-CaseAppeal", + name = "anrui-terminal", + path = "riskcenter/v1/caseAppeal", + fallback = CaseAppealFeignFallback.class) +public interface CaseAppealFeign { + + @ApiOperation("办理") + @PutMapping("/agreeCreditInfo") + @ResponseBody + ResultBean agreeCreditInfo(@RequestBody CompleteCaseAppealDto dto); + + @ApiOperation("驳回") + @PutMapping("/rejectCreditInfo") + @ResponseBody + ResultBean rejectCreditInfo(@RequestBody CaseAppealTaskQuery query); + + @ApiOperation("撤回") + @PutMapping("/recallCreditInfo") + @ResponseBody + ResultBean recallCreditInfo(@RequestBody CaseAppealTaskQuery query); + + @ApiOperation("终止") + @PutMapping("/stopCreditInfo") + @ResponseBody + ResultBean stopCreditInfo(@RequestBody CaseAppealTaskQuery query); + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap CaseAppealQuery query); + + @ApiOperation(value = "加签") + @PutMapping(value = "/delegate") + @ResponseBody + public ResultBean delegate(@RequestBody AppCaseAppealDelegateQuery delegateQuery); + + @ApiOperation("案件上诉详情") + @GetMapping("/details/{sid}") + @ResponseBody + public ResultBean collectionDetail(@PathVariable("sid") String sid); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeignFallback.java new file mode 100644 index 0000000000..69e2a196fe --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/CaseAppealFeignFallback.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal; + +import org.springframework.stereotype.Component; + +/** + * @description: + * @author: dimengzhe + * @date: 2023/8/8 + **/ +@Component +public class CaseAppealFeignFallback { +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/AppCaseAppealDelegateQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/AppCaseAppealDelegateQuery.java new file mode 100644 index 0000000000..4026582105 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/AppCaseAppealDelegateQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/28 10:16 + */ +@Data +public class AppCaseAppealDelegateQuery { + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealQuery.java new file mode 100644 index 0000000000..2b477549fe --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealQuery.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class CaseAppealQuery implements Query { + private static final long serialVersionUID = -3563282658560745370L; + + @ApiModelProperty(value = "节点key") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + private Integer next; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealTaskQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealTaskQuery.java new file mode 100644 index 0000000000..df876b2e68 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CaseAppealTaskQuery.java @@ -0,0 +1,42 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class CaseAppealTaskQuery implements Query { + private static final long serialVersionUID = -6952737531036706114L; + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + @JsonProperty("procInsId") + private String instanceId; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CompleteCaseAppealDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CompleteCaseAppealDto.java new file mode 100644 index 0000000000..35789af545 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/caseappeal/flowable/CompleteCaseAppealDto.java @@ -0,0 +1,34 @@ +package com.yxt.anrui.terminal.api.risk.caseappeal.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class CompleteCaseAppealDto implements Dto { + private static final long serialVersionUID = 7978653524636034916L; + + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:procInsId") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + + private String orgPath; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealRest.java new file mode 100644 index 0000000000..adaa36e4e3 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealRest.java @@ -0,0 +1,86 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.risk.caseappeal; + +import com.yxt.anrui.terminal.api.risk.caseappeal.AppCaseAppealApplyDetailsVo; +import com.yxt.anrui.terminal.api.risk.caseappeal.CaseAppealFeign; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.AppCaseAppealDelegateQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealTaskQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CompleteCaseAppealDto; +import com.yxt.anrui.terminal.api.risk.vehclearance.AppVehClearanceApplyDetailsVo; +import com.yxt.anrui.terminal.api.risk.vehclearance.VehClearanceFeign; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.AppVehClearanceDelegateQuery; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.CompleteVehClearanceDto; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.VehClearanceQuery; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.VehClearanceTaskQuery; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController("案件上诉管理") +@RequestMapping("riskcenter/v1/caseAppeal") +public class CaseAppealRest implements CaseAppealFeign { + + @Autowired + private CaseAppealService beCollectionService; + + @Override + public ResultBean agreeCreditInfo(CompleteCaseAppealDto dto) { + return beCollectionService.agreeCreditInfo(dto); + } + + @Override + public ResultBean rejectCreditInfo(CaseAppealTaskQuery query) { + return beCollectionService.rejectCreditInfo(query); + } + + @Override + public ResultBean recallCreditInfo(CaseAppealTaskQuery query) { + return beCollectionService.recallCreditInfo(query); + } + + @Override + public ResultBean stopCreditInfo(CaseAppealTaskQuery query) { + return beCollectionService.stopCreditInfo(query); + } + + @Override + public ResultBean getFlowOperateTitle(CaseAppealQuery query) { + return beCollectionService.getFlowOperateTitle(query); + } + + @Override + public ResultBean delegate(AppCaseAppealDelegateQuery delegateQuery) { + return beCollectionService.delegate(delegateQuery); + } + + @Override + public ResultBean collectionDetail(String sid) { + return beCollectionService.collectionDetail(sid); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealService.java new file mode 100644 index 0000000000..825d5ef2d7 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/caseappeal/CaseAppealService.java @@ -0,0 +1,188 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.risk.caseappeal; + + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.riskcenter.api.loancaseappealapply.LoanCaseAppealApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loancaseappealapply.LoanCaseAppealApplyFeign; +import com.yxt.anrui.riskcenter.api.loancaseappealapply.LoanCaseAppealFile; +import com.yxt.anrui.riskcenter.api.loancaseappealapply.flowable.*; +import com.yxt.anrui.riskcenter.api.loancaseappealveh.LoanCaseAppealVehDetailsVo; +import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; +import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign; +import com.yxt.anrui.riskcenter.api.loanvehclearanceapply.LoanVehClearanceApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loanvehclearanceapply.LoanVehClearanceApplyFeign; +import com.yxt.anrui.riskcenter.api.loanvehclearanceapply.LoanVehClearanceFileVo; +import com.yxt.anrui.riskcenter.api.loanvehclearanceapply.flowable.*; +import com.yxt.anrui.riskcenter.api.loanvehclearanceveh.LoanVehClearanceVehDetailsVo; +import com.yxt.anrui.riskcenter.api.loanvehclearanceveh.LoanVehClearanceVehFile; +import com.yxt.anrui.terminal.api.base.common.CarModelVo; +import com.yxt.anrui.terminal.api.risk.caseappeal.AppCaseAppealApplyDetailsVo; +import com.yxt.anrui.terminal.api.risk.caseappeal.AppCaseAppealVehDetailsVo; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.AppCaseAppealDelegateQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CaseAppealTaskQuery; +import com.yxt.anrui.terminal.api.risk.caseappeal.flowable.CompleteCaseAppealDto; +import com.yxt.anrui.terminal.api.risk.loanhomevisitinvestigate.AppLoanHomeVisitVo; +import com.yxt.anrui.terminal.api.risk.vehclearance.AppVehClearanceApplyDetailsVo; +import com.yxt.anrui.terminal.api.risk.vehclearance.AppVehClearanceVehDetailsVo; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.AppVehClearanceDelegateQuery; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.CompleteVehClearanceDto; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.VehClearanceQuery; +import com.yxt.anrui.terminal.api.risk.vehclearance.flowable.VehClearanceTaskQuery; +import com.yxt.anrui.terminal.biz.base.common.CommonService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +@Service +public class CaseAppealService { + + @Autowired + private LoanCaseAppealApplyFeign loanCaseAppealApplyFeign; + @Autowired + private LoanSolutionsFeign loanSolutionsFeign; + @Autowired + private CommonService commonService; + + public ResultBean agreeCreditInfo(CompleteCaseAppealDto dto) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyCompleteDto loanCaseAppealApplyCompleteDto = new LoanCaseAppealApplyCompleteDto(); + BeanUtil.copyProperties(dto, loanCaseAppealApplyCompleteDto); + loanCaseAppealApplyFeign.complete(loanCaseAppealApplyCompleteDto); + return rb.success(); + } + + public ResultBean rejectCreditInfo(CaseAppealTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyTaskQuery taskQuery = new LoanCaseAppealApplyTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanCaseAppealApplyFeign.reject(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean recallCreditInfo(CaseAppealTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyTaskQuery taskQuery = new LoanCaseAppealApplyTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanCaseAppealApplyFeign.revokeProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean stopCreditInfo(CaseAppealTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyTaskQuery taskQuery = new LoanCaseAppealApplyTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanCaseAppealApplyFeign.breakProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitle(CaseAppealQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + LoanCaseAppealApplyNodeQuery getNodeQuery = new LoanCaseAppealApplyNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> previousNodesForReject = loanCaseAppealApplyFeign.getPreviousNodesForReject(getNodeQuery); + if (previousNodesForReject.getSuccess()) { + previousNodesForReject.getData().removeAll(Collections.singleton(null)); + data = previousNodesForReject.getData().get(0).getName(); + } else { + return rb.setMsg(previousNodesForReject.getMsg()); + } + } else if (next == 1) { + ResultBean> nextNodesForSubmit = loanCaseAppealApplyFeign.getNextNodesForSubmit(getNodeQuery); + if (nextNodesForSubmit.getSuccess()) { + nextNodesForSubmit.getData().removeAll(Collections.singleton(null)); + data = nextNodesForSubmit.getData().get(0).getName(); + } else { + return rb.setMsg(nextNodesForSubmit.getMsg()); + } + } else { + return rb.setMsg("参数错误:next"); + } + return rb.success().setData(data); + } + + public ResultBean delegate(AppCaseAppealDelegateQuery delegateQuery) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyDelegateQuery delegateQuery1 = new + LoanCaseAppealApplyDelegateQuery(); + BeanUtil.copyProperties(delegateQuery, delegateQuery1); + loanCaseAppealApplyFeign.delegate(delegateQuery1); + return rb.success(); + } + + public ResultBean collectionDetail(String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanCaseAppealApplyDetailsVo loanCaseAppealApplyDetailsVo = loanCaseAppealApplyFeign.fetchDetailsBySid(sid).getData(); + AppCaseAppealApplyDetailsVo appCaseAppealApplyDetailsVo = new AppCaseAppealApplyDetailsVo(); + BeanUtil.copyProperties(loanCaseAppealApplyDetailsVo,appCaseAppealApplyDetailsVo); + appCaseAppealApplyDetailsVo.setPublishInfo(loanCaseAppealApplyDetailsVo.getDeptName() + "-" + loanCaseAppealApplyDetailsVo.getCreateByName()); + appCaseAppealApplyDetailsVo.setTime(loanCaseAppealApplyDetailsVo.getCreateTime()); + appCaseAppealApplyDetailsVo.setProcInsId(loanCaseAppealApplyDetailsVo.getProcInstSid()); + List pjclFiles = loanCaseAppealApplyDetailsVo.getPjclFiles(); + List appPjcl = new ArrayList<>(); + if (pjclFiles != null && pjclFiles.size() > 0){ + for (LoanCaseAppealFile file : pjclFiles) { + appPjcl.add(file.getUrl()); + } + } + List ysclFiles = loanCaseAppealApplyDetailsVo.getYsclFiles(); + List appYscl = new ArrayList<>(); + if (ysclFiles != null && ysclFiles.size() > 0){ + for (LoanCaseAppealFile file : ysclFiles) { + appYscl.add(file.getUrl()); + } + } + appCaseAppealApplyDetailsVo.setAppYsclFiles(appYscl); + List loanCaseAppealVehList = loanCaseAppealApplyDetailsVo.getLoanCaseAppealVehList(); + List appCaseAppealVehDetailsVos = new ArrayList<>(); + for (LoanCaseAppealVehDetailsVo loanCaseAppealVehDetailsVo : loanCaseAppealVehList) { + AppCaseAppealVehDetailsVo appCaseAppealVehDetailsVo = new AppCaseAppealVehDetailsVo(); + BeanUtil.copyProperties(loanCaseAppealVehDetailsVo,appCaseAppealVehDetailsVo); + appCaseAppealVehDetailsVos.add(appCaseAppealVehDetailsVo); + } + appCaseAppealApplyDetailsVo.setAppCaseAppealVehList(appCaseAppealVehDetailsVos); + return rb.success().setData(appCaseAppealApplyDetailsVo); + } +} \ No newline at end of file