
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