From 330a0eb8f209ca304dff4e2d522032d40df7dc04 Mon Sep 17 00:00:00 2001 From: ligaode Date: Fri, 23 May 2025 16:12:28 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinPaymentrecordMapper.java | 2 + .../FinPaymentrecordMapper.xml | 9 + .../FinPaymentrecordService.java | 4 +- .../anrui/flowable/api/utils/ProcDefEnum.java | 1 + .../LoanLawsuitSubApply.java | 95 +++ .../LoanLawsuitSubApplyDetailsVo.java | 105 +++ .../LoanLawsuitSubApplyDto.java | 102 +++ .../LoanLawsuitSubApplyFeign.java | 107 +++ .../LoanLawsuitSubApplyQuery.java | 69 ++ .../LoanLawsuitSubApplyVo.java | 77 ++ .../flow/LawsuitSubCompleteDto.java | 41 ++ .../flow/LawsuitSubDelegateQuery.java | 26 + .../flow/LawsuitSubGetNodeQuery.java | 26 + .../flow/LawsuitSubGetNodeVo.java | 25 + .../flow/LawsuitSubTaskQuery.java | 56 ++ .../flow/SubmitLawsuitSubDto.java | 20 + .../loanlawsuitsubveh/LoanLawsuitSubVeh.java | 61 ++ .../LoanLawsuitSubVehDetailsVo.java | 62 ++ .../LoanLawsuitSubVehDto.java | 61 ++ .../LoanLawsuitSubVehFeign.java | 41 ++ .../LoanLawsuitSubApplyMapper.java | 49 ++ .../LoanLawsuitSubApplyMapper.xml | 45 ++ .../LoanLawsuitSubApplyRest.java | 132 ++++ .../LoanLawsuitSubApplyService.java | 679 ++++++++++++++++++ .../LoanLawsuitSubVehMapper.java | 45 ++ .../LoanLawsuitSubVehMapper.xml | 7 + .../LoanLawsuitSubVehRest.java | 38 + .../LoanLawsuitSubVehService.java | 54 ++ .../LoanRepurchaseApplyMapper.java | 3 + .../LoanRepurchaseApplyMapper.xml | 8 + .../LoanRepurchaseApplyService.java | 4 + 31 files changed, 2052 insertions(+), 2 deletions(-) create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApply.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyFeign.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubCompleteDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubDelegateQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubTaskQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/SubmitLawsuitSubDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVeh.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDetailsVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehFeign.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.xml create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyRest.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.xml create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehRest.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.java index 96586d5c98..07b9c28c79 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.java @@ -56,4 +56,6 @@ public interface FinPaymentrecordMapper extends BaseMapper { String selectBatchNum(@Param("s") String s); BigDecimal selPayPriceTotal(@Param("payEveSidList") List payEveSidList); + + BigDecimal selectCostByBusSid(String busSid); } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml index f1060525b9..e6b4ed6b94 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml @@ -85,4 +85,13 @@ #{item} + + \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java index 80c7952855..67f148f90f 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java @@ -1707,8 +1707,8 @@ public class FinPaymentrecordService extends MybatisBaseService_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.math.BigDecimal; +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "转诉讼科目申请", description = "转诉讼科目申请") +@TableName("loan_lawsuit_sub_apply") +public class LoanLawsuitSubApply extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请部门") + private String createDept; // 申请部门 + @ApiModelProperty("申请部门sid") + private String createDeptSid; // 申请部门sid + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("单据编号") + private String billNo; // 单据编号 + @ApiModelProperty("客户名称") + private String customerName; // 客户名称 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("贷款人sid") + private String loanSid; // 贷款人sid + @ApiModelProperty("贷款人") + private String loanName; // 贷款人 + @ApiModelProperty("贷款合同sid") + private String loanContractSid; // 贷款合同sid + @ApiModelProperty("贷款合同编号") + private String loanContractNo; // 贷款合同编号 + @ApiModelProperty("资方sid") + private String bankSid; // 资方sid + @ApiModelProperty("资方") + private String bankName; // 资方 + @ApiModelProperty("资方合同编号") + private String bankContractNo; // 资方合同编号 + @ApiModelProperty("转诉讼科目金额合计") + private BigDecimal amount; // 转诉讼科目金额合计 + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 + @ApiModelProperty("分公司sid") + private String useOrgSid; // 分公司sid + @ApiModelProperty("分公司") + private String useOrgName; // 分公司 + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @ApiModelProperty("办结日期") + private Date closeDate; + @ApiModelProperty("实例id") + private String procInstId; // 实例id + @ApiModelProperty("流程定义id") + private String procDefId; // 流程定义id + @ApiModelProperty("任务id") + private String taskId; // 任务id + @ApiModelProperty("环节id") + private String nodeSid; // 环节id + @ApiModelProperty("诉讼申请sid") + private String lawSid; // 诉讼申请sid + @ApiModelProperty("案件信息sid") + private String ajSid; // 案件信息sid + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDetailsVo.java new file mode 100644 index 0000000000..f9fbde124d --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDetailsVo.java @@ -0,0 +1,105 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDetailsVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDto; +import com.yxt.common.core.vo.Vo; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "转诉讼科目申请 视图数据详情", description = "转诉讼科目申请 视图数据详情") +public class LoanLawsuitSubApplyDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("创建日期") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTime; + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("申请部门") + private String createDept; // 申请部门 + @ApiModelProperty("申请部门sid") + private String createDeptSid; // 申请部门sid + @ApiModelProperty("申请人") + private String createBySid; + private String createByName; + @ApiModelProperty("单据编号") + private String billNo; // 单据编号 + @ApiModelProperty("客户名称") + private String customerName; // 客户名称 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("贷款人sid") + private String loanSid; // 贷款人sid + @ApiModelProperty("贷款人") + private String loanName; // 贷款人 + @ApiModelProperty("贷款合同sid") + private String loanContractSid; // 贷款合同sid + @ApiModelProperty("贷款合同编号") + private String loanContractNo; // 贷款合同编号 + @ApiModelProperty("资方sid") + private String bankSid; // 资方sid + @ApiModelProperty("资方") + private String bankName; // 资方 + @ApiModelProperty("资方合同编号") + private String bankContractNo; // 资方合同编号 + @ApiModelProperty("转诉讼科目金额合计") + private BigDecimal amount; // 转诉讼科目金额合计 + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 + @ApiModelProperty("分公司sid") + private String useOrgSid; // 分公司sid + @ApiModelProperty("分公司") + private String useOrgName; // 分公司 + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @ApiModelProperty("办结日期") + private Date closeDate; + @ApiModelProperty("实例id") + private String procInstId; // 实例id + @ApiModelProperty("流程定义id") + private String procDefId; // 流程定义id + @ApiModelProperty("任务id") + private String taskId; // 任务id + @ApiModelProperty("环节id") + private String nodeSid; // 环节id + @ApiModelProperty("诉讼申请sid") + private String lawSid; // 诉讼申请sid + @ApiModelProperty("案件信息sid") + private String ajSid; // 案件信息sid + @ApiModelProperty("车辆列表") + private List loanLawsuitSubVehList; +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDto.java new file mode 100644 index 0000000000..f16d9a4e61 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyDto.java @@ -0,0 +1,102 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDto; +import com.yxt.common.core.dto.Dto; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "转诉讼科目申请 数据传输对象", description = "转诉讼科目申请 数据传输对象") +public class LoanLawsuitSubApplyDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("创建日期") + private String createTime; + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("申请部门") + private String createDept; // 申请部门 + @ApiModelProperty("申请部门sid") + private String createDeptSid; // 申请部门sid + @ApiModelProperty("申请人") + private String createBySid; + private String createByName; + @ApiModelProperty("单据编号") + private String billNo; // 单据编号 + @ApiModelProperty("客户名称") + private String customerName; // 客户名称 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("贷款人sid") + private String loanSid; // 贷款人sid + @ApiModelProperty("贷款人") + private String loanName; // 贷款人 + @ApiModelProperty("贷款合同sid") + private String loanContractSid; // 贷款合同sid + @ApiModelProperty("贷款合同编号") + private String loanContractNo; // 贷款合同编号 + @ApiModelProperty("资方sid") + private String bankSid; // 资方sid + @ApiModelProperty("资方") + private String bankName; // 资方 + @ApiModelProperty("资方合同编号") + private String bankContractNo; // 资方合同编号 + @ApiModelProperty("转诉讼科目金额合计") + private BigDecimal amount; // 转诉讼科目金额合计 + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 + @ApiModelProperty("分公司sid") + private String useOrgSid; // 分公司sid + @ApiModelProperty("分公司") + private String useOrgName; // 分公司 + @ApiModelProperty("办结日期") + private String closeDate; // 办结日期 + @ApiModelProperty("实例id") + private String procInstId; // 实例id + @ApiModelProperty("流程定义id") + private String procDefId; // 流程定义id + @ApiModelProperty("任务id") + private String taskId; // 任务id + @ApiModelProperty("环节id") + private String nodeSid; // 环节id + @ApiModelProperty("诉讼申请sid") + private String lawSid; // 诉讼申请sid + @ApiModelProperty("案件信息sid") + private String ajSid; // 案件信息sid + @ApiModelProperty("车辆列表") + private List loanLawsuitSubVehList; +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyFeign.java new file mode 100644 index 0000000000..00464b3fdd --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyFeign.java @@ -0,0 +1,107 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +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.ApiParam; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +@Api(tags = "转诉讼科目申请") +@FeignClient( + contextId = "anrui-riskcenter-LoanLawsuitSubApply", + name = "anrui-riskcenter", + path = "v1/loanlawsuitsubapply") +public interface LoanLawsuitSubApplyFeign { + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + @ResponseBody + public ResultBean> listPage(@RequestBody PagerQuery pq); + + @ApiOperation("新增或修改") + @PostMapping("/save") + @ResponseBody + public ResultBean save(@RequestBody LoanLawsuitSubApplyDto dto); + + @ApiOperation("根据sid删除记录") + @DeleteMapping("/delBySids") + @ResponseBody + public ResultBean delBySids(@RequestBody String[] sids); + + @ApiOperation("初始化") + @GetMapping("/init/{sid}") + @ResponseBody + public ResultBean init(@PathVariable("sid") String sid); + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + @ResponseBody + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid); + + //---------------------------flow------------------------------ + + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submitRecordApplication(@RequestBody @Valid SubmitLawsuitSubDto dto); + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody LawsuitSubCompleteDto dto); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody LawsuitSubTaskQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody LawsuitSubTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@RequestBody LawsuitSubTaskQuery query); + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap LawsuitSubGetNodeQuery query); + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap LawsuitSubGetNodeQuery query); + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + public ResultBean delegate(@RequestBody LawsuitSubDelegateQuery query); +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyQuery.java new file mode 100644 index 0000000000..247e6bec18 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyQuery.java @@ -0,0 +1,69 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.common.core.query.Query; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "转诉讼科目申请 查询条件", description = "转诉讼科目申请 查询条件") +public class LoanLawsuitSubApplyQuery implements Query { + + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请人") + private String createByName; + @ApiModelProperty("申请日期") + private String createTimeStart; + private String createTimeEnd; + @ApiModelProperty("办结日期") + private String closeDateStart; + private String closeDateEnd; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + + @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/loanlawsuitsubapply/LoanLawsuitSubApplyVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyVo.java new file mode 100644 index 0000000000..c977a4cd54 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/LoanLawsuitSubApplyVo.java @@ -0,0 +1,77 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.common.core.vo.Vo; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.math.BigDecimal; +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "转诉讼科目申请 视图数据对象", description = "转诉讼科目申请 视图数据对象") +public class LoanLawsuitSubApplyVo implements Vo { + + private String sid; + + @ApiModelProperty("流程状态") + private String nodeState; + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("申请部门") + private String createDept; + @ApiModelProperty("申请人") + private String createByName; + @ApiModelProperty("申请日期") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTime; + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @ApiModelProperty("办结日期") + private Date closeDate; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("贷款人") + private String loanName; + @ApiModelProperty("贷款合同编号") + private String loanContractNo; + @ApiModelProperty("资方") + private String bankName; + @ApiModelProperty("资方合同编号") + private String bankContractNo; + @ApiModelProperty("转诉讼科目金额合计") + private BigDecimal amount; + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("实例id") + private String procInstId; + @ApiModelProperty("流程定义id") + private String procDefId; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubCompleteDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubCompleteDto.java new file mode 100644 index 0000000000..049f1ca7dd --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubCompleteDto.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 9:01 + * @Description + */ +@Data +public class LawsuitSubCompleteDto implements Dto { + private static final long serialVersionUID = 3240453987322803352L; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "用户全路径sid") + private String orgSidPath; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:instanceId") + private String instanceId; + @ApiModelProperty(value = "意见") + @NotBlank(message = "参数错误:comment") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "分支字段及业务字段") + private Map formVariables; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubDelegateQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubDelegateQuery.java new file mode 100644 index 0000000000..fc5798184d --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubDelegateQuery.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/28 9:28 + */ +@Data +public class LawsuitSubDelegateQuery { + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") +// @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; + + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeQuery.java new file mode 100644 index 0000000000..bd84d76117 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeQuery.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 10:42 + * @Description + */ +@Data +public class LawsuitSubGetNodeQuery implements Query { + private static final long serialVersionUID = -5674867230708197611L; + + @ApiModelProperty(value = "环节定义id") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + + @ApiModelProperty(value = "分支字段及业务字段") + private Map formVariables; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeVo.java new file mode 100644 index 0000000000..7a5c3de156 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubGetNodeVo.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/6/28 11:09 + * @Description + */ +@Data +public class LawsuitSubGetNodeVo implements Vo { + private static final long serialVersionUID = 8802774014747063504L; + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubTaskQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubTaskQuery.java new file mode 100644 index 0000000000..18190f2154 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/LawsuitSubTaskQuery.java @@ -0,0 +1,56 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/6/28 17:29 + * @Description 终止、撤回、驳回查询参数 + */ +@Data +public class LawsuitSubTaskQuery implements Query { + private static final long serialVersionUID = -4006020771892400451L; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + private String instanceId; + /*@ApiModelProperty("用户Id") + private String userId; + @ApiModelProperty("节点") + private String targetKey; + @ApiModelProperty("流程变量信息") + private Map values = new HashMap<>(); + @ApiModelProperty("审批人") + private String assignee; + @ApiModelProperty("候选人") + private List candidateUsers = new ArrayList<>(); + @ApiModelProperty("审批组") + private List candidateGroups = new ArrayList<>();*/ +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/SubmitLawsuitSubDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/SubmitLawsuitSubDto.java new file mode 100644 index 0000000000..d7080485ac --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubapply/flow/SubmitLawsuitSubDto.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow; + +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/6/27 13:38 + * @Description + */ +@Data +public class SubmitLawsuitSubDto extends LoanLawsuitSubApplyDto { + + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVeh.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVeh.java new file mode 100644 index 0000000000..66af5b0e3f --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVeh.java @@ -0,0 +1,61 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubveh; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +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.math.BigDecimal; + +@Data +@ApiModel(value = "转诉讼车辆列表", description = "转诉讼车辆列表") +@TableName("loan_lawsuit_sub_veh") +public class LoanLawsuitSubVeh extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主表sid") + private String mainSid; // 主表sid + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @ApiModelProperty("风控状态") + private String riskState; // 风控状态 + @ApiModelProperty("是否回购") + private String repo; // 是否回购 + @ApiModelProperty("逾期月还") + private BigDecimal currentBeMoney; // 逾期月还 + @ApiModelProperty("当期未还月还") + private BigDecimal currentNotDuePrice; // 当期未还月还 + @ApiModelProperty("未到期月还") + private BigDecimal notDuePrice; // 未到期月还 + @ApiModelProperty("回购资方费用") + private BigDecimal bankAmount; // 回购资方费用 + @ApiModelProperty("转诉讼科目金额") + private BigDecimal lawAomount; // 转诉讼科目金额 + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDetailsVo.java new file mode 100644 index 0000000000..1b25000b1a --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDetailsVo.java @@ -0,0 +1,62 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubveh; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + + +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +@ApiModel(value = "转诉讼车辆列表 视图数据详情", description = "转诉讼车辆列表 视图数据详情") +public class LoanLawsuitSubVehDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("主表sid") + private String mainSid; // 主表sid + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @ApiModelProperty("风控状态") + private String riskState; // 风控状态 + @ApiModelProperty("是否回购") + private String repo; // 是否回购 + @ApiModelProperty("逾期月还") + private BigDecimal currentBeMoney; // 逾期月还 + @ApiModelProperty("当期未还月还") + private BigDecimal currentNotDuePrice; // 当期未还月还 + @ApiModelProperty("未到期月还") + private BigDecimal notDuePrice; // 未到期月还 + @ApiModelProperty("回购资方费用") + private BigDecimal bankAmount; // 回购资方费用 + @ApiModelProperty("转诉讼科目金额") + private BigDecimal lawAomount; // 转诉讼科目金额 + +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDto.java new file mode 100644 index 0000000000..b06373a49a --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehDto.java @@ -0,0 +1,61 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubveh; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +@ApiModel(value = "转诉讼车辆列表 数据传输对象", description = "转诉讼车辆列表 数据传输对象") +public class LoanLawsuitSubVehDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("主表sid") + private String mainSid; // 主表sid + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @ApiModelProperty("风控状态") + private String riskState; // 风控状态 + @ApiModelProperty("是否回购") + private String repo; // 是否回购 + @ApiModelProperty("逾期月还") + private BigDecimal currentBeMoney; // 逾期月还 + @ApiModelProperty("当期未还月还") + private BigDecimal currentNotDuePrice; // 当期未还月还 + @ApiModelProperty("未到期月还") + private BigDecimal notDuePrice; // 未到期月还 + @ApiModelProperty("回购资方费用") + private BigDecimal bankAmount; // 回购资方费用 + @ApiModelProperty("转诉讼科目金额") + private BigDecimal lawAomount; // 转诉讼科目金额 + +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehFeign.java new file mode 100644 index 0000000000..6bfd649804 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanlawsuitsubveh/LoanLawsuitSubVehFeign.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.riskcenter.api.loanlawsuitsubveh; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import com.yxt.common.core.result.ResultBean; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "转诉讼车辆列表") +@FeignClient( + contextId = "1-LoanLawsuitSubVeh", + name = "1", + path = "v1/loanlawsuitsubveh") +public interface LoanLawsuitSubVehFeign { + +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.java new file mode 100644 index 0000000000..fbe26af890 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.java @@ -0,0 +1,49 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubapply; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApply; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyVo; + +import java.util.Map; + +@Mapper +public interface LoanLawsuitSubApplyMapper extends BaseMapper { + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + String selectNum(String billNo); + + int selectBySid(String join); + + int updateFlowFiled(Map map); +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.xml new file mode 100644 index 0000000000..8ef7c1c96b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyMapper.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + UPDATE loan_lawsuit_sub_apply + SET nodeState=#{nodeState} + , nodeSid=#{taskDefKey} + + , closeDate = NOW() + + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid = #{sid} + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyRest.java new file mode 100644 index 0000000000..4c93d955dd --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyRest.java @@ -0,0 +1,132 @@ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubapply; +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.*; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow.*; +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.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@Api(tags = "转诉讼科目申请") +@RestController +@RequestMapping("v1/loanlawsuitsubapply") +public class LoanLawsuitSubApplyRest implements LoanLawsuitSubApplyFeign { + + @Autowired + private LoanLawsuitSubApplyService loanLawsuitSubApplyService; + + @Override + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = loanLawsuitSubApplyService.listPageVo(pq); + return rb.success().setData(pv); + } + + @Override + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody LoanLawsuitSubApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + loanLawsuitSubApplyService.saveOrUpdateDto(dto); + return rb.success(); + } + + @Override + @ApiOperation("根据sid批量删除") + @PostMapping("/delBySids") + public ResultBean delBySids(@RequestBody String[] sids) { + return loanLawsuitSubApplyService.delAll(sids); + } + + @Override + public ResultBean init(String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanLawsuitSubApplyDetailsVo vo = loanLawsuitSubApplyService.init(sid); + return rb.success().setData(vo); + } + + @Override + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanLawsuitSubApplyDetailsVo vo = loanLawsuitSubApplyService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + @Override + public ResultBean submitRecordApplication(SubmitLawsuitSubDto dto) { + return loanLawsuitSubApplyService.submitRecordApplication(dto); + } + + @Override + public ResultBean complete(LawsuitSubCompleteDto dto) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(dto, bv); + return loanLawsuitSubApplyService.complete(bv); + } + + @Override + public ResultBean revokeProcess(LawsuitSubTaskQuery query) { + return loanLawsuitSubApplyService.revokeProcess(query); + } + + @Override + public ResultBean taskReject(LawsuitSubTaskQuery query) { + return loanLawsuitSubApplyService.taskReject(query); + } + + @Override + public ResultBean breakProcess(LawsuitSubTaskQuery query) { + return loanLawsuitSubApplyService.breakProcess(query); + } + + @Override + public ResultBean> getNextNodesForSubmit(LawsuitSubGetNodeQuery query) { + return loanLawsuitSubApplyService.getNextNodesForSubmit(query); + } + + @Override + public ResultBean> getPreviousNodesForReject(LawsuitSubGetNodeQuery query) { + return loanLawsuitSubApplyService.getPreviousNodesForReject(query); + } + + @Override + public ResultBean delegate(LawsuitSubDelegateQuery query) { + return loanLawsuitSubApplyService.delegate(query); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java new file mode 100644 index 0000000000..d3f067efb8 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java @@ -0,0 +1,679 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubapply; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.google.common.util.concurrent.ThreadFactoryBuilder; +import com.yxt.anrui.base.common.utils.Rule; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; +import com.yxt.anrui.flowable.api.flow.FlowableFeign; +import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; +import com.yxt.anrui.flowable.api.flow2.FlowFeign; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; +import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; +import com.yxt.anrui.riskcenter.api.loancaseprogress.LoanCaseProgress; +import com.yxt.anrui.riskcenter.api.loanlawsuitapply.LoanLawsuitApply; +import com.yxt.anrui.riskcenter.api.loanlawsuitapply.LoanLawsuitVehVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.flow.*; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDetailsVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDto; +import com.yxt.anrui.riskcenter.api.loansettleapply.SettleApplyCommonVo; +import com.yxt.anrui.riskcenter.biz.loancaseprogress.LoanCaseProgressService; +import com.yxt.anrui.riskcenter.biz.loanlawsuitapply.LoanLawsuitApplyService; +import com.yxt.anrui.riskcenter.biz.loanlawsuitsubveh.LoanLawsuitSubVehService; +import com.yxt.anrui.riskcenter.biz.loanlawsuitveh.LoanLawsuitVehService; +import com.yxt.anrui.riskcenter.biz.loanrepurchaseapply.LoanRepurchaseApplyService; +import com.yxt.anrui.riskcenter.biz.loansettleapply.LoanSettleApplyService; +import com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailDetailsVo; +import com.yxt.common.core.result.ResultBean; +import com.yxt.messagecenter.api.message.MessageFeign; +import com.yxt.messagecenter.api.message.MessageFlowVo; +import com.yxt.messagecenter.api.message.MessageFlowableQuery; +import org.apache.commons.lang3.StringUtils; +import 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.vo.PagerVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApply; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyQuery; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubapply.LoanLawsuitSubApplyDto; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.*; +import java.util.concurrent.*; +import java.util.stream.Collectors; + +@Service +public class LoanLawsuitSubApplyService extends MybatisBaseService { + + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + @Autowired + private LoanLawsuitSubVehService loanLawsuitSubVehService; + @Autowired + private LoanCaseProgressService loanCaseProgressService; + @Autowired + private LoanLawsuitApplyService loanLawsuitApplyService; + @Autowired + private LoanLawsuitVehService loanLawsuitVehService; + @Autowired + private LoanSettleApplyService loanSettleApplyService; + @Autowired + private LoanRepurchaseApplyService loanRepurchaseApplyService; + @Autowired + private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign; + @Autowired + private FlowFeign flowFeign; + @Autowired + private FlowableFeign flowableFeign; + @Autowired + private FlowTaskFeign flowTaskFeign; + @Autowired + private MessageFeign messageFeign; + + public PagerVo listPageVo(PagerQuery pq) { + LoanLawsuitSubApplyQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + //========================================数据授权开始 + if (StringUtils.isNotBlank(query.getMenuUrl()) || StringUtils.isNotBlank(query.getMenuSid())) { + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setMenuUrl(query.getMenuSid()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("s.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("s.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("s.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("s.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("ls.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + if (StringUtils.isNotBlank(query.getUseOrgName())) { + qw.like("ls.useOrgName", query.getUseOrgName()); + } + if (StringUtils.isNotBlank(query.getCreateDept())) { + qw.like("ls.createDept", query.getCreateDept()); + } + if (StringUtils.isNotBlank(query.getCreateByName())) { + qw.like("ls.createByName", query.getCreateByName()); + } + if (StringUtils.isNotBlank(query.getCustomerName())) { + qw.like("ls.customerName", query.getCustomerName()); + } + if (StringUtils.isNotBlank(query.getLoanName())) { + qw.like("ls.loanName", query.getLoanName()); + } + if (StringUtils.isNotBlank(query.getLoanContractNo())) { + qw.like("ls.loanContractNo", query.getLoanContractNo()); + } + if (StringUtils.isNotBlank(query.getBankName())) { + qw.like("ls.bankName", query.getBankName()); + } + if (StringUtils.isNotBlank(query.getBankContractNo())) { + qw.like("ls.bankContractNo", query.getBankContractNo()); + } + String createStartTime = query.getCreateTimeStart(); + String createEndTime = query.getCreateTimeEnd(); + qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (ls.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotEmpty(createEndTime), "date_format (ls.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" + ); + String finishStartTime = query.getCloseDateStart(); + String finishEndTime = query.getCloseDateEnd(); + qw.apply(StringUtils.isNotEmpty(finishStartTime), "date_format (ls.closeDate,'%Y-%m-%d') >= date_format('" + finishStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotEmpty(finishEndTime), "date_format (ls.closeDate,'%Y-%m-%d') <= date_format('" + finishEndTime + "','%Y-%m-%d')" + ); + qw.orderByDesc("ls.createTime"); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public String saveOrUpdateDto(LoanLawsuitSubApplyDto dto){ + String dtoSid = dto.getSid(); + List loanLawsuitSubVehList = dto.getLoanLawsuitSubVehList(); + if (StringUtils.isBlank(dtoSid)) { + //生成单据编号 + String billNo = ""; + String date = DateUtil.format(DateUtil.date(), "yyyyMM"); + SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(dto.getUseOrgSid()).getData(); + billNo = "ZSSKM" + sysOrganizationVo.getOrgCode() + date; + String i = baseMapper.selectNum(billNo); + if (StringUtils.isNotBlank(i)) { + billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue()); + } else { + billNo = Rule.getBillNo(billNo, 0); + } + dto.setBillNo(billNo); + String sid = this.insertByDto(dto); + for (LoanLawsuitSubVehDto loanLawsuitSubVehDto : loanLawsuitSubVehList) { + loanLawsuitSubVehDto.setMainSid(sid); + loanLawsuitSubVehService.insertByDto(loanLawsuitSubVehDto); + } + return sid; + } + this.updateByDto(dto); + loanLawsuitSubVehService.delByMainSid(dtoSid); + for (LoanLawsuitSubVehDto loanLawsuitSubVehDto : loanLawsuitSubVehList) { + loanLawsuitSubVehDto.setMainSid(dtoSid); + loanLawsuitSubVehService.insertByDto(loanLawsuitSubVehDto); + } + return dtoSid; + } + + public String insertByDto(LoanLawsuitSubApplyDto dto){ + LoanLawsuitSubApply entity = new LoanLawsuitSubApply(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + entity.setNodeState("待提交"); + baseMapper.insert(entity); + return entity.getSid(); + } + + public void updateByDto(LoanLawsuitSubApplyDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + return; + } + LoanLawsuitSubApply entity = fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + + public LoanLawsuitSubApplyDetailsVo init(String sid) { + LoanCaseProgress loanCaseProgress = loanCaseProgressService.fetchBySid(sid); + LoanLawsuitApply loanLawsuitApply = loanLawsuitApplyService.fetchBySid(loanCaseProgress.getBusSid()); + List loanLawsuitVehVos = loanLawsuitVehService.selByMainSid(loanLawsuitApply.getSid()); + LoanLawsuitSubApplyDetailsVo loanLawsuitSubApplyDetailsVo = new LoanLawsuitSubApplyDetailsVo(); + List loanLawsuitSubVehDetailsVos = new ArrayList<>(); + loanLawsuitSubApplyDetailsVo.setCreateDept(loanLawsuitApply.getCreateDept()); + loanLawsuitSubApplyDetailsVo.setCreateDeptSid(loanLawsuitApply.getCreateDeptSid()); + loanLawsuitSubApplyDetailsVo.setCreateByName(loanLawsuitApply.getCreateByName()); + loanLawsuitSubApplyDetailsVo.setCreateBySid(loanLawsuitApply.getCreateBySid()); + loanLawsuitSubApplyDetailsVo.setCustomerName(loanLawsuitApply.getCustomerName()); + loanLawsuitSubApplyDetailsVo.setCustomerSid(loanLawsuitApply.getCustomerSid()); + loanLawsuitSubApplyDetailsVo.setLoanSid(loanLawsuitApply.getLoanSid()); + loanLawsuitSubApplyDetailsVo.setLoanName(loanLawsuitApply.getLoanName()); + loanLawsuitSubApplyDetailsVo.setLoanContractSid(loanLawsuitApply.getLoanContractSid()); + loanLawsuitSubApplyDetailsVo.setLoanContractNo(loanLawsuitApply.getLoanContractNo()); + loanLawsuitSubApplyDetailsVo.setBankName(loanLawsuitApply.getBankName()); + loanLawsuitSubApplyDetailsVo.setBankContractNo(loanLawsuitApply.getBankContractNo()); + loanLawsuitSubApplyDetailsVo.setUseOrgSid(loanLawsuitApply.getUseOrgSid()); + loanLawsuitSubApplyDetailsVo.setUseOrgName(loanLawsuitApply.getUseOrgName()); + loanLawsuitSubApplyDetailsVo.setLawSid(loanLawsuitApply.getSid()); + loanLawsuitSubApplyDetailsVo.setAjSid(sid); + for (LoanLawsuitVehVo loanLawsuitVehVo : loanLawsuitVehVos) { + LoanLawsuitSubVehDetailsVo loanLawsuitSubVehDetailsVo = new LoanLawsuitSubVehDetailsVo(); + loanLawsuitSubVehDetailsVo.setVinNo(loanLawsuitVehVo.getVinNo()); + BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.fetchBySalesOrderVehiclerSid(loanLawsuitVehVo.getBusVinSid()).getData(); + loanLawsuitSubVehDetailsVo.setRiskState(busSalesOrderVehicle.getRiskState().toString()); + loanLawsuitSubVehDetailsVo.setRepo(busSalesOrderVehicle.getRepoState().toString()); + loanLawsuitSubVehDetailsVo.setCurrentBeMoney(new BigDecimal(loanLawsuitVehVo.getCurrentBeMoney())); + SettleApplyCommonVo info = loanSettleApplyService.getInfo(loanLawsuitVehVo.getBusVinSid(), DateUtil.formatDate(new Date())); + loanLawsuitSubVehDetailsVo.setCurrentNotDuePrice(new BigDecimal(info.getCurrentNotDuePrice())); + loanLawsuitSubVehDetailsVo.setNotDuePrice(new BigDecimal(loanLawsuitVehVo.getUnexpiredMoney())); + if (busSalesOrderVehicle.getRepoState() == 0){ + loanLawsuitSubVehDetailsVo.setBankAmount(BigDecimal.ZERO); + }else { + BigDecimal bankAmount = loanRepurchaseApplyService.selByBusVinSid(loanLawsuitVehVo.getBusVinSid()); + loanLawsuitSubVehDetailsVo.setBankAmount(bankAmount); + } + loanLawsuitSubVehDetailsVo.setLawAomount(loanLawsuitSubVehDetailsVo.getCurrentBeMoney().add(loanLawsuitSubVehDetailsVo.getCurrentNotDuePrice()).add(loanLawsuitSubVehDetailsVo.getNotDuePrice()).add(loanLawsuitSubVehDetailsVo.getBankAmount())); + loanLawsuitSubVehDetailsVos.add(loanLawsuitSubVehDetailsVo); + } + loanLawsuitSubApplyDetailsVo.setLoanLawsuitSubVehList(loanLawsuitSubVehDetailsVos); + loanLawsuitSubApplyDetailsVo.setAmount(loanLawsuitSubVehDetailsVos.stream().map(LoanLawsuitSubVehDetailsVo::getLawAomount).reduce(BigDecimal.ZERO, BigDecimal::add)); + return loanLawsuitSubApplyDetailsVo; + } + + public LoanLawsuitSubApplyDetailsVo fetchDetailsVoBySid(String sid){ + LoanLawsuitSubApply entity = fetchBySid(sid); + LoanLawsuitSubApplyDetailsVo vo = new LoanLawsuitSubApplyDetailsVo(); + BeanUtil.copyProperties(entity, vo); + List loanLawsuitSubVehDetailsVos = loanLawsuitSubVehService.selByMainSid(sid); + vo.setLoanLawsuitSubVehList(loanLawsuitSubVehDetailsVos); + return vo; + } + + public ResultBean delAll(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + //查询该sid中是否有流程不是待提交的 + int count = baseMapper.selectBySid(StringUtils.join(sids, ",")); + if (count > 0) { + return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败"); + } + delBySids(sids); + for (String sid : sids) { + loanLawsuitSubVehService.delByMainSid(sid); + } + return rb.success().setMsg("删除成功"); + } + + //-----------------------------------flow--------------------------------- + + /** + * 判断提交的流程是否被允许 + * + * @param dto + * @return + */ + private synchronized int submitBusinessData(SubmitLawsuitSubDto dto, LoanLawsuitSubApply loanLawsuitSubApply) { + int r = 0; + if (StringUtils.isBlank(dto.getSid())) { + r = 1; + } else { + if (loanLawsuitSubApply != null) { + String businessTaskId = loanLawsuitSubApply.getTaskId(); + if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { + //新提交 + r = 1; + } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { + //二次提交//只有数据一致的时候才能进行下一步 + r = 2; + } + } else { + r = 3; + } + } + return r; + } + + /** + * 更新流程相关的状态 + * + * @param map + * @return + */ + private int updateFlowFiled(Map map) { + return baseMapper.updateFlowFiled(map); + } + + public ResultBean submitRecordApplication(SubmitLawsuitSubDto dto) { + ResultBean rb = ResultBean.fireFail(); + LoanLawsuitSubApply loanLawsuitSubApply = fetchBySid(dto.getSid()); + int r = submitBusinessData(dto, loanLawsuitSubApply); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + //新增修改保存 + String businessSid = saveOrUpdateDto(dto); + loanLawsuitSubApply = fetchBySid(businessSid); + //创建BusinessVariables实体对象 + BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值 + Map variables = BeanUtil.beanToMap(dto); + Map appMap = new HashMap<>(); + variables.put("businessSid", businessSid); + appMap.put("sid", businessSid); + variables.put("app", appMap); + String msgBusinessSid = loanLawsuitSubApply.getSid(); + //用户的部门全路径sid + SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(loanLawsuitSubApply.getCreateDeptSid()).getData(); + bv.setOrgSidPath(sysOrganizationVo.getOrgSidPath()); + //业务sid + bv.setBusinessSid(businessSid); + //用户sid + bv.setUserSid(loanLawsuitSubApply.getCreateBySid()); + bv.setFormVariables(variables); + //流程定义id + bv.setModelId(ProcDefEnum.LOANLAWSUITSUBAPPLY.getProDefId()); + if (r == 1) { + ResultBean voResultBean = flowFeign.startProcess(bv); + if (!voResultBean.getSuccess()) { + return rb.setMsg(voResultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = voResultBean.getData(); + int i = updateFlowFiled(BeanUtil.beanToMap(ufVo)); + //==================================添加线程 + try { + ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() + .setNameFormat("demo-pool-%d").build(); + ExecutorService pool = new ThreadPoolExecutor(2, 100, + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); + LoanLawsuitSubApply lawsuitSubApply = loanLawsuitSubApply; + Future future1 = pool.submit(() -> { + //极光推送 + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(msgBusinessSid); + messageFlowableQuery.setModuleName("转诉讼科目申请"); + SysUserVo userVo = sysUserFeign.fetchBySid(lawsuitSubApply.getCreateBySid()).getData(); + if (userVo != null) { + if (StringUtils.isNotBlank(userVo.getName())) { + messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + } + messageFlowableQuery.setMsgTitle("转诉讼科目申请"); + messageFeign.pushMessage(messageFlowableQuery); + }); + } catch (Exception e) { + e.printStackTrace(); + } + //==================================添加线程 + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(dto.getSid()); + bv.setTaskId(dto.getTaskId()); + bv.setTaskDefKey(lawsuitSubApply.getNodeSid()); + bv.setComment("重新提交"); + bv.setInstanceId(dto.getInstanceId()); + return complete(bv); + } + return rb; + } + + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = bv.getBusinessSid(); + LoanLawsuitSubApply lawsuitSubApply = this.fetchBySid(businessSid); + if (bv.getTaskId().equals(lawsuitSubApply.getTaskId())) { + //用户的部门全路径sid + SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(lawsuitSubApply.getCreateDeptSid()).getData(); + bv.setOrgSidPath(sysOrganizationVo.getOrgSidPath()); + //流程中的参数赋值 + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + variables.put("businessSid", businessSid); + appMap.put("sid", businessSid); + variables.put("app", appMap); + bv.setFormVariables(variables); + ResultBean resultBean = flowFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + int i = updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { + + } else { + //极光推送 + lawsuitSubApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowVo.setProcDefId(lawsuitSubApply.getProcDefId()); + messageFlowVo.setProcInsId(lawsuitSubApply.getProcInstId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("转诉讼科目申请"); + messageFlowableQuery.setMsgContent(lawsuitSubApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("转诉讼科目申请"); + messageFeign.pushMessage(messageFlowableQuery); + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + + /** + * 撤回 + * + * @param query + * @return + */ + public ResultBean revokeProcess(LawsuitSubTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = lawsuitSubApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + lawsuitSubApply = fetchBySid(query.getBusinessSid()); + String procId = lawsuitSubApply.getProcInstId(); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + String nextName = listResultBean.getData().get(0).getName_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); + if ("发起申请".equals(nextName)) { + } + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + } + + public ResultBean taskReject(LawsuitSubTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = query.getBusinessSid(); + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(businessSid); + if (lawsuitSubApply == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = lawsuitSubApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + flowTaskVo.setValues(variables); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + Map map = BeanUtil.beanToMap(ufVo); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + //极光推送 + lawsuitSubApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = lawsuitSubApply.getProcInstId(); + messageFlowVo.setProcInsId(procId); + messageFlowVo.setProcDefId(lawsuitSubApply.getProcDefId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("转诉讼科目申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextName = listResultBean.getData().get(0).getName_(); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); +// if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busVehicleApply.getCreateBySid())) { + if ("发起申请".equals(nextName)) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + + } else { + SysUserVo userVo = sysUserFeign.fetchBySid(lawsuitSubApply.getCreateBySid()).getData(); + if (userVo != null) { + if (StringUtils.isNotBlank(userVo.getName())) { + messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + } + } + messageFlowableQuery.setMsgTitle("转诉讼科目申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean breakProcess(LawsuitSubTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = lawsuitSubApply.getTaskId(); + if (query.getUserSid().equals(lawsuitSubApply.getCreateBySid())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } else { + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } + } + } + + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean> getNextNodesForSubmit(LawsuitSubGetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + //根据业务sid查询排产信息 + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(query.getBusinessSid()); + bv.setFormVariables(variables); + bv.setModelId(lawsuitSubApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LawsuitSubGetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + + } + + public ResultBean> getPreviousNodesForReject(LawsuitSubGetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + //根据业务sid查询排产信息 + LoanLawsuitSubApply lawsuitSubApply = fetchBySid(query.getBusinessSid()); + bv.setFormVariables(variables); + bv.setModelId(lawsuitSubApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LawsuitSubGetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + + } + + public ResultBean delegate(LawsuitSubDelegateQuery query) { + ResultBean rb = ResultBean.fireFail(); + FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); + BeanUtil.copyProperties(query, delegateQuery); + flowFeign.delegate(delegateQuery); + return rb.success(); + } +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.java new file mode 100644 index 0000000000..fd6e8dedb4 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.java @@ -0,0 +1,45 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubveh; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDetailsVo; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVeh; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface LoanLawsuitSubVehMapper extends BaseMapper { + + @Delete("delete from loan_lawsuit_sub_veh where mainSid = #{dtoSid}") + void delByMainSid(String dtoSid); + + @Select("select * from loan_lawsuit_sub_veh where mainSid = #{mainSid}") + List selByMainSid(String mainSid); +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.xml new file mode 100644 index 0000000000..32f86fabc4 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehMapper.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehRest.java new file mode 100644 index 0000000000..dc651186a3 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehRest.java @@ -0,0 +1,38 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubveh; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.*; + +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehFeign; + +@Api(tags = "转诉讼车辆列表") +@RestController +@RequestMapping("v1/loanlawsuitsubveh") +public class LoanLawsuitSubVehRest implements LoanLawsuitSubVehFeign { + +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java new file mode 100644 index 0000000000..24244fcb25 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java @@ -0,0 +1,54 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.riskcenter.biz.loanlawsuitsubveh; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDetailsVo; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVeh; +import com.yxt.anrui.riskcenter.api.loanlawsuitsubveh.LoanLawsuitSubVehDto; + +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class LoanLawsuitSubVehService extends MybatisBaseService { + + public void insertByDto(LoanLawsuitSubVehDto dto){ + LoanLawsuitSubVeh entity = new LoanLawsuitSubVeh(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.insert(entity); + } + + public void delByMainSid(String dtoSid) { + baseMapper.delByMainSid(dtoSid); + } + + public List selByMainSid(String mainSid) { + return baseMapper.selByMainSid(mainSid); + } +} \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.java index 3b3b3da51e..33549e5cdf 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.java @@ -14,6 +14,7 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; +import java.math.BigDecimal; import java.util.Map; @@ -43,4 +44,6 @@ public interface LoanRepurchaseApplyMapper extends BaseMapper + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyService.java index d1943ae336..4fb3733bba 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyService.java @@ -1246,4 +1246,8 @@ public class LoanRepurchaseApplyService extends MybatisBaseService Date: Fri, 23 May 2025 17:56:13 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java index d3f067efb8..95efaf7b74 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java @@ -124,7 +124,7 @@ public class LoanLawsuitSubApplyService extends MybatisBaseService defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { From 322cb922b6710622b417ee3736d107da95d8064e Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 26 May 2025 09:05:10 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E5=9B=9E=E8=B4=AD=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=88=97=E8=A1=A8=E6=B7=BB=E5=8A=A0=E9=A3=8E?= =?UTF-8?q?=E6=8E=A7=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanRepurchaseApplyVo.java | 2 + .../LoanRepurchaseApplyMapper.xml | 40 ++++++++-------- .../LoanRepurchaseApplyService.java | 46 +++++++++---------- 3 files changed, 46 insertions(+), 42 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepurchaseapply/LoanRepurchaseApplyVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepurchaseapply/LoanRepurchaseApplyVo.java index 53f20904f4..445534f5dc 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepurchaseapply/LoanRepurchaseApplyVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepurchaseapply/LoanRepurchaseApplyVo.java @@ -50,4 +50,6 @@ public class LoanRepurchaseApplyVo implements Vo { @ApiModelProperty("流程状态") private String nodeState; // 流程实例的sid + @ApiModelProperty("风控状态:0正常") + private Integer riskState; } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.xml index cd14ddac3b..6870e448c3 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepurchaseapply/LoanRepurchaseApplyMapper.xml @@ -24,26 +24,28 @@ + select busVinSid from loan_lawsuit_sub_veh where mainSid = #{businessSid} + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java index 24244fcb25..a69eea75e3 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubveh/LoanLawsuitSubVehService.java @@ -51,4 +51,8 @@ public class LoanLawsuitSubVehService extends MybatisBaseService selByMainSid(String mainSid) { return baseMapper.selByMainSid(mainSid); } + + public List selectByMainSid(String businessSid) { + return baseMapper.selectByMainSid(businessSid); + } } \ No newline at end of file From c7e121747463d2c11910a908c4b3817afd210d13 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 26 May 2025 13:28:32 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E9=9D=9E=E6=AD=A3=E5=B8=B8=E8=BF=98?= =?UTF-8?q?=E6=AC=BE=E8=AE=B0=E8=B4=A6=E5=87=AD=E8=AF=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/kingdee/voucher/PaymentVoucher.java | 2 + .../fin/biz/kingdee/FinKingDeeFeignRest.java | 16 +++++++ .../api/loanvoucher/RskPaymentVoucher.java | 2 + .../LoanBePadsincereApplyService.java | 21 +++++++-- .../LoanBuckleApplyService.java | 43 ++++++++++++++++--- 5 files changed, 76 insertions(+), 8 deletions(-) diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/PaymentVoucher.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/PaymentVoucher.java index c8cce63c18..e85e047955 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/PaymentVoucher.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/voucher/PaymentVoucher.java @@ -60,5 +60,7 @@ public class PaymentVoucher { public String type; @ApiModelProperty("核算维度银行") public String bank; + + private Integer riskState; } } diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java index 9ca85f1690..89445d2c3e 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java @@ -1818,6 +1818,22 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { } } else if (voucherDetail.getSceneCode().equals(SceneCodeEnum.PADSINCERE_VOUCHER4.getCode())) { dto1.setSummary(voucherDetail.getBankName() + "垫款资方违约金"); + if("1".equals(voucherDetail.getRiskState().toString())){ + //应收贷款车欠款_待处理欠款_扣回车辆 + dto1.setSubjectNo("1201.03.01"); + }else if("7".equals(voucherDetail.getRiskState().toString())){ + //应收贷款车欠款_待处理欠款_处置车辆_车辆处置损失 + dto1.setSubjectNo("1201.03.04.01"); + }else if("9".equals(voucherDetail.getRiskState().toString())){ + //应收贷款车欠款_待处理欠款_诉讼车辆 + dto1.setSubjectNo("1201.03.03"); + }else if("11".equals(voucherDetail.getRiskState().toString())){ + //应收贷款车欠款_待处理欠款_处置车辆_已诉讼 + dto1.setSubjectNo("1201.03.04.02"); + }else if("12".equals(voucherDetail.getRiskState().toString())){ + //应收贷款车欠款_待处理欠款_待执行 + dto1.setSubjectNo("1201.03.05"); + } dto1.setSubjectNo("1201.03.01"); } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvoucher/RskPaymentVoucher.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvoucher/RskPaymentVoucher.java index 1e98fa8d7f..9e0b132f86 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvoucher/RskPaymentVoucher.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanvoucher/RskPaymentVoucher.java @@ -60,5 +60,7 @@ public class RskPaymentVoucher { public String type; @ApiModelProperty("核算维度银行") public String bank; + + public Integer riskState; } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbepadsincereapply/LoanBePadsincereApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbepadsincereapply/LoanBePadsincereApplyService.java index 0d9cafb875..e12077543e 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbepadsincereapply/LoanBePadsincereApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbepadsincereapply/LoanBePadsincereApplyService.java @@ -1401,6 +1401,7 @@ public class LoanBePadsincereApplyService extends MybatisBaseService bdCustomers = new ArrayList<>(); BdCustomer bdCustomer = new BdCustomer(); bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo()); bdCustomer.setFShortName(salesOrder.getContractNo()); @@ -1877,7 +1877,6 @@ public class LoanBePadsincereApplyService extends MybatisBaseService resultBean = finKingDeeFeign.draftBdCustomer(bdCustomer); if (resultBean.getSuccess()) { customerNumber = bdCustomer.getFNumber(); @@ -1953,6 +1952,7 @@ public class LoanBePadsincereApplyService extends MybatisBaseService Date: Mon, 26 May 2025 13:57:15 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E8=BD=AC=E8=AF=89=E8=AE=BC=E7=A7=91?= =?UTF-8?q?=E7=9B=AE=E7=94=B3=E8=AF=B7=E9=80=9A=E8=BF=87=E5=90=8E=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E8=BD=AC=E8=AF=89=E8=AE=BC=E5=87=AD=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanLawsuitSubApplyService.java | 218 ++++++++++++++++++ 1 file changed, 218 insertions(+) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java index 9c76a46034..bf5af5addc 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanlawsuitsubapply/LoanLawsuitSubApplyService.java @@ -31,11 +31,19 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.util.concurrent.ThreadFactoryBuilder; +import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo; +import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign; import com.yxt.anrui.base.common.utils.Rule; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; +import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo; +import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusVinStateSetQuery; +import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign; +import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer; +import com.yxt.anrui.fin.api.kingdee.voucher.Voucher; import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; @@ -62,6 +70,7 @@ import com.yxt.anrui.riskcenter.biz.loancaseprogress.LoanCaseProgressService; import com.yxt.anrui.riskcenter.biz.loanlawsuitapply.LoanLawsuitApplyService; import com.yxt.anrui.riskcenter.biz.loanlawsuitsubveh.LoanLawsuitSubVehService; import com.yxt.anrui.riskcenter.biz.loanlawsuitveh.LoanLawsuitVehService; +import com.yxt.anrui.riskcenter.biz.loanrepaymentplandetails.LoanRepaymentPlanDetailsService; import com.yxt.anrui.riskcenter.biz.loanrepurchaseapply.LoanRepurchaseApplyService; import com.yxt.anrui.riskcenter.biz.loansettleapply.LoanSettleApplyService; import com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailDetailsVo; @@ -117,6 +126,16 @@ public class LoanLawsuitSubApplyService extends MybatisBaseService listPageVo(PagerQuery pq) { LoanLawsuitSubApplyQuery query = pq.getParams(); @@ -477,6 +496,7 @@ public class LoanLawsuitSubApplyService extends MybatisBaseService(1024), namedThreadFactory, new org.apache.tomcat.util.threads.ThreadPoolExecutor.AbortPolicy()); Future future1 = pool.submit(() -> { + pushRiskToFin(businessSid); setRiskState(businessSid); }); } catch (Exception e) { @@ -505,6 +525,204 @@ public class LoanLawsuitSubApplyService extends MybatisBaseService voucherResultDetailDtos = new ArrayList<>(); + List voucherResultDetailDto2 = new ArrayList<>(); + List voucherResultDetailDto3 = new ArrayList<>(); + SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(lawsuitSubApply.getCreateDeptSid()).getData(); + List busVinSidList = loanLawsuitSubVehService.selectByMainSid(businessSid); + for (int i = 0; i < busVinSidList.size(); i++) { + String busVinSid = busVinSidList.get(i); + BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(busVinSid).getData(); + String customerNumber = ""; + BusSalesOrder salesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData(); + if (salesOrder != null && busSalesOrderVehicle != null) { + //判断财务系统是否有客户 + Boolean aBoolean = finKingDeeFeign.customerExistState(busSalesOrderVehicle.getTemporaryNo()).getData(); + String linkNo = ""; + BusSalesOrderBorrowerDetailsVo borrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData(); + if (!aBoolean) { + BdCustomer bdCustomer = new BdCustomer(); + bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo()); + bdCustomer.setFShortName(salesOrder.getContractNo()); + if (StringUtils.isNotBlank(salesOrder.getPurchaseSystemSid())) { + BasePurchaseSystemDetailsVo data = basePurchaseSystemFeign.fetchDetailsByDeptSid(salesOrder.getPurchaseSystemSid()).getData(); + bdCustomer.setTOrgIds(data.getOrgCode()); + } + bdCustomer.setTOrgIds(deptVo.getOrgCode()); + if (org.apache.commons.lang3.StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) { + String vinNo = busSalesOrderVehicle.getLinkNo(); + if (vinNo.length() > 8) { + linkNo = vinNo.substring(vinNo.length() - 8); + } else { + linkNo = busSalesOrderVehicle.getLinkNo(); + } + if (null != borrowerDetailsVo) { + bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + linkNo); + } + } else { + if (null != borrowerDetailsVo) { + bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo()); + } + } + ResultBean resultBean = finKingDeeFeign.draftBdCustomer(bdCustomer); + if (resultBean.getSuccess()) { + customerNumber = bdCustomer.getFNumber(); + } + } else { + customerNumber = busSalesOrderVehicle.getTemporaryNo(); + } + } + + if("7".equals(busSalesOrderVehicle.getRiskState().toString())){ + BigDecimal all = BigDecimal.ZERO; + String allMoney = loanRepaymentPlanDetailsService.selectAllMoney(busVinSid); + String wdqMoney = loanRepaymentPlanDetailsService.getWdq(busVinSid); + all = all.add(StringUtils.isNotBlank(allMoney) ? new BigDecimal(allMoney) : BigDecimal.ZERO).add(StringUtils.isNotBlank(wdqMoney) ? new BigDecimal(wdqMoney) : BigDecimal.ZERO); + //贷方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); + //借方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); + if (all.compareTo(BigDecimal.ZERO) > 0) { + voucherResultDetailDtoDf.setSummary(customerNumber + "转诉讼"); + voucherResultDetailDtoDf.setSubjectNo("1201.03.04.01"); + //核算部门 + voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoDf.setDimensionCustom(customerNumber); + voucherResultDetailDtoDf.setCredit(all.toString()); + voucherResultDetailDtos.add(voucherResultDetailDtoDf); + voucherResultDetailDtoJf.setSummary(customerNumber + "转诉讼"); + voucherResultDetailDtoJf.setSubjectNo("1201.03.04.02"); + //核算部门 + voucherResultDetailDtoJf.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoJf.setDimensionCustom(customerNumber); + voucherResultDetailDtoJf.setDebit(all.toString()); + voucherResultDetailDtos.add(voucherResultDetailDtoJf); + } + } + + if("0".equals(busSalesOrderVehicle.getRiskState().toString())){//未扣回,直接转诉讼 + BigDecimal all = BigDecimal.ZERO; + //应收贷款车欠款_到期欠款_累欠 + BigDecimal lqMoney = BigDecimal.ZERO; + //应收贷款车欠款_未到期欠款_未到期欠款 + BigDecimal wdqMoney = BigDecimal.ZERO; + //应收贷款车欠款_到期欠款_本金 + BigDecimal bjMoney = BigDecimal.ZERO; + String lq = loanRepaymentPlanDetailsService.getYqLq(busVinSid); + lqMoney = lqMoney.add(new BigDecimal(StringUtils.isBlank(lq) ? "0" : lq)); + //未到期欠款 + String wdq = loanRepaymentPlanDetailsService.getWdq(busVinSid); + wdqMoney = wdqMoney.add(new BigDecimal(StringUtils.isBlank(wdq) ? "0" : wdq)); + String bj = loanRepaymentPlanDetailsService.getBj(busVinSid); + bjMoney = bjMoney.add(new BigDecimal(StringUtils.isBlank(bj) ? "0" : bj)); + all = lqMoney.add(wdqMoney).add(bjMoney); + if (all.compareTo(BigDecimal.ZERO) != 0) { + //借方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); + voucherResultDetailDtoJf.setSummary("转诉讼科目"); + voucherResultDetailDtoJf.setSubjectNo("1201.03.03"); + //核算部门 + voucherResultDetailDtoJf.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoJf.setDimensionCustom(customerNumber); + voucherResultDetailDtoJf.setDebit(all.toString()); + voucherResultDetailDto2.add(voucherResultDetailDtoJf); + } + if (lqMoney.compareTo(BigDecimal.ZERO) != 0) { + //贷方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoDf1 = new Voucher.VoucherResultDetailDto(); + voucherResultDetailDtoDf1.setSummary("转诉讼科目"); + voucherResultDetailDtoDf1.setSubjectNo("1201.02.03"); + //核算部门 + voucherResultDetailDtoDf1.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoDf1.setDimensionCustom(customerNumber); + voucherResultDetailDtoDf1.setCredit(lqMoney.toString()); + voucherResultDetailDto2.add(voucherResultDetailDtoDf1); + } + + if (wdqMoney.compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); + voucherResultDetailDtoDf2.setSummary("转诉讼科目"); + voucherResultDetailDtoDf2.setSubjectNo("1201.01.00"); + //核算部门 + voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoDf2.setDimensionCustom(customerNumber); + voucherResultDetailDtoDf2.setCredit(wdqMoney.toString()); + voucherResultDetailDto2.add(voucherResultDetailDtoDf2); + } + + if (bjMoney.compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto voucherResultDetailDtoDf3 = new Voucher.VoucherResultDetailDto(); + voucherResultDetailDtoDf3.setSummary("转诉讼科目"); + voucherResultDetailDtoDf3.setSubjectNo("1201.02.01"); + //核算部门 + voucherResultDetailDtoDf3.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoDf3.setDimensionCustom(customerNumber); + voucherResultDetailDtoDf3.setCredit(bjMoney.toString()); + voucherResultDetailDto2.add(voucherResultDetailDtoDf3); + } + } + if("1".equals(busSalesOrderVehicle.getRiskState().toString())){//扣回转诉讼 + BigDecimal all = BigDecimal.ZERO; + String allMoney = loanRepaymentPlanDetailsService.selectAllMoney(busVinSid); + String wdqMoney = loanRepaymentPlanDetailsService.getWdq(busVinSid); + all = all.add(StringUtils.isNotBlank(allMoney) ? new BigDecimal(allMoney) : BigDecimal.ZERO).add(StringUtils.isNotBlank(wdqMoney) ? new BigDecimal(wdqMoney) : BigDecimal.ZERO); + //贷方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); + //借方 + Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); + if (all.compareTo(BigDecimal.ZERO) > 0) { + voucherResultDetailDtoDf.setSummary("转诉讼科目"); + voucherResultDetailDtoDf.setSubjectNo("1201.03.01"); + //核算部门 + voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoDf.setDimensionCustom(customerNumber); + voucherResultDetailDtoDf.setCredit(all.toString()); + voucherResultDetailDto3.add(voucherResultDetailDtoDf); + voucherResultDetailDtoJf.setSummary("转诉讼科目"); + voucherResultDetailDtoJf.setSubjectNo("1201.03.03"); + //核算部门 + voucherResultDetailDtoJf.setDimensionDept(deptVo.getOrgCode()); + //核算客户 + voucherResultDetailDtoJf.setDimensionCustom(customerNumber); + voucherResultDetailDtoJf.setDebit(all.toString()); + voucherResultDetailDto3.add(voucherResultDetailDtoJf); + } + + + } + } + + if (!voucherResultDetailDtos.isEmpty()) { + voucher.setResultDetails(voucherResultDetailDtos); + finKingDeeFeign.saveVoucher(voucher); + } + if (!voucherResultDetailDto2.isEmpty()) { + voucher.setResultDetails(voucherResultDetailDto2); + finKingDeeFeign.saveVoucher(voucher); + } + if (!voucherResultDetailDto3.isEmpty()) { + voucher.setResultDetails(voucherResultDetailDto3); + finKingDeeFeign.saveVoucher(voucher); + } + } + } + public void setRiskState(String businessSid){ List busVinSidJh = new ArrayList<>(); List busVinSidSecond = new ArrayList<>();