From 9e877afcde35f3515a9b152f75ea0984634e8787 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 7 Dec 2023 17:16:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E6=94=B6=E4=BB=A3=E4=BB=98=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui/base/common/enums/BillTypeEnum.java | 1 + .../riskcenter/api/loanfile/LoanFileEnum.java | 1 + .../TransferPaymentQuery.java | 2 +- .../TransferPaymentVo.java | 2 + .../LoanTransferPaymentApplyFeign.java | 58 +- ...LoanTransferPaymentApplyFeignFallback.java | 67 ++ .../LoanTransferPaymentApplyVo.java | 1 + .../LoanTransferPaymentRecordVo.java | 42 + .../flow/SubmitTransferDto.java | 21 + .../flow/TransferCompleteDto.java | 41 + .../flow/TransferDelegateQuery.java | 26 + .../flow/TransferGetNodeQuery.java | 26 + .../flow/TransferGetNodeVo.java | 25 + .../flow/TransferTaskQuery.java | 56 ++ .../LoanRepaymentHistoryService.java | 3 + .../LoanTransferPaymentApplyMapper.java | 9 + .../LoanTransferPaymentApplyMapper.xml | 62 ++ .../LoanTransferPaymentApplyRest.java | 75 +- .../LoanTransferPaymentApplyService.java | 772 +++++++++++++++++- .../LoanTransferPaymentRecordMapper.java | 7 + .../LoanTransferPaymentRecordMapper.xml | 20 + .../LoanTransferPaymentRecordService.java | 11 + 22 files changed, 1306 insertions(+), 22 deletions(-) create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/SubmitTransferDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferCompleteDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferDelegateQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeQuery.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferTaskQuery.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java index 700dbdc433..63da1347e7 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java @@ -36,6 +36,7 @@ public enum BillTypeEnum { JCZLQRD("JCZLQRD", "交车资料确认单"), JCECQRD("JCECQRD", "交车资料二次确认单"), HKSQ("HKSQ", "划扣申请单据编号"), + DSDFSQ("DSDFSQ", "代收代付申请单据编号"), FKCEQRSQ("FKCEQRSQ", "放款差额确认申请"); diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java index 988ee93940..ab84a617e5 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfile/LoanFileEnum.java @@ -22,6 +22,7 @@ public enum LoanFileEnum { OTHER_INFO("013", "欠款客户备案其他资料"), BUCKLE_APPLY("014", "划扣申请附件"), BEPADSINCERE("015", "逾期垫款附件"), + TRANSFERPAYMENT("016", "代收代付附件"), ; diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentQuery.java index 21452bee75..ae3834a7ab 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentQuery.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentQuery.java @@ -22,7 +22,6 @@ public class TransferPaymentQuery implements Query { private String accountTypeKey; //转付账户类型key private String prepareStartDate; //预转付开始日期 private String prepareEndDate; //预转付结束日期 - private String overdueState; //转付状态 @ApiModelProperty("组织全路径") private String orgPath; @ApiModelProperty("菜单sid") @@ -32,4 +31,5 @@ public class TransferPaymentQuery implements Query { @ApiModelProperty("用户sid") private String userSid; private String type; //0待转付 1已转付 + private String period; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentVo.java index 048f888ac5..1f317a645f 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanrepaymenthistory/TransferPaymentVo.java @@ -15,6 +15,7 @@ public class TransferPaymentVo implements Vo { private String vinNo; //车架号 private String loanContractNo; //贷款合同号 private String bankName; //资方 + private String customer; private String bankContractNo; //资方合同号 private String borrowerName; //贷款人 private String period; //期数 @@ -23,6 +24,7 @@ public class TransferPaymentVo implements Vo { private String actualDate; //实还日期 private String actualMoney; //实还金额 private String prepareDate; //预转付日期 + private String transferDate; //实际付日期 private String spread; //息差 private String transferPrincipal; //转付本金 private String defaultInterest; //转付罚息 diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java index 85fc27849f..1141df38be 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeign.java @@ -1,7 +1,7 @@ package com.yxt.anrui.riskcenter.api.loantransferpaymentapply; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppBuckleDetailsVo; import com.yxt.anrui.riskcenter.api.loanbuckleapply.flow.*; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -29,11 +29,67 @@ import java.util.List; fallback = LoanTransferPaymentApplyFeignFallback.class) public interface LoanTransferPaymentApplyFeign { + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq); @ApiOperation("新增初始化") @PostMapping("/paymentInit") @ResponseBody public ResultBean paymentInit(@RequestBody String[] sids); + @ApiOperation("保存修改") + @PostMapping("/saveTransferPayment") + @ResponseBody + public ResultBean saveTransferPayment(@RequestBody LoanTransferPaymentApplyDto dto); + + @ApiOperation("详情查看") + @GetMapping("/paymentDetails") + @ResponseBody + public ResultBean paymentDetails(@RequestParam("sid") String sid); + + @ApiOperation("批量删除") + @DeleteMapping("/deleteBySids") + @ResponseBody + public ResultBean deleteBySids(@RequestBody String[] sids); + + + //---------------------------流程--------------------------------------- + + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submitRecordApplication(@RequestBody @Valid SubmitTransferDto dto); + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody TransferCompleteDto dto); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody TransferTaskQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody TransferTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@RequestBody TransferTaskQuery query); + + @ApiOperation(value = "流程历史流转记录") + @GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}") + public ResultBean flowRecord(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId); + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap TransferGetNodeQuery query); + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap TransferGetNodeQuery query); + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + public ResultBean delegate(@RequestBody TransferDelegateQuery query); } \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java index 319564c0a3..2b77067dd5 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyFeignFallback.java @@ -3,6 +3,7 @@ package com.yxt.anrui.riskcenter.api.loantransferpaymentapply; import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppBuckleDetailsVo; import com.yxt.anrui.riskcenter.api.loanbuckleapply.flow.*; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -14,8 +15,74 @@ import java.util.List; @Component public class LoanTransferPaymentApplyFeignFallback implements LoanTransferPaymentApplyFeign { + @Override + public ResultBean> listPage(PagerQuery pq) { + return null; + } + @Override public ResultBean paymentInit(String[] sids) { return null; } + + @Override + public ResultBean saveTransferPayment(LoanTransferPaymentApplyDto dto) { + return null; + } + + @Override + public ResultBean paymentDetails(String sid) { + return null; + } + + @Override + public ResultBean deleteBySids(String[] sids) { + return null; + } + + @Override + public ResultBean submitRecordApplication(SubmitTransferDto dto) { + return null; + } + + @Override + public ResultBean complete(TransferCompleteDto dto) { + return null; + } + + + @Override + public ResultBean revokeProcess(TransferTaskQuery query) { + return null; + } + + @Override + public ResultBean taskReject(TransferTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(TransferTaskQuery query) { + return null; + } + + @Override + public ResultBean flowRecord(String procInsId) { + return null; + } + + @Override + public ResultBean> getNextNodesForSubmit(TransferGetNodeQuery query) { + return null; + } + + @Override + public ResultBean> getPreviousNodesForReject(TransferGetNodeQuery query) { + return null; + } + + @Override + public ResultBean delegate(TransferDelegateQuery query) { + return null; + } } \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyVo.java index abca520777..94b894234d 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentApplyVo.java @@ -33,4 +33,5 @@ public class LoanTransferPaymentApplyVo implements Vo { private String remarks; // 备注 + } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentRecordVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentRecordVo.java index 73d02ee520..b5212c5b44 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentRecordVo.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/LoanTransferPaymentRecordVo.java @@ -1,7 +1,10 @@ package com.yxt.anrui.riskcenter.api.loantransferpaymentapply; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; + /** * @author Fan * @description @@ -9,5 +12,44 @@ import lombok.Data; */ @Data public class LoanTransferPaymentRecordVo { + private String recordSid; + private String loanContractNo; + @ApiModelProperty("资方名称") + private String bankName; + @ApiModelProperty("资方合同") + private String bankContractNo; + @ApiModelProperty("客户") + private String customer; + @ApiModelProperty("借款人名称") + private String borrowerName; + @ApiModelProperty("期数") + private String period; + @ApiModelProperty("实还日期") + private String actualDate; + @ApiModelProperty("实还金额") + private String actualMoney; + @ApiModelProperty("息差") + private String spread; + @ApiModelProperty("转付本金") + private String transferPrincipal; + @ApiModelProperty("转付罚息") + private String defaultInterest; + @ApiModelProperty("转付账户类型") + private String accountType; + @ApiModelProperty("转付账户类型key") + private String accountTypeKey; + @ApiModelProperty("转付账户") + private String account; + @ApiModelProperty("转付账户账号") + private String accountNumber; + private String vinNo; +// @ApiModelProperty("还款方式") +// private String returnWay; +// @ApiModelProperty("应还日期") +// private String dueDate; +// @ApiModelProperty("应还金额") +// private String dueMoney; + // @ApiModelProperty("本期未还金额") +// private String outstandingMoney; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/SubmitTransferDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/SubmitTransferDto.java new file mode 100644 index 0000000000..c2e3e06826 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/SubmitTransferDto.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow; + +import com.yxt.anrui.riskcenter.api.loanbuckleapply.LoanBuckleApplyDto; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/6/27 13:38 + * @Description + */ +@Data +public class SubmitTransferDto extends LoanTransferPaymentApplyDto { + private static final long serialVersionUID = 378585162071125756L; + @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/loantransferpaymentapply/flow/TransferCompleteDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferCompleteDto.java new file mode 100644 index 0000000000..daa797442d --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferCompleteDto.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.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 TransferCompleteDto 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/loantransferpaymentapply/flow/TransferDelegateQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferDelegateQuery.java new file mode 100644 index 0000000000..4448e49fbe --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferDelegateQuery.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/28 9:28 + */ +@Data +public class TransferDelegateQuery { + @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/loantransferpaymentapply/flow/TransferGetNodeQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeQuery.java new file mode 100644 index 0000000000..5ec8e57294 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeQuery.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.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 TransferGetNodeQuery 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/loantransferpaymentapply/flow/TransferGetNodeVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeVo.java new file mode 100644 index 0000000000..008df2a7aa --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferGetNodeVo.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.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 TransferGetNodeVo 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/loantransferpaymentapply/flow/TransferTaskQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferTaskQuery.java new file mode 100644 index 0000000000..a502b1f641 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loantransferpaymentapply/flow/TransferTaskQuery.java @@ -0,0 +1,56 @@ +package com.yxt.anrui.riskcenter.api.loantransferpaymentapply.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 TransferTaskQuery 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-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java index 1baf08adc9..d41cb3f322 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java @@ -835,6 +835,9 @@ public class LoanRepaymentHistoryService extends MybatisBaseService { + LoanTransferPaymentRecordVo paymentInfo(String sid); + + int selectNum(String bill); + + IPage listPage(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + int updateFlowFiled(Map map); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyMapper.xml index bba1299560..615039d029 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyMapper.xml @@ -2,4 +2,66 @@ + + + + + UPDATE loan_transfer_payment_apply + SET nodeState=#{nodeState} + , nodeSid=#{taskDefKey} + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid = #{sid} + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java index ccff9d5c72..9d2cc48950 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyRest.java @@ -6,8 +6,8 @@ import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.riskcenter.api.loanbuckleapply.*; import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppBuckleDetailsVo; import com.yxt.anrui.riskcenter.api.loanbuckleapply.flow.*; -import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyFeign; -import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyInit; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.*; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -27,8 +27,79 @@ public class LoanTransferPaymentApplyRest implements LoanTransferPaymentApplyFei @Autowired private LoanTransferPaymentApplyService loanTransferPaymentApplyService; + @Override + public ResultBean> listPage(PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = loanTransferPaymentApplyService.listPage(pq); + return rb.success().setData(pv); + } + @Override public ResultBean paymentInit(String[] sids) { return loanTransferPaymentApplyService.paymentInit(sids); } + + @Override + public ResultBean saveTransferPayment(LoanTransferPaymentApplyDto dto) { + return loanTransferPaymentApplyService.saveTransferPayment(dto); + } + + @Override + public ResultBean paymentDetails(String sid) { + return loanTransferPaymentApplyService.paymentDetails(sid); + } + + @Override + public ResultBean deleteBySids(String[] sids) { + return loanTransferPaymentApplyService.deleteBySids(sids); + } + + @Override + public ResultBean submitRecordApplication(SubmitTransferDto dto) { + return loanTransferPaymentApplyService.submitRecordApplication(dto); + } + + @Override + public ResultBean complete(TransferCompleteDto dto) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(dto, bv); + bv.setModelId(ProcDefEnum.COLLECTIONPAYMENT.getProDefId()); + return loanTransferPaymentApplyService.complete(bv); + } + + @Override + public ResultBean revokeProcess(TransferTaskQuery query) { + return loanTransferPaymentApplyService.revokeProcess(query); + } + + @Override + public ResultBean taskReject(TransferTaskQuery query) { + return loanTransferPaymentApplyService.taskReject(query); + } + + @Override + public ResultBean breakProcess(TransferTaskQuery query) { + return loanTransferPaymentApplyService.breakProcess(query); + } + + @Override + public ResultBean flowRecord(String procInsId) { + return loanTransferPaymentApplyService.flowRecord(procInsId); + } + + @Override + public ResultBean> getNextNodesForSubmit(TransferGetNodeQuery query) { + return loanTransferPaymentApplyService.getNextNodesForSubmit(query); + } + + @Override + public ResultBean> getPreviousNodesForReject(TransferGetNodeQuery query) { + return loanTransferPaymentApplyService.getPreviousNodesForReject(query); + } + + @Override + public ResultBean delegate(TransferDelegateQuery query) { + return loanTransferPaymentApplyService.delegate(query); + } + } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java index 9f39e1d80d..ca1e3099d1 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentapply/LoanTransferPaymentApplyService.java @@ -25,20 +25,15 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.*; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppBuckleDetailsVo; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.app.AppRecordVo; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.flow.*; -import com.yxt.anrui.riskcenter.api.loanbuckleapplyrecord.LoanBuckleApplyRecord; import com.yxt.anrui.riskcenter.api.loanfile.LoanFile; import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum; import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.LoanRepaymentHistory; -import com.yxt.anrui.riskcenter.api.loanrepaymenthistory.LoanRepaymentHistoryRecordVo; -import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApply; -import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyInit; -import com.yxt.anrui.riskcenter.biz.loanbuckleapplyrecord.LoanBuckleApplyRecordService; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.*; +import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.flow.*; +import com.yxt.anrui.riskcenter.api.loantransferpaymentrecord.LoanTransferPaymentRecord; import com.yxt.anrui.riskcenter.biz.loanfile.LoanFileService; import com.yxt.anrui.riskcenter.biz.loanrepaymenthistory.LoanRepaymentHistoryService; +import com.yxt.anrui.riskcenter.biz.loantransferpaymentrecord.LoanTransferPaymentRecordService; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -66,22 +61,763 @@ import java.util.stream.Collectors; @Service public class LoanTransferPaymentApplyService extends MybatisBaseService { + @Autowired + private LoanTransferPaymentRecordService loanTransferPaymentRecordService; + @Autowired + private LoanFileService loanFileService; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + @Autowired + private LoanRepaymentHistoryService loanRepaymentHistoryService; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private FileUploadComponent fileUploadComponent; + @Autowired + private FlowFeign flowFeign; + @Autowired + private FlowableFeign flowableFeign; + @Autowired + private FlowTaskFeign flowTaskFeign; + @Autowired + private MessageFeign messageFeign; public ResultBean paymentInit(String[] sids) { ResultBean rb = ResultBean.fireFail(); LoanTransferPaymentApplyInit vo = new LoanTransferPaymentApplyInit(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); vo.setApplyDate(sdf.format(new Date())); - List historyRecords = new ArrayList<>(); -// for (String sid : sids) { -// LoanBuckleHistoryRecord record = new LoanBuckleHistoryRecord(); -// LoanRepaymentHistoryRecordVo recordVo = loanRepaymentHistoryService.buckleInfo(sid).getData(); -// if (null != recordVo) { -// BeanUtil.copyProperties(recordVo, record); + List historyRecords = new ArrayList<>(); + for (String sid : sids) { + LoanTransferPaymentRecordVo recordVo = baseMapper.paymentInfo(sid); + recordVo.setSpread("0"); + recordVo.setDefaultInterest("0"); + if (StringUtils.isNotBlank(recordVo.getBankContractNo())) { + LoanTransferPaymentRecord paymentRecord = loanTransferPaymentRecordService.selByBankContractNo(recordVo.getBankContractNo()); + if (null != paymentRecord) { + if (StringUtils.isNotBlank(paymentRecord.getAccount())) { + recordVo.setAccount(paymentRecord.getAccount()); + } + if (StringUtils.isNotBlank(paymentRecord.getAccountNumber())) { + recordVo.setAccountNumber(paymentRecord.getAccountNumber()); + } + if (StringUtils.isNotBlank(paymentRecord.getAccountType())) { + recordVo.setAccountType(paymentRecord.getAccountType()); + } + if (StringUtils.isNotBlank(paymentRecord.getAccountTypeKey())) { + recordVo.setAccountTypeKey(paymentRecord.getAccountTypeKey()); + } + } + } + historyRecords.add(recordVo); + } + vo.setRecords(historyRecords); + return rb.success().setData(vo); + } + + /** + * 生成申请单单据编号 + * + * @param orgSid + * @return + */ + public String getApplyCode(String orgSid) { + //获取分公司sid + ResultBean resultBean1 = sysOrganizationFeign.fetchBySid(orgSid); + String orgCode = resultBean1.getData().getOrgCode(); + BillNo b = new BillNo(); + b.setOrgCode(orgCode); + b.setBillType(BillTypeEnum.DSDFSQ.getBillType()); + String bill = Rule.getBill(b); + int i = baseMapper.selectNum(bill); + String billNo = Rule.getBillNo(bill, i); + return billNo; + } + + @Transactional(rollbackFor = Exception.class) + public ResultBean saveTransferPayment(LoanTransferPaymentApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = ""; + if (StringUtils.isNotBlank(dto.getSid())) { + sid = dto.getSid(); + LoanTransferPaymentApply updateEntity = fetchBySid(sid); + if (null != updateEntity) { + BeanUtil.copyProperties(dto, updateEntity, "id", "sid"); + baseMapper.updateById(updateEntity); + int i = loanTransferPaymentRecordService.deleteByMainSid(sid); + //删除附件表中关于该linkSid的文件 + loanFileService.deleteByLinkSid(sid); + List filess = dto.getFiles(); + if (!filess.isEmpty()) { + List files = new ArrayList<>(); + for (LoanTransferPaymentApplyFile file : filess) { + files.add(file.getUrl()); + } + loanFileService.saveAll(sid, files, LoanFileEnum.TRANSFERPAYMENT.getAttachType()); + } + List records = dto.getRecords(); + if (!records.isEmpty()) { + for (LoanTransferPaymentRecordVo record : records) { + LoanTransferPaymentRecord applyRecord = new LoanTransferPaymentRecord(); + BeanUtil.copyProperties(record, applyRecord, "id", "sid"); + applyRecord.setMainSid(sid); + applyRecord.setRepaymentHistorySid(record.getRecordSid()); + loanTransferPaymentRecordService.insert(applyRecord); + } + } + } + } else { + LoanTransferPaymentApply transferPaymentApply = new LoanTransferPaymentApply(); + sid = transferPaymentApply.getSid(); + BeanUtil.copyProperties(dto, transferPaymentApply, "id", "sid"); + transferPaymentApply.setCreateBySid(dto.getUserSid()); + transferPaymentApply.setOrgSidPath(dto.getOrgPath()); + ResultBean orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()); + if (orgSidByPath.getSuccess()) { + String userOrgSid = orgSidByPath.getData(); + transferPaymentApply.setUseOrgSid(userOrgSid); + String billNo = getApplyCode(userOrgSid); + transferPaymentApply.setBillNo(billNo); + ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid); + if (organizationVo.getSuccess()) { + SysOrganizationVo organizationVoData = organizationVo.getData(); + if (null != organizationVoData) { + transferPaymentApply.setUseOrgName(organizationVoData.getName()); + } + } + } + transferPaymentApply.setNodeState("待提交"); + baseMapper.insert(transferPaymentApply); + List records = dto.getRecords(); + if (!records.isEmpty()) { + for (LoanTransferPaymentRecordVo record : records) { + LoanTransferPaymentRecord applyRecord = new LoanTransferPaymentRecord(); + BeanUtil.copyProperties(record, applyRecord, "id", "sid"); + applyRecord.setMainSid(sid); + applyRecord.setRepaymentHistorySid(record.getRecordSid()); + loanTransferPaymentRecordService.insert(applyRecord); + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(record.getRecordSid()); + if (null != repaymentHistory) { + repaymentHistory.setPaymentState("转付中"); + repaymentHistory.setPaymentStateKey("002"); + loanRepaymentHistoryService.updateById(repaymentHistory); + } + } + } + //删除附件表中关于该linkSid的文件 + loanFileService.deleteByLinkSid(sid); + List filess = dto.getFiles(); + if (!filess.isEmpty()) { + List files = new ArrayList<>(); + for (LoanTransferPaymentApplyFile file : filess) { + files.add(file.getUrl()); + } + loanFileService.saveAll(sid, files, LoanFileEnum.TRANSFERPAYMENT.getAttachType()); + } + } + return rb.success().setData(sid); + } + + public PagerVo listPage(PagerQuery pq) { + IPage page = PagerUtil.queryToPage(pq); + LoanTransferPaymentApplyQuery pagerQuery = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + //======================= + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(pagerQuery.getOrgPath()); + privilegeQuery.setMenuSid(pagerQuery.getMenuSid()); + privilegeQuery.setMenuUrl(pagerQuery.getMenuUrl()); + privilegeQuery.setUserSid(pagerQuery.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = pagerQuery.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("createBySid", pagerQuery.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + //======================= + //分公司 + if (StringUtils.isNotBlank(pagerQuery.getCompany())) { + qw.like("useOrgName", pagerQuery.getCompany()); + } + //申请人 + if (StringUtils.isNotBlank(pagerQuery.getApplyName())) { + qw.like("applyName", pagerQuery.getApplyName()); + } + //申请编号 + if (StringUtils.isNotBlank(pagerQuery.getBillNo())) { + qw.like("billNo", pagerQuery.getBillNo()); + } + String applyStartTime = pagerQuery.getApplyStartDate(); + String applyEndTime = pagerQuery.getApplyEndDate(); + qw.apply(StringUtils.isNotEmpty(applyStartTime), "date_format (applyDate,'%Y-%m-%d') >= date_format('" + applyStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotEmpty(applyEndTime), "date_format (applyDate,'%Y-%m-%d') <= date_format('" + applyEndTime + "','%Y-%m-%d')" + ); + qw.eq("isDelete", 0); + qw.orderByDesc("createTime"); + IPage pagging = baseMapper.listPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean paymentDetails(String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanTransferPaymentApplyInit initVo = new LoanTransferPaymentApplyInit(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + LoanTransferPaymentApply paymentApply = fetchBySid(sid); + if (null != paymentApply) { + BeanUtil.copyProperties(paymentApply, initVo); + initVo.setUserSid(paymentApply.getCreateBySid()); + initVo.setOrgPath(paymentApply.getOrgSidPath()); + if (StringUtils.isNotBlank(paymentApply.getProcInstId())) { + initVo.setInstanceId(paymentApply.getProcInstId()); + } + if (null != paymentApply.getApplyDate()) { + initVo.setApplyDate(sdf.format(paymentApply.getApplyDate())); + } + List fileList = loanFileService.selectByLinkSid(sid, LoanFileEnum.TRANSFERPAYMENT.getAttachType()); + fileList.removeAll(Collections.singleton(null)); + if (!fileList.isEmpty()) { + List files = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()). + collect(Collectors.toList()); + List paymentApplyFiles = new ArrayList<>(); + for (String file : files) { + LoanTransferPaymentApplyFile paymentApplyFile = new LoanTransferPaymentApplyFile(); + paymentApplyFile.setUrl(file); + paymentApplyFiles.add(paymentApplyFile); + } + initVo.setFiles(paymentApplyFiles); + } + List records = loanTransferPaymentRecordService.selByMainSid(sid); + List recordList = new ArrayList<>(); + if (!records.isEmpty()) { + for (LoanTransferPaymentRecord record : records) { + String historySid = record.getRepaymentHistorySid(); + LoanTransferPaymentRecordVo recordVo = baseMapper.paymentInfo(historySid); + recordList.add(recordVo); + } + } + initVo.setRecords(recordList); + } + return rb.success().setData(initVo); + } + + public ResultBean deleteBySids(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + for (String sid : sids) { + LoanTransferPaymentApply paymentApply = fetchBySid(sid); + if (null != paymentApply) { + if (!paymentApply.getNodeState().equals("待提交")) { + return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败"); + } + } + paymentApply.setIsDelete(1); + int i = baseMapper.updateById(paymentApply); + if (i == 0) { + return rb.setMsg("删除失败"); + } + List loanTransferPaymentRecords = loanTransferPaymentRecordService.selByMainSid(sid); + if (!loanTransferPaymentRecords.isEmpty()) { + for (LoanTransferPaymentRecord applyRecord : loanTransferPaymentRecords) { + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); + if (null != repaymentHistory) { + repaymentHistory.setPaymentState("待转付"); + repaymentHistory.setPaymentStateKey("001"); + loanRepaymentHistoryService.updateById(repaymentHistory); + } + } + } + loanTransferPaymentRecordService.deleteByMainSid(sid); + } + return ResultBean.fireSuccess().setMsg("删除成功"); + } + + + //-------------------------------------流程------------------------------------------------/ + + /** + * 判断提交的流程是否被允许 + * + * @param dto + * @return + */ + private synchronized int submitBusinessData(SubmitTransferDto dto, LoanTransferPaymentApply paymentApply) { + int r = 0; + if (StringUtils.isBlank(dto.getSid())) { + r = 1; + } else { + if (paymentApply != null) { + String businessTaskId = paymentApply.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(SubmitTransferDto dto) { + ResultBean rb = ResultBean.fireFail(); + LoanTransferPaymentApply paymentApply = fetchBySid(dto.getSid()); + int r = submitBusinessData(dto, paymentApply); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + String businessSid = ""; + //新增修改保存 + ResultBean resultBean = saveTransferPayment(dto); + if (resultBean.getSuccess()) { + businessSid = resultBean.getData(); + } + LoanTransferPaymentApply entity = fetchBySid(businessSid); + String orgSidPath = ""; + if (StringUtils.isNotBlank(entity.getOrgSidPath())) { + orgSidPath = entity.getOrgSidPath(); + } else { + SysUserVo data = sysUserFeign.fetchBySid(entity.getCreateBySid()).getData(); + if (null != data) { + //根据staffSid获取用户的组织全路径 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(data.getStaffSid()); + if (!staffOrgResultBean.getSuccess()) { + return rb.setMsg(staffOrgResultBean.getMsg()); + } + //用户的组织全路径 + orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); + } + } + List orgPathList = Arrays.asList(orgSidPath.split("/")); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size() - 1)).getData(); + if (sysOrganization == null) { + return rb.setMsg("当前所在的组织机构不存在"); + } + if (StringUtils.isBlank(sysOrganization.getManagerSid())) { +// return rb.setMsg("当前所在的组织机构未设置主管人员"); + sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId()); + } + //创建BusinessVariables实体对象 + BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值 + Map variables = BeanUtil.beanToMap(dto); + Map appMap = new HashMap<>(); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(entity.getSalesUserSid())) { +// if (!entity.getCreateBySid().equals(entity.getSalesUserSid())) { +// isTure = false; // } -// historyRecords.add(record); // } -// vo.setRecords(historyRecords); - return rb.success().setData(vo); +// variables.put("isTure", isTure); + variables.put("businessSid", businessSid); + appMap.put("sid", businessSid); + variables.put("app", appMap); +// String orderNames = "<" + entity.getCustomer() + ">" + "欠款客户备案"; +// variables.put("orderNames", orderNames); + LoanTransferPaymentApply paymentApply1 = fetchBySid(businessSid); + String msgBusinessSid = paymentApply1.getSid(); + //用户的部门全路径sid + bv.setOrgSidPath(paymentApply1.getOrgSidPath()); + //业务sid + bv.setBusinessSid(businessSid); + //用户sid + bv.setUserSid(dto.getUserSid()); + bv.setFormVariables(variables); +// String nextNodeUserSids_ = sysOrganization.getManagerSid(); +// if (isTure) { +// bv.setNextNodeUserSids(nextNodeUserSids_); +// } else { +// bv.setNextNodeUserSids(entity.getSalesUserSid()); +// } + //流程定义id + bv.setModelId(ProcDefEnum.COLLECTIONPAYMENT.getProDefId()); + if (r == 1) { + //流程定义id + bv.setModelId(ProcDefEnum.COLLECTIONPAYMENT.getProDefId()); + 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()); + 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(paymentApply1.getCreateBySid()).getData(); + if (userVo != null) { + if (StringUtils.isNotBlank(userVo.getName())) { + messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + } + messageFlowableQuery.setMsgTitle("代收代付申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + }); + } catch (Exception e) { + e.printStackTrace(); + } + //==================================添加线程 + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + LoanTransferPaymentApply paymentApply2 = fetchBySid(dto.getSid()); + bv.setTaskId(dto.getTaskId()); + bv.setTaskDefKey(paymentApply2.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(); + LoanTransferPaymentApply paymentApply = this.fetchBySid(businessSid); + if (bv.getTaskId().equals(paymentApply.getTaskId())) { + bv.setOrgSidPath(paymentApply.getOrgSidPath()); + //流程中的参数赋值 + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); +// if (bv.getTaskDefKey().equals("Activity_1078xxs")) { +// if (StringUtils.isNotBlank(loanCustomerRecord.getManageSid())) { +// bv.setNextNodeUserSids(loanCustomerRecord.getManageSid()); +// } else { +// bv.setNextNodeUserSids(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId()); +// } +// } + 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()); + } + int i = updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { + List loanTransferPaymentRecords = loanTransferPaymentRecordService.selByMainSid(businessSid); + if (!loanTransferPaymentRecords.isEmpty()) { + for (LoanTransferPaymentRecord applyRecord : loanTransferPaymentRecords) { + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); + if (null != repaymentHistory) { + repaymentHistory.setPaymentStateKey("003"); + repaymentHistory.setPaymentState("已转付"); + repaymentHistory.setTransferDate(new DateTime()); + loanRepaymentHistoryService.updateById(repaymentHistory); + } + } + } + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + + public ResultBean revokeProcess(TransferTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + LoanTransferPaymentApply paymentApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + } + + public ResultBean taskReject(TransferTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = query.getBusinessSid(); + LoanTransferPaymentApply paymentApply = fetchBySid(businessSid); + if (paymentApply == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + if (org.apache.commons.lang3.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); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + 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); + //极光推送 + paymentApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = paymentApply.getProcInstId(); + messageFlowVo.setProcInsId(procId); + messageFlowVo.setProcDefId(paymentApply.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(paymentApply.getCreateBySid()).getData(); + if (userVo != null) { + if (org.apache.commons.lang3.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(TransferTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (org.apache.commons.lang3.StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (org.apache.commons.lang3.StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + if (org.apache.commons.lang3.StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + LoanTransferPaymentApply paymentApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (query.getUserSid().equals(paymentApply.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); + //终止任务后划扣状态改完未通过 + LoanTransferPaymentApply entity = fetchBySid(query.getBusinessSid()); + if (entity.getNodeState().equals("终止")) { + List loanTransferPaymentRecords = loanTransferPaymentRecordService.selByMainSid(query.getBusinessSid()); + if (!loanTransferPaymentRecords.isEmpty()) { + for (LoanTransferPaymentRecord applyRecord : loanTransferPaymentRecords) { + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); + if (null != repaymentHistory) { + repaymentHistory.setPaymentStateKey("001"); + repaymentHistory.setPaymentState("待转付"); + loanRepaymentHistoryService.updateById(repaymentHistory); + } + } + } + } + return rb.success().setData(resultBean.getData()); + } else { + 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); + //终止任务后划扣状态改完未通过 + LoanTransferPaymentApply entity = fetchBySid(query.getBusinessSid()); + if (entity.getNodeState().equals("终止")) { + List loanTransferPaymentRecords = loanTransferPaymentRecordService.selByMainSid(query.getBusinessSid()); + if (!loanTransferPaymentRecords.isEmpty()) { + for (LoanTransferPaymentRecord applyRecord : loanTransferPaymentRecords) { + LoanRepaymentHistory repaymentHistory = loanRepaymentHistoryService.fetchBySid(applyRecord.getRepaymentHistorySid()); + if (null != repaymentHistory) { + repaymentHistory.setPaymentStateKey("001"); + repaymentHistory.setPaymentState("待转付"); + loanRepaymentHistoryService.updateById(repaymentHistory); + } + } + } + } + + return rb.success().setData(resultBean.getData()); + } + } + + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean flowRecord(String procInsId) { + return flowTaskFeign.businessFlowRecord(procInsId); + } + + public ResultBean> getNextNodesForSubmit(TransferGetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + + //根据业务sid查询排产信息 + LoanTransferPaymentApply paymentApply = fetchBySid(query.getBusinessSid()); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + bv.setFormVariables(variables); + bv.setModelId(paymentApply.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), TransferGetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean> getPreviousNodesForReject(TransferGetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + //根据业务sid查询排产信息 + LoanTransferPaymentApply paymentApply = fetchBySid(query.getBusinessSid()); +// //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + bv.setFormVariables(variables); + bv.setModelId(paymentApply.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), TransferGetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean delegate(TransferDelegateQuery query) { + ResultBean rb = ResultBean.fireFail(); + FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); + BeanUtil.copyProperties(query, delegateQuery); + flowFeign.delegate(delegateQuery); + return rb.success(); + } + + } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.java index 646edc5314..8c1591854c 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.java @@ -3,8 +3,10 @@ package com.yxt.anrui.riskcenter.biz.loantransferpaymentrecord; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.yxt.anrui.riskcenter.api.loanbuckleapplyrecord.LoanBuckleApplyRecord; import com.yxt.anrui.riskcenter.api.loantransferpaymentrecord.LoanTransferPaymentRecord; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.springframework.web.bind.annotation.DeleteMapping; import java.util.List; @@ -13,4 +15,9 @@ import java.util.List; public interface LoanTransferPaymentRecordMapper extends BaseMapper { + int deleteByMainSid(String mainSid); + + List selByMainSid(String mainSid); + + LoanTransferPaymentRecord selByBankContractNo(String bankContractNo); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml index b7701af16e..ef8dbb2cd9 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordMapper.xml @@ -3,4 +3,24 @@ + + DELETE + FROM loan_transfer_payment_record + WHERE mainSid = #{mainSid} + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java index 7ca6e3d55c..d272380066 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loantransferpaymentrecord/LoanTransferPaymentRecordService.java @@ -16,4 +16,15 @@ import java.util.List; public class LoanTransferPaymentRecordService extends MybatisBaseService { + public int deleteByMainSid(String mainSid) { + return baseMapper.deleteByMainSid(mainSid); + } + + public List selByMainSid(String mainSid) { + return baseMapper.selByMainSid(mainSid); + } + + public LoanTransferPaymentRecord selByBankContractNo(String bankContractNo) { + return baseMapper.selByBankContractNo(bankContractNo); + } }