Browse Source

移动端车辆交回事前报备

master
God 1 year ago
parent
commit
2970c4c0f7
  1. 107
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/AppRestoreReportApplyDetailsVo.java
  2. 67
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/RestoreReportFeign.java
  3. 52
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/RestoreReportFeignFallback.java
  4. 25
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/AppRestoreReportDelegateQuery.java
  5. 46
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/AppRestoreReportTaskQuery.java
  6. 35
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/CompleteRestoreReportDto.java
  7. 21
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/RestoreReportFlowableQuery.java
  8. 87
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/restorereport/RestoreReportRest.java
  9. 221
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/restorereport/RestoreReportService.java

107
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/AppRestoreReportApplyDetailsVo.java

@ -0,0 +1,107 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.risk.restorereport;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-riskcenter(车辆交回事前报备申请) <br/>
* File: LoanRestoreReportApplyVo.java <br/>
* Class: com.yxt.anrui.riskcenter.api.loanrestorereportapply.LoanRestoreReportApplyVo <br/>
* Description: 车辆交回事前报备申请 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-01-08 11:43:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车辆交回事前报备申请 视图数据详情", description = "车辆交回事前报备申请 视图数据详情")
public class AppRestoreReportApplyDetailsVo implements Vo {
@ApiModelProperty("发起部门-发起人员")
private String publishInfo;
@ApiModelProperty("申请日期")
private String time;
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("车牌号")
private String carNum; // 车牌号
@ApiModelProperty("客户名称")
private String custName; // 客户名称
@ApiModelProperty("贷款人")
private String borrName; // 贷款人
@ApiModelProperty("贷款合同编号")
private String loanContractNo; // 贷款合同编号
@ApiModelProperty("资方")
private String bankName; // 资方
@ApiModelProperty("资方合同编号")
private String bankContractNo; // 资方合同编号
@ApiModelProperty("已还金额")
private String alRepaidMoney; // 已还金额
@ApiModelProperty("当前逾期金额/其中资金占用费")
private String yqzjzyMoney; // 当前逾期金额
@ApiModelProperty("未到期金额")
private String unexpiredMoney; // 未到期金额
@ApiModelProperty("总期数/当前期数")
private String qsCount; // 总期数
@ApiModelProperty("已还金额换算期数")
private String alRepaidMoneyConPeriod; // 已还金额换算期数
@ApiModelProperty("逾期金额换算期数")
private String beOverdueMoneyAndPeriod; // 逾期金额换算期数
@ApiModelProperty("交回方式value")
private String restoreTypeValue; // 交回方式value
@ApiModelProperty("预交回日期")
private String restoreDate; // 预交回日期
@ApiModelProperty("经办人姓名")
private String operatorName; // 经办人姓名
@ApiModelProperty("涉及相关费用")
private String involveCorrMoney; // 涉及相关费用
@ApiModelProperty("费用说明")
private String costRemarks; // 费用说明
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("催收记录sid")
private String csjlSid;
@ApiModelProperty("金融方案")
private String jrfa;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("附件路径")
private List<String> files = new ArrayList<>();
}

67
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/RestoreReportFeign.java

@ -0,0 +1,67 @@
package com.yxt.anrui.terminal.api.risk.restorereport;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportDelegateQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportTaskQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.CompleteRestoreReportDto;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.RestoreReportFlowableQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
/**
* @description:
* @author: fzz
* @date: 2023/8/8
**/
@Api(tags = "车辆交回事前报备")
@FeignClient(
contextId = "terminal-RestoreReport",
name = "anrui-terminal",
path = "/riskcenter/v1/restoreReport",
fallback = RestoreReportFeignFallback.class)
public interface RestoreReportFeign {
@ApiOperation("详情")
@GetMapping("/restoreReportDetail/{sid}")
@ResponseBody
ResultBean<AppRestoreReportApplyDetailsVo> restoreReportDetail(@PathVariable("sid") String sid);
//-------------------------流程-----------------------------------------
@ApiOperation("办理")
@PutMapping("/agreeCreditInfo")
@ResponseBody
ResultBean agreeCreditInfo(@Valid @RequestBody CompleteRestoreReportDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectCreditInfo")
@ResponseBody
ResultBean rejectCreditInfo(@Valid @RequestBody AppRestoreReportTaskQuery query);
@ApiOperation("撤回")
@PutMapping("/recallCreditInfo")
@ResponseBody
ResultBean recallCreditInfo(@Valid @RequestBody AppRestoreReportTaskQuery query);
@ApiOperation("终止")
@PutMapping("/stopCreditInfo")
@ResponseBody
ResultBean stopCreditInfo(@Valid @RequestBody AppRestoreReportTaskQuery query);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@Valid @SpringQueryMap RestoreReportFlowableQuery query);
@ApiOperation(value = "加签")
@PutMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody AppRestoreReportDelegateQuery delegateQuery);
}

