From 992bd93c313893db765853b33ba578fa7759ea9f Mon Sep 17 00:00:00 2001 From: ligaode Date: Wed, 30 Apr 2025 16:15:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanBeCollectionVehService.java | 29 ++-- ...oanHomevisitInvestigateOtherpeoMapper.java | 3 + ...anHomevisitInvestigateOtherpeoService.java | 4 + .../SecondarySalesNotAppVos.java | 60 ++++++++ .../SecondarySalesNotFeign.java | 65 ++++++++ .../SecondarySalesNotVehAppVo.java | 22 +++ .../SecondarySalesNotDelegateQuery.java | 24 +++ .../flowable/SecondarySalesNotDto.java | 35 +++++ .../flowable/SecondarySalesNotQuery.java | 23 +++ .../flowable/SecondarySalesNotTaskQuery.java | 45 ++++++ .../SecondarySalesNotRest.java | 60 ++++++++ .../SecondarySalesNotService.java | 142 ++++++++++++++++++ 12 files changed, 500 insertions(+), 12 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotAppVos.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotFeign.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotVehAppVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDelegateQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDto.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotTaskQuery.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotRest.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotService.java diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehService.java index ba8c3cf316..9279efe77f 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanbecollectionveh/LoanBeCollectionVehService.java @@ -149,14 +149,19 @@ public class LoanBeCollectionVehService extends MybatisBaseService dbrsfzs = loanHomevisitInvestigateFileService.selBySaleVehSidAndTypeKey(saleVehSid, LoanAttachTypeEnum.DBRSFZ.getAttachType()); List sfzs = new ArrayList<>(); - if (dbrsfzs != null && dbrsfzs.size() > 0){ + if (dbrsfzs != null && dbrsfzs.size() > 0) { for (LoanHomevisitInvestigateFileDetailsVo dbrsfz : dbrsfzs) { LoanBeCollectionFileVo loanBeCollectionFileVo = new LoanBeCollectionFileVo(); loanBeCollectionFileVo.setUrl(dbrsfz.getFileUrl()); @@ -166,7 +171,7 @@ public class LoanBeCollectionVehService extends MybatisBaseService dbrdbxys = loanHomevisitInvestigateFileService.selBySaleVehSidAndTypeKey(saleVehSid, LoanAttachTypeEnum.DBRDBXY.getAttachType()); List dbxys = new ArrayList<>(); - if (dbrdbxys != null && dbrdbxys.size() > 0){ + if (dbrdbxys != null && dbrdbxys.size() > 0) { for (LoanHomevisitInvestigateFileDetailsVo dbxy : dbrdbxys) { LoanBeCollectionFileVo loanBeCollectionFileVo = new LoanBeCollectionFileVo(); loanBeCollectionFileVo.setUrl(dbxy.getFileUrl()); @@ -176,7 +181,7 @@ public class LoanBeCollectionVehService extends MybatisBaseService dbrqts = loanHomevisitInvestigateFileService.selBySaleVehSidAndTypeKey(saleVehSid, LoanAttachTypeEnum.DBRQT.getAttachType()); List qts = new ArrayList<>(); - if (dbrqts != null && dbrqts.size() > 0){ + if (dbrqts != null && dbrqts.size() > 0) { for (LoanHomevisitInvestigateFileDetailsVo qt : dbrqts) { LoanBeCollectionFileVo loanBeCollectionFileVo = new LoanBeCollectionFileVo(); loanBeCollectionFileVo.setUrl(qt.getFileUrl()); @@ -205,7 +210,7 @@ public class LoanBeCollectionVehService extends MybatisBaseService sfzFiles = dto.getSfzFiles(); - if (sfzFiles != null && sfzFiles.size() > 0){ + if (sfzFiles != null && sfzFiles.size() > 0) { for (LoanBeCollectionFileVo sfzFile : sfzFiles) { String url = sfzFile.getUrl(); if (url.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { @@ -220,7 +225,7 @@ public class LoanBeCollectionVehService extends MybatisBaseService dbxyFiles = dto.getDbxyFiles(); - if (dbxyFiles != null && dbxyFiles.size() > 0){ + if (dbxyFiles != null && dbxyFiles.size() > 0) { for (LoanBeCollectionFileVo dbxyFile : dbxyFiles) { String url = dbxyFile.getUrl(); if (url.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { @@ -235,7 +240,7 @@ public class LoanBeCollectionVehService extends MybatisBaseService qtFiles = dto.getQtFiles(); - if (qtFiles != null && qtFiles.size() > 0){ + if (qtFiles != null && qtFiles.size() > 0) { for (LoanBeCollectionFileVo qtFile : qtFiles) { String url = qtFile.getUrl(); if (url.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { @@ -260,15 +265,15 @@ public class LoanBeCollectionVehService extends MybatisBaseService files = new ArrayList<>(); + @ApiModelProperty("列表") + private List loanSecondarySalesNotVehList = new ArrayList<>(); + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotFeign.java new file mode 100644 index 0000000000..1d24e72a76 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotFeign.java @@ -0,0 +1,65 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply; + +import com.yxt.anrui.terminal.api.risk.secondarysales.SecondarySalesAppVos; +import com.yxt.anrui.terminal.api.risk.secondarysales.SecondarySalesFeignFallback; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesDelegateQuery; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesDto; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesQuery; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesTaskQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDelegateQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDto; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotTaskQuery; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@FeignClient( + contextId = "terminal-SecondarySalesNot", + name = "anrui-terminal", + path = "/v1/secondarysalesnotapply", + fallback = SecondarySalesFeignFallback.class) +public interface SecondarySalesNotFeign { + + @ApiOperation("详情") + @GetMapping("/fetchDetailsBySid/{sid}") + @ResponseBody + ResultBean fetchDetailsBySid(@PathVariable("sid") String sid); + + @ApiOperation("办理") + @PutMapping("/agreeCreditInfo") + @ResponseBody + ResultBean agreeCreditInfo(@RequestBody SecondarySalesNotDto dto); + + @ApiOperation("驳回") + @PutMapping("/rejectCreditInfo") + @ResponseBody + ResultBean rejectCreditInfo(@RequestBody SecondarySalesNotTaskQuery query); + + @ApiOperation("撤回") + @PutMapping("/recallCreditInfo") + @ResponseBody + ResultBean recallCreditInfo(@RequestBody SecondarySalesNotTaskQuery query); + + @ApiOperation("终止") + @PutMapping("/stopCreditInfo") + @ResponseBody + ResultBean stopCreditInfo(@RequestBody SecondarySalesNotTaskQuery query); + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap SecondarySalesNotQuery query); + + @ApiOperation(value = "加签") + @PutMapping(value = "/delegate") + @ResponseBody + public ResultBean delegate(@RequestBody SecondarySalesNotDelegateQuery delegateQuery); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotVehAppVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotVehAppVo.java new file mode 100644 index 0000000000..9fd92f57c2 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/SecondarySalesNotVehAppVo.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Data +public class SecondarySalesNotVehAppVo { + + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("车辆类型") + private String vehType; + @ApiModelProperty("车型") + private String modelName; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDelegateQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDelegateQuery.java new file mode 100644 index 0000000000..f1532c3075 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDelegateQuery.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Data +public class SecondarySalesNotDelegateQuery { + private String userSid; + @ApiModelProperty("流程实例id") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDto.java new file mode 100644 index 0000000000..2baa51f5aa --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotDto.java @@ -0,0 +1,35 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Data +public class SecondarySalesNotDto { + + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:procInsId") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotQuery.java new file mode 100644 index 0000000000..70321b15e7 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotQuery.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Data +public class SecondarySalesNotQuery { + + @ApiModelProperty(value = "节点key") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + @NotNull(message = "参数错误:next") + private Integer next; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotTaskQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotTaskQuery.java new file mode 100644 index 0000000000..87b7820dfa --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysalesnotapply/flowable/SecondarySalesNotTaskQuery.java @@ -0,0 +1,45 @@ +package com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Data +public class SecondarySalesNotTaskQuery { + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + @JsonProperty("procInsId") + private String instanceId; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotRest.java new file mode 100644 index 0000000000..40fa88c504 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotRest.java @@ -0,0 +1,60 @@ +package com.yxt.anrui.terminal.biz.risk.secondarysalesnotapply; + +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.SecondarySalesNotAppVos; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.SecondarySalesNotFeign; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDelegateQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDto; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotTaskQuery; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Controller +@RequestMapping("/v1/secondarysalesnotapply") +public class SecondarySalesNotRest implements SecondarySalesNotFeign { + + @Autowired + private SecondarySalesNotService secondarySalesNotService; + + @Override + public ResultBean fetchDetailsBySid(String sid) { + return secondarySalesNotService.fetchDetailsBySid(sid); + } + + @Override + public ResultBean agreeCreditInfo(SecondarySalesNotDto dto) { + return secondarySalesNotService.agreeCreditInfo(dto); + } + + @Override + public ResultBean rejectCreditInfo(SecondarySalesNotTaskQuery query) { + return secondarySalesNotService.rejectCreditInfo(query); + } + + @Override + public ResultBean recallCreditInfo(SecondarySalesNotTaskQuery query) { + return secondarySalesNotService.recallCreditInfo(query); + } + + @Override + public ResultBean stopCreditInfo(SecondarySalesNotTaskQuery query) { + return secondarySalesNotService.stopCreditInfo(query); + } + + @Override + public ResultBean getFlowOperateTitle(SecondarySalesNotQuery query) { + return secondarySalesNotService.getFlowOperateTitle(query); + } + + @Override + public ResultBean delegate(SecondarySalesNotDelegateQuery delegateQuery) { + return secondarySalesNotService.delegate(delegateQuery); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotService.java new file mode 100644 index 0000000000..63c665e9d2 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysalesnotapply/SecondarySalesNotService.java @@ -0,0 +1,142 @@ +package com.yxt.anrui.terminal.biz.risk.secondarysalesnotapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApplyFeign; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.SecondarySalesAppVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.flowable.*; +import com.yxt.anrui.riskcenter.api.loansecondarysalesnotapply.FileUrl; +import com.yxt.anrui.riskcenter.api.loansecondarysalesnotapply.LoanSecondarySalesNotApplyDetailsVo; +import com.yxt.anrui.riskcenter.api.loansecondarysalesnotapply.LoanSecondarySalesNotApplyFeign; +import com.yxt.anrui.riskcenter.api.loansecondarysalesnotapply.flowable.*; +import com.yxt.anrui.terminal.api.base.common.CarModelVo; +import com.yxt.anrui.terminal.api.base.common.ItemEditTextInfoCommon; +import com.yxt.anrui.terminal.api.risk.secondarysales.SecondSalesInitVo; +import com.yxt.anrui.terminal.api.risk.secondarysales.SecondarySalesAppVos; +import com.yxt.anrui.terminal.api.risk.secondarysales.SecondarySalesCostAppVo; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesDelegateQuery; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesDto; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesQuery; +import com.yxt.anrui.terminal.api.risk.secondarysales.flowable.SecondarySalesTaskQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.SecondarySalesNotAppVos; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDelegateQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotDto; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotQuery; +import com.yxt.anrui.terminal.api.risk.secondarysalesnotapply.flowable.SecondarySalesNotTaskQuery; +import com.yxt.anrui.terminal.biz.base.common.CommonService; +import com.yxt.common.core.result.ResultBean; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/29 + **/ +@Service +public class SecondarySalesNotService { + + @Autowired + private LoanSecondarySalesNotApplyFeign loanSecondarySalesNotApplyFeign; + + public ResultBean agreeCreditInfo(SecondarySalesNotDto dto) { + ResultBean rb = ResultBean.fireFail(); + CompleteDto completeDto = new CompleteDto(); + BeanUtil.copyProperties(dto, completeDto); + ResultBean resultBean = loanSecondarySalesNotApplyFeign.complete(completeDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean rejectCreditInfo(SecondarySalesNotTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + TaskQuery taskQuery = new TaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanSecondarySalesNotApplyFeign.reject(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean recallCreditInfo(SecondarySalesNotTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + TaskQuery taskQuery = new TaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanSecondarySalesNotApplyFeign.revokeProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean stopCreditInfo(SecondarySalesNotTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + TaskQuery taskQuery = new TaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = loanSecondarySalesNotApplyFeign.breakProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitle(SecondarySalesNotQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + NodeQuery getNodeQuery = new NodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> getPreviousNodesForReject = loanSecondarySalesNotApplyFeign.getPreviousNodesForReject(getNodeQuery); + if (getPreviousNodesForReject.getSuccess()) { + getPreviousNodesForReject.getData().removeAll(Collections.singleton(null)); + data = getPreviousNodesForReject.getData().get(0).getName(); + } else { + return rb.setMsg(getPreviousNodesForReject.getMsg()); + } + } else if (next == 1) { + ResultBean> getNextNodesForSubmit = loanSecondarySalesNotApplyFeign.getNextNodesForSubmit(getNodeQuery); + if (getNextNodesForSubmit.getSuccess()) { + getNextNodesForSubmit.getData().removeAll(Collections.singleton(null)); + data = getNextNodesForSubmit.getData().get(0).getName(); + } else { + return rb.setMsg(getNextNodesForSubmit.getMsg()); + } + } else { + return rb.setMsg("参数错误:next"); + } + return rb.success().setData(data); + } + + public ResultBean delegate(SecondarySalesNotDelegateQuery delegateQuery) { + ResultBean rb = ResultBean.fireFail(); + DelegateQuery delegateQuery1 = new + DelegateQuery(); + BeanUtil.copyProperties(delegateQuery, delegateQuery1); + loanSecondarySalesNotApplyFeign.delegate(delegateQuery1); + return rb.success(); + } + + public ResultBean fetchDetailsBySid(String sid) { + ResultBean rb = ResultBean.fireFail(); + LoanSecondarySalesNotApplyDetailsVo data = loanSecondarySalesNotApplyFeign.fetchDetailsBySid(sid).getData(); + SecondarySalesNotAppVos secondarySalesNotAppVos = new SecondarySalesNotAppVos(); + BeanUtil.copyProperties(data,secondarySalesNotAppVos); + secondarySalesNotAppVos.setPublishInfo(data.getCreateDept() + "-" + data.getCreateByName()); + List filesList = data.getFilesList(); + List files = new ArrayList<>(); + for (FileUrl fileUrl : filesList) { + files.add(fileUrl.getUrl()); + } + secondarySalesNotAppVos.setFiles(files); + return rb.success().setData(secondarySalesNotAppVos); + } +}