
24 changed files with 1172 additions and 6 deletions
@ -0,0 +1,18 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply; |
|||
|
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/11/17 9:18 |
|||
*/ |
|||
@Data |
|||
public class LoanRepurchaseApplyFile { |
|||
private String filePath; |
|||
private String name; |
|||
private String size; |
|||
private String status; |
|||
private String uid; |
|||
private String url; |
|||
} |
@ -0,0 +1,110 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.app; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author Fan |
|||
* @description |
|||
* @date 2024/2/7 11:15 |
|||
*/ |
|||
@Data |
|||
public class AppRepurchaseDetailsVo { |
|||
|
|||
private String sid; |
|||
private String publishInfo; // 发起部门-发起人
|
|||
private String time; //申请日期
|
|||
private List<String> files = new ArrayList<>(); |
|||
private String taskId; |
|||
private String procInsId; |
|||
@ApiModelProperty("催收记录") |
|||
private String csjlSid; |
|||
@ApiModelProperty("客户名称") |
|||
private String custName; |
|||
@ApiModelProperty("资方合同号") |
|||
private String bankContractNo; |
|||
@ApiModelProperty("贷款人") |
|||
private String borrName; |
|||
@ApiModelProperty("车牌号") |
|||
private String vehMark; |
|||
@ApiModelProperty("车架号") |
|||
private String vinNo; |
|||
@ApiModelProperty("贷款合同号") |
|||
private String loanContractNo; |
|||
@ApiModelProperty("资方") |
|||
private String bankName; |
|||
//主体
|
|||
@ApiModelProperty("预计结清日期") |
|||
private String prepareDate; |
|||
@ApiModelProperty("公司当前逾期金额月还") |
|||
private String overdueMonthPrice; |
|||
@ApiModelProperty("公司当前未到期月还") |
|||
private String currentNotDuePrice; |
|||
@ApiModelProperty("公司未到期金额") |
|||
private String notDuePrice; |
|||
//资方结清费用
|
|||
@ApiModelProperty("资方逾期月还") |
|||
private String price; |
|||
@ApiModelProperty("资方当期未到期月还") |
|||
private String currentNotDuePriceBank; |
|||
@ApiModelProperty("资方未到期金额") |
|||
private String notDuePriceBank; |
|||
@ApiModelProperty("资方逾期利息") |
|||
private String bankInterest; |
|||
@ApiModelProperty("资方名义价") |
|||
private String bankNominalPrice; |
|||
@ApiModelProperty("资方合同违约金") |
|||
private String bankContractLiquidated; |
|||
@ApiModelProperty("资方其他应收") |
|||
private String bankOtherReceivable; |
|||
@ApiModelProperty("其他应收说明") |
|||
private String otherReceivableRemarks; |
|||
@ApiModelProperty("资方结清金额") |
|||
private String bankSettlePrice; |
|||
private List<String> bankfiles = new ArrayList<>(); //资方结清费用附件
|
|||
//公司结清费用
|
|||
@ApiModelProperty("贷款保证金") |
|||
private String loanDeposit; |
|||
@ApiModelProperty("公司逾期月还") |
|||
private String overduePrice; |
|||
@ApiModelProperty("垫资方逾期利息") |
|||
private String putBankInterest; |
|||
@ApiModelProperty("资金占用费") |
|||
private String funfCost; |
|||
@ApiModelProperty("资方逾期利息") |
|||
private String bankOverInterest; |
|||
@ApiModelProperty("公司当期未到期月还") |
|||
private String companyCurrentNotPrice; |
|||
@ApiModelProperty("资方未到期金额") |
|||
private String bankNotPrice; |
|||
@ApiModelProperty("贷款保证金扣罚金额") |
|||
private String deductionAmount; |
|||
@ApiModelProperty("名义价") |
|||
private String companyNominalPrice; |
|||
@ApiModelProperty("合同违约金") |
|||
private String contractLiquidated; |
|||
@ApiModelProperty("公司其他费用") |
|||
private String companyOtherPrice; |
|||
@ApiModelProperty("其他费用说明") |
|||
private String otherCostRemarks; |
|||
@ApiModelProperty("公司正常结清合计") |
|||
private String settleAll; |
|||
@ApiModelProperty("结清利润") |
|||
private String profit; |
|||
//回购情况
|
|||
@ApiModelProperty("回购金额") |
|||
private String amount; |
|||
@ApiModelProperty("回购原因") |
|||
private String buybacksReason; |
|||
@ApiModelProperty("资方收款账户") |
|||
private String bankReceivingAccount; |
|||
@ApiModelProperty("资方收款账号") |
|||
private String bankAccountNo; |
|||
private List<String> buyfiles = new ArrayList<>(); // 回购情况附件
|
|||
@ApiModelProperty("销售订单sid") |
|||
private String salesOrderSid; |
|||
|
|||
} |
@ -0,0 +1,41 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.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 RepurchaseCompleteDto 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<String, Object> formVariables; |
|||
|
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.flow; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/9/28 9:28 |
|||
*/ |
|||
@Data |
|||
public class RepurchaseDelegateQuery { |
|||
@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; |
|||
|
|||
|
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.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 RepurchaseGetNodeQuery implements Query { |
|||
private static final long serialVersionUID = -5674867230708197611L; |
|||
|
|||
@ApiModelProperty(value = "环节定义id") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "业务sid") |
|||
private String businessSid; |
|||
|
|||
@ApiModelProperty(value = "分支字段及业务字段") |
|||
private Map<String, Object> formVariables; |
|||
|
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.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 RepurchaseGetNodeVo implements Vo { |
|||
private static final long serialVersionUID = 8802774014747063504L; |
|||
@ApiModelProperty(value = "节点名称") |
|||
private String name; |
|||
@ApiModelProperty(value = "节点id") |
|||
private String id; |
|||
@ApiModelProperty(value = "审批组") |
|||
private List<String> candidateGroups; |
|||
@ApiModelProperty(value = "是否是最后环节") |
|||
private String endTask; |
|||
} |
@ -0,0 +1,56 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.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 RepurchaseTaskQuery 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<String, Object> values = new HashMap<>(); |
|||
@ApiModelProperty("审批人") |
|||
private String assignee; |
|||
@ApiModelProperty("候选人") |
|||
private List<String> candidateUsers = new ArrayList<>(); |
|||
@ApiModelProperty("审批组") |
|||
private List<String> candidateGroups = new ArrayList<>();*/ |
|||
} |
@ -0,0 +1,21 @@ |
|||
package com.yxt.anrui.riskcenter.api.loanrepurchaseapply.flow; |
|||
|
|||
import com.yxt.anrui.riskcenter.api.loanrepurchaseapply.LoanRepurchaseApplyDto; |
|||
import com.yxt.anrui.riskcenter.api.loansubletapply.LoanSubletApplyDto; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/6/27 13:38 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class SubmitRepurchaseDto extends LoanRepurchaseApplyDto { |
|||
private static final long serialVersionUID = 378585162071125756L; |
|||
@ApiModelProperty("流程实例id") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务id") |
|||
private String taskId; |
|||
|
|||
} |
@ -0,0 +1,112 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase; |
|||
|
|||
import com.yxt.anrui.terminal.api.base.common.CarModelVo; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.AppVinList; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/11/13 15:38 |
|||
*/ |
|||
@Data |
|||
public class RepurchaseDetailsVo implements Vo { |
|||
private String sid; |
|||
private String publishInfo; // 发起部门-发起人
|
|||
private String time; //申请日期
|
|||
private List<String> files = new ArrayList<>(); |
|||
private String taskId; |
|||
private String procInsId; |
|||
@ApiModelProperty("催收记录") |
|||
private String csjlSid; |
|||
@ApiModelProperty("客户名称") |
|||
private String custName; |
|||
@ApiModelProperty("资方合同号") |
|||
private String bankContractNo; |
|||
@ApiModelProperty("贷款人") |
|||
private String borrName; |
|||
@ApiModelProperty("车牌号") |
|||
private String vehMark; |
|||
@ApiModelProperty("车架号") |
|||
private String vinNo; |
|||
@ApiModelProperty("贷款合同号") |
|||
private String loanContractNo; |
|||
@ApiModelProperty("资方") |
|||
private String bankName; |
|||
//主体
|
|||
@ApiModelProperty("预计结清日期") |
|||
private String prepareDate; |
|||
@ApiModelProperty("公司当前逾期金额月还") |
|||
private String overdueMonthPrice; |
|||
@ApiModelProperty("公司当前未到期月还") |
|||
private String currentNotDuePrice; |
|||
@ApiModelProperty("公司未到期金额") |
|||
private String notDuePrice; |
|||
//资方结清费用
|
|||
@ApiModelProperty("资方逾期月还") |
|||
private String price; |
|||
@ApiModelProperty("资方当期未到期月还") |
|||
private String currentNotDuePriceBank; |
|||
@ApiModelProperty("资方未到期金额") |
|||
private String notDuePriceBank; |
|||
@ApiModelProperty("资方逾期利息") |
|||
private String bankInterest; |
|||
@ApiModelProperty("资方名义价") |
|||
private String bankNominalPrice; |
|||
@ApiModelProperty("资方合同违约金") |
|||
private String bankContractLiquidated; |
|||
@ApiModelProperty("资方其他应收") |
|||
private String bankOtherReceivable; |
|||
@ApiModelProperty("其他应收说明") |
|||
private String otherReceivableRemarks; |
|||
@ApiModelProperty("资方结清金额") |
|||
private String bankSettlePrice; |
|||
private List<String> bankfiles = new ArrayList<>(); //资方结清费用附件
|
|||
//公司结清费用
|
|||
@ApiModelProperty("贷款保证金") |
|||
private String loanDeposit; |
|||
@ApiModelProperty("公司逾期月还") |
|||
private String overduePrice; |
|||
@ApiModelProperty("垫资方逾期利息") |
|||
private String putBankInterest; |
|||
@ApiModelProperty("资金占用费") |
|||
private String funfCost; |
|||
@ApiModelProperty("资方逾期利息") |
|||
private String bankOverInterest; |
|||
@ApiModelProperty("公司当期未到期月还") |
|||
private String companyCurrentNotPrice; |
|||
@ApiModelProperty("资方未到期金额") |
|||
private String bankNotPrice; |
|||
@ApiModelProperty("贷款保证金扣罚金额") |
|||
private String deductionAmount; |
|||
@ApiModelProperty("名义价") |
|||
private String companyNominalPrice; |
|||
@ApiModelProperty("合同违约金") |
|||
private String contractLiquidated; |
|||
@ApiModelProperty("公司其他费用") |
|||
private String companyOtherPrice; |
|||
@ApiModelProperty("其他费用说明") |
|||
private String otherCostRemarks; |
|||
@ApiModelProperty("公司正常结清合计") |
|||
private String settleAll; |
|||
@ApiModelProperty("结清利润") |
|||
private String profit; |
|||
//回购情况
|
|||
@ApiModelProperty("回购金额") |
|||
private String amount; |
|||
@ApiModelProperty("回购原因") |
|||
private String buybacksReason; |
|||
@ApiModelProperty("资方收款账户") |
|||
private String bankReceivingAccount; |
|||
@ApiModelProperty("资方收款账号") |
|||
private String bankAccountNo; |
|||
private List<String> buyfiles = new ArrayList<>(); // 回购情况附件
|
|||
@ApiModelProperty("销售订单sid") |
|||
private String salesOrderSid; |
|||
private CarModelVo jrfa;//金融方案
|
|||
} |
@ -0,0 +1,71 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase; |
|||
|
|||
|
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.CompleteRedemptionDto; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.RedemptionFlowableQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.CompleteRepurchaseDto; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.RepurchaseFlowableQuery; |
|||
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-Repurchase", |
|||
name = "anrui-terminal", |
|||
path = "/riskcenter/v1/Repurchase", |
|||
fallback = RepurchaseFeignFallback.class) |
|||
public interface RepurchaseFeign { |
|||
|
|||
|
|||
@ApiOperation("详情") |
|||
@GetMapping("/appDetail/{sid}") |
|||
@ResponseBody |
|||
ResultBean<RepurchaseDetailsVo> detail(@PathVariable("sid") String sid); |
|||
|
|||
//-------------------------流程-----------------------------------------
|
|||
|
|||
@ApiOperation("办理") |
|||
@PutMapping("/agreeCreditInfo") |
|||
@ResponseBody |
|||
ResultBean agreeCreditInfo(@Valid @RequestBody CompleteRepurchaseDto dto); |
|||
|
|||
@ApiOperation("驳回") |
|||
@PutMapping("/rejectCreditInfo") |
|||
@ResponseBody |
|||
ResultBean rejectCreditInfo(@Valid @RequestBody AppRepurchaseTaskQuery query); |
|||
|
|||
@ApiOperation("撤回") |
|||
@PutMapping("/recallCreditInfo") |
|||
@ResponseBody |
|||
ResultBean recallCreditInfo(@Valid @RequestBody AppRepurchaseTaskQuery query); |
|||
|
|||
@ApiOperation("终止") |
|||
@PutMapping("/stopCreditInfo") |
|||
@ResponseBody |
|||
ResultBean stopCreditInfo(@Valid @RequestBody AppRepurchaseTaskQuery query); |
|||
|
|||
@ApiOperation("获取流程操作标题") |
|||
@GetMapping("/getFlowOperateTitle") |
|||
@ResponseBody |
|||
ResultBean<String> getFlowOperateTitle(@Valid @SpringQueryMap RepurchaseFlowableQuery query); |
|||
|
|||
@ApiOperation(value = "加签") |
|||
@PutMapping(value = "/delegate") |
|||
@ResponseBody |
|||
public ResultBean delegate(@RequestBody AppRepurchaseDelegateQuery delegateQuery); |
|||
} |
@ -0,0 +1,57 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase; |
|||
|
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.CompleteRedemptionDto; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.RedemptionFlowableQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.CompleteRepurchaseDto; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.RepurchaseFlowableQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: fzz |
|||
* @date: |
|||
**/ |
|||
@Component |
|||
public class RepurchaseFeignFallback implements RepurchaseFeign { |
|||
|
|||
|
|||
@Override |
|||
public ResultBean<RepurchaseDetailsVo> detail(String sid) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean agreeCreditInfo(CompleteRepurchaseDto dto) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean rejectCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean recallCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean stopCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<String> getFlowOperateTitle(RepurchaseFlowableQuery query) { |
|||
return null; |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delegate(AppRepurchaseDelegateQuery delegateQuery) { |
|||
return null; |
|||
} |
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase.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 AppRepurchaseDelegateQuery { |
|||
@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; |
|||
} |
@ -0,0 +1,46 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase.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 AppRepurchaseTaskQuery 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; |
|||
|
|||
} |
@ -0,0 +1,35 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase.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 CompleteRepurchaseDto 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; |
|||
} |
@ -0,0 +1,21 @@ |
|||
package com.yxt.anrui.terminal.api.risk.repurchase.flow; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
@Data |
|||
public class RepurchaseFlowableQuery 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; |
|||
|
|||
} |
@ -0,0 +1,68 @@ |
|||
package com.yxt.anrui.terminal.biz.risk.repurchase; |
|||
|
|||
|
|||
import com.yxt.anrui.terminal.api.risk.redemption.RedemptionDetailsVo; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.RedemptionFeign; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.CompleteRedemptionDto; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.RedemptionFlowableQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.RepurchaseDetailsVo; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.RepurchaseFeign; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.CompleteRepurchaseDto; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.RepurchaseFlowableQuery; |
|||
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: fzz |
|||
* @date: |
|||
**/ |
|||
@Controller |
|||
@RequestMapping("/riskcenter/v1/Repurchase") |
|||
public class RepurchaseRest implements RepurchaseFeign { |
|||
|
|||
@Autowired |
|||
private RepurchaseService repurchaseService; |
|||
|
|||
|
|||
@Override |
|||
public ResultBean<RepurchaseDetailsVo> detail(String sid) { |
|||
return repurchaseService.detail(sid); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean agreeCreditInfo(CompleteRepurchaseDto dto) { |
|||
return repurchaseService.agreeCreditInfo(dto); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean rejectCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return repurchaseService.rejectCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean recallCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return repurchaseService.recallCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean stopCreditInfo(AppRepurchaseTaskQuery query) { |
|||
return repurchaseService.stopCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<String> getFlowOperateTitle(RepurchaseFlowableQuery query) { |
|||
return repurchaseService.getFlowOperateTitle(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delegate(AppRepurchaseDelegateQuery delegateQuery) { |
|||
return repurchaseService.delegate(delegateQuery); |
|||
} |
|||
} |
@ -0,0 +1,157 @@ |
|||
package com.yxt.anrui.terminal.biz.risk.repurchase; |
|||
|
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; |
|||
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.loanredemptionapply.LoanRedemptionApplyFeign; |
|||
import com.yxt.anrui.riskcenter.api.loanredemptionapply.app.AppRedemptionDetailsVo; |
|||
import com.yxt.anrui.riskcenter.api.loanredemptionapply.flow.*; |
|||
import com.yxt.anrui.riskcenter.api.loanrepurchaseapply.LoanRepurchaseApplyFeign; |
|||
import com.yxt.anrui.riskcenter.api.loanrepurchaseapply.app.AppRepurchaseDetailsVo; |
|||
import com.yxt.anrui.riskcenter.api.loanrepurchaseapply.flow.*; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.RedemptionDetailsVo; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.AppRedemptionTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.CompleteRedemptionDto; |
|||
import com.yxt.anrui.terminal.api.risk.redemption.flow.RedemptionFlowableQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.RepurchaseDetailsVo; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.AppRepurchaseTaskQuery; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.CompleteRepurchaseDto; |
|||
import com.yxt.anrui.terminal.api.risk.repurchase.flow.RepurchaseFlowableQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.Collections; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: fzz |
|||
* @date: |
|||
**/ |
|||
@Service |
|||
public class RepurchaseService { |
|||
|
|||
@Autowired |
|||
private SysUserFeign sysUserFeign; |
|||
@Autowired |
|||
private SysStaffOrgFeign sysStaffOrgFeign; |
|||
@Autowired |
|||
private LoanRepurchaseApplyFeign loanRepurchaseApplyFeign; |
|||
|
|||
public ResultBean<RepurchaseDetailsVo> detail(String sid) { |
|||
ResultBean<RepurchaseDetailsVo> rb = ResultBean.fireFail(); |
|||
RepurchaseDetailsVo vo = new RepurchaseDetailsVo(); |
|||
AppRepurchaseDetailsVo data = loanRepurchaseApplyFeign.appDetail(sid).getData(); |
|||
if (null != data) { |
|||
BeanUtil.copyProperties(data, vo); |
|||
} |
|||
return rb.success().setData(vo); |
|||
} |
|||
|
|||
|
|||
public ResultBean agreeCreditInfo(CompleteRepurchaseDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
//根据用户sid获取staffSid
|
|||
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); |
|||
if (!userVoResultBean.getSuccess()) { |
|||
return rb.setMsg(userVoResultBean.getMsg()); |
|||
} |
|||
//根据staffSid获取用户的组织全路径
|
|||
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); |
|||
if (!staffOrgResultBean.getSuccess()) { |
|||
return rb.setMsg(staffOrgResultBean.getMsg()); |
|||
} |
|||
//用户的组织全路径
|
|||
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); |
|||
RepurchaseCompleteDto completeDto = new |
|||
RepurchaseCompleteDto(); |
|||
BeanUtil.copyProperties(dto, completeDto); |
|||
completeDto.setOrgSidPath(orgSidPath); |
|||
ResultBean resultBean = loanRepurchaseApplyFeign.complete(completeDto); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean rejectCreditInfo(AppRepurchaseTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
RepurchaseTaskQuery taskQuery = new |
|||
RepurchaseTaskQuery(); |
|||
BeanUtil.copyProperties(query, taskQuery); |
|||
ResultBean resultBean = loanRepurchaseApplyFeign.taskReject(taskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean recallCreditInfo(AppRepurchaseTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
RepurchaseTaskQuery taskQuery = new |
|||
RepurchaseTaskQuery(); |
|||
BeanUtil.copyProperties(query, taskQuery); |
|||
ResultBean resultBean = loanRepurchaseApplyFeign.revokeProcess(taskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean stopCreditInfo(AppRepurchaseTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
RepurchaseTaskQuery taskQuery = new |
|||
RepurchaseTaskQuery(); |
|||
BeanUtil.copyProperties(query, taskQuery); |
|||
ResultBean resultBean = loanRepurchaseApplyFeign.breakProcess(taskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean<String> getFlowOperateTitle(RepurchaseFlowableQuery query) { |
|||
ResultBean<String> rb = ResultBean.fireFail(); |
|||
//0 上一环节 1下一环节
|
|||
int next = query.getNext(); |
|||
RepurchaseGetNodeQuery getNodeQuery = new |
|||
RepurchaseGetNodeQuery(); |
|||
BeanUtil.copyProperties(query, getNodeQuery); |
|||
String data = ""; |
|||
if (next == 0) { |
|||
ResultBean<List<RepurchaseGetNodeVo>> getPreviousNodesForReject = loanRepurchaseApplyFeign.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<List<RepurchaseGetNodeVo>> getNextNodesForSubmit = loanRepurchaseApplyFeign.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(AppRepurchaseDelegateQuery delegateQuery) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
RepurchaseDelegateQuery delegateQuery1 = new |
|||
RepurchaseDelegateQuery(); |
|||
BeanUtil.copyProperties(delegateQuery, delegateQuery1); |
|||
ResultBean delegate = loanRepurchaseApplyFeign.delegate(delegateQuery1); |
|||
return rb.success(); |
|||
} |
|||
} |
Loading…
Reference in new issue