52
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/RestoreReportFeignFallback.java

@ -0,0 +1,52 @@
package com.yxt.anrui.terminal.api.risk.restorereport;
import com.yxt.anrui.terminal.api.risk.policyrecordapply.AppFinPolicyApplyInitVo;
import com.yxt.anrui.terminal.api.risk.policyrecordapply.PolicyRecordApplyFeign;
import com.yxt.anrui.terminal.api.risk.policyrecordapply.flow.CompletePolicyDto;
import com.yxt.anrui.terminal.api.risk.policyrecordapply.flow.PolicyFlowableQuery;
import com.yxt.anrui.terminal.api.risk.policyrecordapply.flow.PolicyTaskQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Component;
/**
* @Author dimengzhe
* @Date 2023/3/21 15:19
* @Description
*/
@Component
public class RestoreReportFeignFallback implements PolicyRecordApplyFeign {
@Override
public ResultBean<AppFinPolicyApplyInitVo> fetchDetailsBySid(String sid) {
return null;
}
@Override
public ResultBean agreePolicyApplyInfo(CompletePolicyDto dto) {
return null;
}
@Override
public ResultBean agreeCompanyToDivisionOperate(CompletePolicyDto dto) {
return null;
}
@Override
public ResultBean rejectPolicyApplyInfo(PolicyTaskQuery query) {
return null;
}
@Override
public ResultBean recallPolicyApplyInfo(PolicyTaskQuery query) {
return null;
}
@Override
public ResultBean stopPolicyApplyInfo(PolicyTaskQuery query) {
return null;
}
@Override
public ResultBean<String> getFlowOperateTitle(PolicyFlowableQuery query) {
return null;
}
}

25
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/AppRestoreReportDelegateQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.api.risk.restorereport.flow;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/9/28 10:16
*/
@Data
public class AppRestoreReportDelegateQuery {
@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;
}

46
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/AppRestoreReportTaskQuery.java

@ -0,0 +1,46 @@
package com.yxt.anrui.terminal.api.risk.restorereport.flow;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @author Administrator
* @description
* @date 2023/10/17 9:14
*/
@Data
public class AppRestoreReportTaskQuery implements Query {
/**
* 终止驳回撤回
*/
@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;
}

35
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/CompleteRestoreReportDto.java

@ -0,0 +1,35 @@
package com.yxt.anrui.terminal.api.risk.restorereport.flow;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @author Administrator
* @description
* @date 2023/10/17 9:13
*/
@Data
public class CompleteRestoreReportDto implements Dto {
@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;
}

21
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/restorereport/flow/RestoreReportFlowableQuery.java

@ -0,0 +1,21 @@
package com.yxt.anrui.terminal.api.risk.restorereport.flow;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
@Data
public class RestoreReportFlowableQuery implements Query {
private static final long serialVersionUID = -5879668616710833830L;
@ApiModelProperty(value = "节点key")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
}

87
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/restorereport/RestoreReportRest.java

