diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java index e74f520dd0..5890160aac 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java @@ -2218,9 +2218,7 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService gdLetter = query.getGdLetter(); - if (gdLetter.isEmpty()) { - return rb.setMsg("请上传股东会对外担保协议"); - } else { + if (!gdLetter.isEmpty()) { String gdLetterImages = String.join(",", gdLetter).replaceAll(fileUploadComponent.getUrlPrefix(), ""); busArrearsCarryVehicleApply.setGdLetterFile(gdLetterImages); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeign.java index efa744735d..3e4db48df6 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeign.java @@ -1,9 +1,6 @@ package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsTakeCarQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.CompleteArrearsTakeCarDto; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.SubmitArrearsTakeCarDto; +import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -94,6 +91,11 @@ public interface AppBusArrearsCarryVehicleApplyFeign { @ResponseBody ResultBean agreeArrearsApplyInfo(@RequestBody CompleteArrearsTakeCarDto dto); + @ApiOperation("销售经理、销售内勤办理(同意)") + @PutMapping("/agreeArrearsApplyInfoBy") + @ResponseBody + ResultBean agreeArrearsApplyInfoBy(@RequestBody AppCompleteQuery query); + @ApiOperation("办理 跨机构") @PutMapping("/initiatorToAnswerInfo") @ResponseBody @@ -118,4 +120,9 @@ public interface AppBusArrearsCarryVehicleApplyFeign { @GetMapping("/getFlowOperateTitle") @ResponseBody ResultBean getFlowOperateTitle(@SpringQueryMap AdvanceArrearsQuery query); + + @ApiOperation("获取下一环节") + @GetMapping("/getFlowOperateTitleBy") + @ResponseBody + ResultBean getFlowOperateTitleBy(@SpringQueryMap ArrearsQuery query); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeignFallback.java index 89f7b90a88..840419f38c 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeignFallback.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/AppBusArrearsCarryVehicleApplyFeignFallback.java @@ -1,9 +1,7 @@ package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsTakeCarQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.CompleteArrearsTakeCarDto; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.SubmitArrearsTakeCarDto; +import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.*; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractFlowListVo; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -77,6 +75,11 @@ public class AppBusArrearsCarryVehicleApplyFeignFallback implements AppBusArrear return null; } + @Override + public ResultBean agreeArrearsApplyInfoBy(AppCompleteQuery query) { + return null; + } + @Override public ResultBean initiatorToAnswer(CompleteArrearsTakeCarDto dto) { return null; @@ -101,4 +104,9 @@ public class AppBusArrearsCarryVehicleApplyFeignFallback implements AppBusArrear public ResultBean getFlowOperateTitle(AdvanceArrearsQuery query) { return null; } + + @Override + public ResultBean getFlowOperateTitleBy(ArrearsQuery query) { + return null; + } } \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/AppCompleteQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/AppCompleteQuery.java new file mode 100644 index 0000000000..32c9de7bcc --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/AppCompleteQuery.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class AppCompleteQuery extends CompleteArrearsTakeCarDto { + + @ApiModelProperty("车辆买卖合同") + private List carContract = new ArrayList<>(); + @ApiModelProperty("欠款提车担保承诺书") + private List guaranteeLetter = new ArrayList<>(); + @ApiModelProperty("股东会对外担保决议") + private List gdLetter = new ArrayList<>(); + @ApiModelProperty("总经理担保书") + private List zjlLetter = new ArrayList<>(); + @ApiModelProperty("其他附件") + private List fileList = new ArrayList<>(); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearVo.java new file mode 100644 index 0000000000..982e30f236 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearVo.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class ArrearVo { + + @ApiModelProperty("标题:如身份证") + private String title; + // 类型 1(上传图片) + private int type; + // 是否可空, 可不填 true + private boolean nullAble; + // 保存字段名称 + private String key; + // 保存图片使用 type=1 + private List filesPath = new ArrayList<>(); + // 保存文本使用 + private String text; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsQuery.java new file mode 100644 index 0000000000..c9628859ad --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsQuery.java @@ -0,0 +1,18 @@ +package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class ArrearsQuery { + + @ApiModelProperty(value = "节点key") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + @NotNull(message = "参数错误:next") + private Integer next = 1; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsVo.java new file mode 100644 index 0000000000..6ffc2940ac --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/arrearsTakeCar/flowable/ArrearsVo.java @@ -0,0 +1,13 @@ +package com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class ArrearsVo { + + private String title; + private List list = new ArrayList<>(); +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyRest.java index 0169678cca..077f8ff0bd 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyRest.java @@ -1,14 +1,7 @@ package com.yxt.anrui.terminal.biz.arrearsTakeCar; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.*; import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.*; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.ArrearsCarryVehicleQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsTakeCarQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.CompleteArrearsTakeCarDto; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.SubmitArrearsTakeCarDto; -import com.yxt.common.base.utils.PagerUtil; +import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -94,6 +87,11 @@ public class AppBusArrearsCarryVehicleApplyRest implements AppBusArrearsCarryVeh return appBusArrearsCarryVehicleApplyService.agreeArrearsApplyInfo(dto); } + @Override + public ResultBean agreeArrearsApplyInfoBy(AppCompleteQuery query) { + return appBusArrearsCarryVehicleApplyService.agreeArrearsApplyInfoBy(query); + } + @Override public ResultBean initiatorToAnswer(CompleteArrearsTakeCarDto dto) { return appBusArrearsCarryVehicleApplyService.initiatorToAnswer(dto); @@ -118,4 +116,9 @@ public class AppBusArrearsCarryVehicleApplyRest implements AppBusArrearsCarryVeh public ResultBean getFlowOperateTitle(AdvanceArrearsQuery query) { return appBusArrearsCarryVehicleApplyService.getFlowOperateTitle(query); } + + @Override + public ResultBean getFlowOperateTitleBy(ArrearsQuery query) { + return appBusArrearsCarryVehicleApplyService.getFlowOperateTitleBy(query); + } } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java index 090f449f88..410e148db7 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java @@ -14,10 +14,7 @@ import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.ArrearsCarryVehicleQuery; import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.*; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.AdvanceArrearsTakeCarQuery; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.CompleteArrearsTakeCarDto; -import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.SubmitArrearsTakeCarDto; +import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.flowable.*; import com.yxt.anrui.terminal.config.CoverUtils; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -95,7 +92,7 @@ public class AppBusArrearsCarryVehicleApplyService { AppArrearsCarryDto appArrearsCarryDto = new AppArrearsCarryDto(); BeanUtil.copyProperties(dto, appArrearsCarryDto); ResultBean resultBean = busArrearsCarryVehicleApplyFeign.saveArrearsApply(appArrearsCarryDto); - if(!resultBean.getSuccess()){ + if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); } return rb.success(); @@ -233,7 +230,7 @@ public class AppBusArrearsCarryVehicleApplyService { public ResultBean> getCanUseCars(CarsQuery query) { ResultBean> rb = ResultBean.fireFail(); QCarQuery qCarQuery = new QCarQuery(); - BeanUtil.copyProperties(query,qCarQuery); + BeanUtil.copyProperties(query, qCarQuery); ResultBean> resultBean = busSalesOrderVehicleFeign.getCanUseCars(qCarQuery); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); @@ -253,10 +250,101 @@ public class AppBusArrearsCarryVehicleApplyService { ResultBean rb = ResultBean.fireFail(); AdvanceArrearsInfoVo advanceArrearsInfoVo = new AdvanceArrearsInfoVo(); ResultBean resultBean = busArrearsCarryVehicleApplyFeign.details(sid); - if(!resultBean.getSuccess()){ + if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); } - BeanUtil.copyProperties(resultBean.getData(),advanceArrearsInfoVo); + BeanUtil.copyProperties(resultBean.getData(), advanceArrearsInfoVo); return rb.success().setData(advanceArrearsInfoVo); } + + public ResultBean agreeArrearsApplyInfoBy(AppCompleteQuery query) { + ResultBean rb = ResultBean.fireFail(); + CompleteByQuery completeByQuery = new CompleteByQuery(); + BeanUtil.copyProperties(query, completeByQuery); + ResultBean resultBean = busArrearsCarryVehicleApplyFeign.completeBy(completeByQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success(); + } + + public ResultBean getFlowOperateTitleBy(ArrearsQuery query) { + ResultBean rb = ResultBean.fireFail(); + ArrearsVo arrearsVo = new ArrearsVo(); + //0 上一环节 1下一环节 + int next = query.getNext(); + GetNodeQuery getNodeQuery = new GetNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> getPreviousNodesForReject = busArrearsCarryVehicleApplyFeign.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 = busArrearsCarryVehicleApplyFeign.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"); + } + arrearsVo.setTitle(data); + ResultBean details = details(query.getBusinessSid()); + List list = new ArrayList<>(); + AdvanceArrearsInfoVo advanceArrearsInfoVo = details.getData(); + if (advanceArrearsInfoVo != null) { + ArrearVo arrearVo = new ArrearVo(); + arrearVo.setTitle("车辆买卖合同(欠款)"); + arrearVo.setType(1); + arrearVo.setKey("carContract"); + arrearVo.setNullAble(false); + List carContract = advanceArrearsInfoVo.getCarContract(); + arrearVo.setFilesPath(carContract); + list.add(arrearVo); + //================================================= + arrearVo = new ArrearVo(); + arrearVo.setTitle("欠款提车担保承诺书"); + arrearVo.setType(1); + arrearVo.setKey("guaranteeLetter"); + arrearVo.setNullAble(false); + List guaranteeLetter = advanceArrearsInfoVo.getGuaranteeLetter(); + arrearVo.setFilesPath(guaranteeLetter); + list.add(arrearVo); + //================================================= + arrearVo = new ArrearVo(); + arrearVo.setTitle("股东会对外担保决议"); + arrearVo.setType(1); + arrearVo.setKey("gdLetter"); + arrearVo.setNullAble(true); + List gdLetter = advanceArrearsInfoVo.getGdLetter(); + arrearVo.setFilesPath(gdLetter); + list.add(arrearVo); + //================================================= + arrearVo = new ArrearVo(); + arrearVo.setTitle("总经理担保书"); + arrearVo.setType(1); + arrearVo.setKey("zjlLetter"); + arrearVo.setNullAble(false); + List zjlLetter = advanceArrearsInfoVo.getZjlLetter(); + arrearVo.setFilesPath(zjlLetter); + list.add(arrearVo); + arrearVo = new ArrearVo(); + arrearVo.setTitle("其他附件"); + arrearVo.setType(1); + arrearVo.setKey("fileList"); + arrearVo.setNullAble(false); + List fileList = advanceArrearsInfoVo.getFileList(); + arrearVo.setFilesPath(fileList); + list.add(arrearVo); + arrearsVo.setList(list); + } + return rb.success().setData(arrearsVo); + } } \ No newline at end of file