@ -0,0 +1,87 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.risk.restorereport;
import com.yxt.anrui.terminal.api.risk.becollection.*;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.AppBeCollectionDelegateQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.BeCollectionQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.BeCollectionTaskQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.CompleteBeCollectionDto;
import com.yxt.anrui.terminal.api.risk.restorereport.AppRestoreReportApplyDetailsVo;
import com.yxt.anrui.terminal.api.risk.restorereport.RestoreReportFeign;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportDelegateQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportTaskQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.CompleteRestoreReportDto;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.RestoreReportFlowableQuery;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController("车辆交回事前报备")
@RequestMapping("riskcenter/v1/restoreReport")
public class RestoreReportRest implements RestoreReportFeign {
@Autowired
private RestoreReportService restoreReportService;
@Override
public ResultBean<AppRestoreReportApplyDetailsVo> restoreReportDetail(String sid) {
return restoreReportService.restoreReportDetail(sid);
}
@Override
public ResultBean agreeCreditInfo(CompleteRestoreReportDto dto) {
return restoreReportService.agreeCreditInfo(dto);
}
@Override
public ResultBean rejectCreditInfo(AppRestoreReportTaskQuery query) {
return restoreReportService.rejectCreditInfo(query);
}
@Override
public ResultBean recallCreditInfo(AppRestoreReportTaskQuery query) {
return restoreReportService.recallCreditInfo(query);
}
@Override
public ResultBean stopCreditInfo(AppRestoreReportTaskQuery query) {
return restoreReportService.stopCreditInfo(query);
}
@Override
public ResultBean<String> getFlowOperateTitle(RestoreReportFlowableQuery query) {
return restoreReportService.getFlowOperateTitle(query);
}
@Override
public ResultBean delegate(AppRestoreReportDelegateQuery delegateQuery) {
return restoreReportService.delegate(delegateQuery);
}
}

221
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/restorereport/RestoreReportService.java

@ -0,0 +1,221 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.risk.restorereport;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.ReaRepaymentDto;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDetailsVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.riskcenter.api.loanbecollectionapply.LoanBeCollectionApplyDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbecollectionapply.LoanBeCollectionApplyFeign;
import com.yxt.anrui.riskcenter.api.loanbecollectionapply.LoanBeCollectionFileVo;
import com.yxt.anrui.riskcenter.api.loanbecollectionapply.flowable.*;
import com.yxt.anrui.riskcenter.api.loanbecollectionrecord.*;
import com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehDbrDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehFeign;
import com.yxt.anrui.riskcenter.api.loanbecollectionveh.LoanBeCollectionVehFile;
import com.yxt.anrui.riskcenter.api.loanbeoverdueveh.LoanBeOverdueVehFegin;
import com.yxt.anrui.riskcenter.api.loanbeoverdueveh.LoanBeOverdueVehQuery;
import com.yxt.anrui.riskcenter.api.loanbeoverdueveh.LoanBeOverdueVehVo;
import com.yxt.anrui.riskcenter.api.loanbeoverdueveh.ReaRepaymentVo;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.LoanBePadsincereApplyDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.LoanBePadsincereApplyFeign;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.LoanBePadsincereFile;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.flowable.*;
import com.yxt.anrui.riskcenter.api.loanbepadsincereveh.LoanBePadsincereVehDetailsVo;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetailsFeign;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.MonRepayDetails;
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.MonRepayPeriodDetails;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.LoanRestoreReportApplyDetailsVo;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.LoanRestoreReportApplyFeign;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.LoanRestoreReportFileVo;
import com.yxt.anrui.riskcenter.api.loanrestorereportapply.flowable.*;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.terminal.api.base.common.CarModelVo;
import com.yxt.anrui.terminal.api.risk.becollection.*;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.AppBeCollectionDelegateQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.BeCollectionQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.BeCollectionTaskQuery;
import com.yxt.anrui.terminal.api.risk.becollection.flowable.CompleteBeCollectionDto;
import com.yxt.anrui.terminal.api.risk.loanhomevisitinvestigate.AppFinanceForm;
import com.yxt.anrui.terminal.api.risk.loanhomevisitinvestigate.AppLoanHomeVisitVo;
import com.yxt.anrui.terminal.api.risk.restorereport.AppRestoreReportApplyDetailsVo;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportDelegateQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.AppRestoreReportTaskQuery;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.CompleteRestoreReportDto;
import com.yxt.anrui.terminal.api.risk.restorereport.flow.RestoreReportFlowableQuery;
import com.yxt.anrui.terminal.biz.base.common.CommonService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@Service
public class RestoreReportService {
@Autowired
private LoanRestoreReportApplyFeign loanRestoreReportApplyFeign;
@Autowired
private LoanBePadsincereApplyFeign loanBePadsincereApplyFeign;
@Autowired
private LoanBeOverdueVehFegin loanBeOverdueVehFegin;
@Autowired
private LoanSolutionsFeign loanSolutionsFeign;
@Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
@Autowired
private LoanBeCollectionRecordFeign loanBeCollectionRecordFeign;
@Autowired
private LoanBeCollectionVehFeign loanBeCollectionVehFeign;
@Autowired
private LoanRepaymentPlanDetailsFeign loanRepaymentPlanDetailsFeign;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private CommonService commonService;
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
public ResultBean agreeCreditInfo(CompleteRestoreReportDto dto) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportCompleteDto loanRestoreReportCompleteDto = new LoanRestoreReportCompleteDto();
BeanUtil.copyProperties(dto, loanRestoreReportCompleteDto);
loanRestoreReportApplyFeign.complete(loanRestoreReportCompleteDto);
return rb.success();
}
public ResultBean rejectCreditInfo(AppRestoreReportTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportTaskQuery taskQuery = new LoanRestoreReportTaskQuery();
BeanUtil.copyProperties(query, taskQuery);
ResultBean resultBean = loanRestoreReportApplyFeign.reject(taskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean recallCreditInfo(AppRestoreReportTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportTaskQuery taskQuery = new LoanRestoreReportTaskQuery();
BeanUtil.copyProperties(query, taskQuery);
ResultBean resultBean = loanRestoreReportApplyFeign.revokeProcess(taskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean stopCreditInfo(AppRestoreReportTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportTaskQuery taskQuery = new LoanRestoreReportTaskQuery();
BeanUtil.copyProperties(query, taskQuery);
ResultBean resultBean = loanRestoreReportApplyFeign.breakProcess(taskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<String> getFlowOperateTitle(RestoreReportFlowableQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
LoanRestoreReportNodeQuery getNodeQuery = new LoanRestoreReportNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<LoanRestoreReportNodeVo>> previousNodesForReject = loanRestoreReportApplyFeign.getPreviousNodesForReject(getNodeQuery);
if (previousNodesForReject.getSuccess()) {
previousNodesForReject.getData().removeAll(Collections.singleton(null));
data = previousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(previousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<LoanRestoreReportNodeVo>> nextNodesForSubmit = loanRestoreReportApplyFeign.getNextNodesForSubmit(getNodeQuery);
if (nextNodesForSubmit.getSuccess()) {
nextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = nextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(nextNodesForSubmit.getMsg());
}
} else {
return rb.setMsg("参数错误:next");
}
return rb.success().setData(data);
}
public ResultBean delegate(AppRestoreReportDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportDelegateQuery delegateQuery1 = new
LoanRestoreReportDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
loanRestoreReportApplyFeign.delegate(delegateQuery1);
return rb.success();
}
public ResultBean<AppRestoreReportApplyDetailsVo> restoreReportDetail(String sid) {
ResultBean rb = ResultBean.fireFail();
LoanRestoreReportApplyDetailsVo loanRestoreReportApplyDetailsVo = loanRestoreReportApplyFeign.fetchDetailsBySid(sid).getData();
AppRestoreReportApplyDetailsVo appRestoreReportApplyDetailsVo = new AppRestoreReportApplyDetailsVo();
BeanUtil.copyProperties(loanRestoreReportApplyDetailsVo,appRestoreReportApplyDetailsVo,"files");
appRestoreReportApplyDetailsVo.setPublishInfo(loanRestoreReportApplyDetailsVo.getDeptName() + "-" + loanRestoreReportApplyDetailsVo.getCreateByName());
appRestoreReportApplyDetailsVo.setTime(loanRestoreReportApplyDetailsVo.getCreateTime());
appRestoreReportApplyDetailsVo.setYqzjzyMoney(loanRestoreReportApplyDetailsVo.getCurrentBeMoney() + "/" + loanRestoreReportApplyDetailsVo.getWheFundOccMoney());
appRestoreReportApplyDetailsVo.setQsCount(loanRestoreReportApplyDetailsVo.getNper() + "/" + loanRestoreReportApplyDetailsVo.getCurrentPeriod());
List<LoanRestoreReportFileVo> files = loanRestoreReportApplyDetailsVo.getFiles();
List<String> appFiles = new ArrayList<>();
if (files != null && files.size() > 0){
for (LoanRestoreReportFileVo file : files) {
appFiles.add(file.getUrl());
}
}
appRestoreReportApplyDetailsVo.setFiles(appFiles);
return rb.success().setData(appRestoreReportApplyDetailsVo);
}
}
Loading…
Cancel
Save