diff --git a/anrui-riskcenter-ui/src/views/alsotransfer/alsotransfer.vue b/anrui-riskcenter-ui/src/views/alsotransfer/alsotransfer.vue index 2568ffdb62..d87070969f 100644 --- a/anrui-riskcenter-ui/src/views/alsotransfer/alsotransfer.vue +++ b/anrui-riskcenter-ui/src/views/alsotransfer/alsotransfer.vue @@ -67,8 +67,8 @@ - - + +
diff --git a/anrui-riskcenter-ui/src/views/returntostorage/returntostorage.vue b/anrui-riskcenter-ui/src/views/returntostorage/returntostorage.vue index 7663e267bb..4421841cd8 100644 --- a/anrui-riskcenter-ui/src/views/returntostorage/returntostorage.vue +++ b/anrui-riskcenter-ui/src/views/returntostorage/returntostorage.vue @@ -350,7 +350,7 @@ export default { this.centerDialogVisible = true var params = { deployId: row.procDefId, - procInsId: row.procInstSid, + procInsId: row.procInstId, token: getStorage() } this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params))) diff --git a/anrui-riskcenter-ui/src/views/workFlow/jiaohuirukuFlow/returntostorageDaiBan.vue b/anrui-riskcenter-ui/src/views/workFlow/jiaohuirukuFlow/returntostorageDaiBan.vue index c6eed34b8e..10d470f518 100644 --- a/anrui-riskcenter-ui/src/views/workFlow/jiaohuirukuFlow/returntostorageDaiBan.vue +++ b/anrui-riskcenter-ui/src/views/workFlow/jiaohuirukuFlow/returntostorageDaiBan.vue @@ -206,7 +206,7 @@ + diff --git a/anrui-riskcenter-ui/src/views/workFlow/publicPage/vehicleconfiguration.vue b/anrui-riskcenter-ui/src/views/workFlow/publicPage/vehicleconfiguration.vue new file mode 100644 index 0000000000..70bba8edc9 --- /dev/null +++ b/anrui-riskcenter-ui/src/views/workFlow/publicPage/vehicleconfiguration.vue @@ -0,0 +1,307 @@ + + + + diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyDto.java index 6428f5e4bb..a558474acd 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyDto.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyDto.java @@ -96,5 +96,7 @@ public class LoanReturnInboundApplyDto implements Dto { private String orgPath; private String userSid; + + private String busVinSid; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyFeign.java index b71aedd74b..622aab9656 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/LoanReturnInboundApplyFeign.java @@ -76,4 +76,8 @@ public interface LoanReturnInboundApplyFeign { @PostMapping(value = "/delegate") public ResultBean delegate(@RequestBody ReturnInboundApplyDelegateQuery query); + @ApiOperation(value = "移动端详情") + @GetMapping(value = "/getDetailsApp") + ResultBean getDetailsApp(@RequestParam("sid") String sid); + } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/ReturnAppVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/ReturnAppVo.java new file mode 100644 index 0000000000..ed6fe7f377 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturninboundapply/ReturnAppVo.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.riskcenter.api.loanreturninboundapply; + +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnAppVo { +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedger.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedger.java index 42f1f8e17e..63d4fdd95f 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedger.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedger.java @@ -71,6 +71,10 @@ public class LoanReturnVehLedger extends BaseEntity { private String saleOrderSid; @ApiModelProperty("销售订单车辆sid") private String busVinSid; + @ApiModelProperty("库存状态") + private String vehicleState; + @ApiModelProperty("库存状态key") + private String vehicleStateKey; } diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerDto.java new file mode 100644 index 0000000000..b17b19ac8b --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerDto.java @@ -0,0 +1,65 @@ +package com.yxt.anrui.riskcenter.api.loanreturnvehledger; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class LoanReturnVehLedgerDto { + + private String sid; + + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("车辆类型") + private String vehType; + @ApiModelProperty("车辆类型key") + private String vehTypeKey; + @ApiModelProperty("车型") + private String vehModel; + @ApiModelProperty("车型sid") + private String vehModelSid; + @ApiModelProperty("配置sid") + private String configSid; + @ApiModelProperty("配置") + private String configName; + @ApiModelProperty("客户名称") + private String customer; + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("贷款人sid") + private String borrowerSid; + @ApiModelProperty("存放地点") + private String location; + @ApiModelProperty("存放地点sid") + private String locationSid; + @ApiModelProperty("处置方式key") + private String disposalKey; + @ApiModelProperty("处置方式") + private String disposal; + @ApiModelProperty("入库价") + private int inboundMoney; + @ApiModelProperty("入库日期") + private String inboundDate; + @ApiModelProperty("出库日期") + private String outboundDate; + @ApiModelProperty("逾期金额") + private String overMoney; + @ApiModelProperty("未到期金额") + private String notBecomeDueMoney; + + @ApiModelProperty("库存状态") + private String vehicleState; + @ApiModelProperty("库存状态key") + private String vehicleStateKey; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeign.java new file mode 100644 index 0000000000..82c5a46d24 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeign.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.riskcenter.api.loanreturnvehledger; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@FeignClient( + contextId = "anrui-riskcenter-LoanReturnVehLedger", + name = "anrui-riskcenter", + path = "v1/LoanReturnVehLedger", + fallback = LoanReturnVehLedgerFeignFallback.class) +public interface LoanReturnVehLedgerFeign { + + @ApiOperation("分页列表") + @PostMapping("/listPage") + ResultBean> pageList(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("编辑") + @PostMapping("/update") + ResultBean update(@RequestBody LoanReturnVehLedgerDto dto); + + +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeignFallback.java new file mode 100644 index 0000000000..3975e61e61 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerFeignFallback.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.riskcenter.api.loanreturnvehledger; + +import org.springframework.stereotype.Component; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Component +public class LoanReturnVehLedgerFeignFallback { +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerQuery.java new file mode 100644 index 0000000000..09c20c5820 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerQuery.java @@ -0,0 +1,48 @@ +package com.yxt.anrui.riskcenter.api.loanreturnvehledger; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class LoanReturnVehLedgerQuery implements Query { + private static final long serialVersionUID = 6282512872080068571L; + + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("车辆类型") + private String vehType; + @ApiModelProperty("车型") + private String vehModel; + @ApiModelProperty("客户名称") + private String customer; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("存放地点") + private String location; + @ApiModelProperty("处置方式key") + private String disposalKey; + @ApiModelProperty("入库日期开始") + private String inboundDateStart; + @ApiModelProperty("入库日期结束") + private String inboundDateEnd; + @ApiModelProperty("出库日期开始") + private String outboundDateStart; + @ApiModelProperty("出库日期结束") + private String outboundDateEnd; + @ApiModelProperty("库存状态") + private String vehicleState; + + private String menuUrl; + private String orgPath; + private String userSid; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerVo.java new file mode 100644 index 0000000000..84dce72c81 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanreturnvehledger/LoanReturnVehLedgerVo.java @@ -0,0 +1,47 @@ +package com.yxt.anrui.riskcenter.api.loanreturnvehledger; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class LoanReturnVehLedgerVo { + + private String sid; + + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("车牌号") + private String vehMark; + @ApiModelProperty("车辆类型") + private String vehType; + @ApiModelProperty("车型") + private String vehModel; + @ApiModelProperty("客户名称") + private String customer; + @ApiModelProperty("贷款人") + private String borrowerName; + @ApiModelProperty("逾期金额") + private String overMoney; + @ApiModelProperty("未到期金额") + private String notBecomeDueMoney; + @ApiModelProperty("存放地点") + private String location; + @ApiModelProperty("处置方式") + private String disposal; + @ApiModelProperty("入库价") + private int inboundMoney; + @ApiModelProperty("入库日期") + private String inboundDate; + @ApiModelProperty("出库日期") + private String outboundDate; + @ApiModelProperty("库存状态") + private String vehicleState; + +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryMapper.xml index 850333470a..a6e7c27224 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryMapper.xml @@ -179,8 +179,10 @@ resultType="com.yxt.anrui.riskcenter.api.loanrepaymenthistory.RepaymentStatisticsVo"> SELECT DISTINCT a.*, - (SELECT c.bankBeInter FROM loan_be_padsincere_veh as c WHERE c.saleVehSid = a.busVinSid AND c.period = a.period) - as bankBeInter + IFNULL((SELECT SUM(c.bankBeInter) FROM loan_be_padsincere_apply as ap + LEFT JOIN loan_be_padsincere_veh as c on ap.sid = c.mainSid + WHERE c.saleVehSid = a.busVinSid AND c.period = a.period AND ap.nodeState = '已办结' + ),0) as bankBeInter FROM ( SELECT diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java index 620cec5d9e..b9f96a09a4 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymenthistory/LoanRepaymentHistoryService.java @@ -773,7 +773,7 @@ public class LoanRepaymentHistoryService extends MybatisBaseService= 0) { Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历 cal_1.setTime(date); cal_1.add(Calendar.DAY_OF_MONTH, -1); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.java index db133ee7de..b1050f911a 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.java @@ -37,4 +37,6 @@ public interface LoanReturnInboundApplyMapper extends BaseMapper getInboundList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("list") List busVinSid); BusSalesOrder selectOrder(String busVinSid); + + int selectByBusVinSid(String busVinSid); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.xml index 7435ccc59d..5b8f850393 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyMapper.xml @@ -155,4 +155,13 @@ left join anrui_buscenter.bus_sales_order_vehicle bv on bv.salesOrderSid = bo.sid where bv.sid = #{busVinSid} + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyRest.java index 0c18adcfda..3b23e5a635 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyRest.java @@ -98,4 +98,9 @@ public class LoanReturnInboundApplyRest implements LoanReturnInboundApplyFeign { public ResultBean delegate(ReturnInboundApplyDelegateQuery query) { return loanReturnInboundApplyService.delegate(query); } + + @Override + public ResultBean getDetailsApp(String sid) { + return loanReturnInboundApplyService.getDetailsApp(sid); + } } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyService.java index bdb7c79ba5..9e6a9d9367 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturninboundapply/LoanReturnInboundApplyService.java @@ -458,8 +458,11 @@ public class LoanReturnInboundApplyService extends MybatisBaseService 0) { + return rb.setMsg("该车辆交回入库审批中或已入库"); + } ResultBean resultBean = saveOrUpdateReturnInbound(dto); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); @@ -701,11 +704,11 @@ public class LoanReturnInboundApplyService extends MybatisBaseService qw = new QueryWrapper<>(); List busVinSid = new ArrayList<>(); if (query != null) { - if(StringUtils.isNotBlank(query.getVinNo())){ - qw.like("la.vinNo",query.getVinNo()); + if (StringUtils.isNotBlank(query.getVinNo())) { + qw.like("la.vinNo", query.getVinNo()); } - if(StringUtils.isNotBlank(query.getVehMark())){ - qw.like("la.carNum",query.getVehMark()); + if (StringUtils.isNotBlank(query.getVehMark())) { + qw.like("la.carNum", query.getVehMark()); } if (StringUtils.isNotBlank(query.getOrgPath())) { String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(query.getOrgPath()).getData(); @@ -722,6 +725,10 @@ public class LoanReturnInboundApplyService extends MybatisBaseService getDetailsApp(String sid) { + return null; + } + /* public ResultBean> getInboundList(String useOrgSid) { ResultBean> rb = ResultBean.fireFail(); List busVinSid = baseMapper.selectVehInbound(useOrgSid); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java index dd61b4b280..aaa7cd0be2 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.java @@ -1,8 +1,15 @@ package com.yxt.anrui.riskcenter.biz.loanreturnvehledger; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerQuery; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerVo; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * @description: @@ -11,4 +18,9 @@ import org.apache.ibatis.annotations.Mapper; **/ @Mapper public interface LoanReturnVehLedgerMapper extends BaseMapper { + LoanReturnVehLedger selectByBusVinSid(String busVinSid); + + BusSalesOrderVehicle selectBusVinSid(String busVinSid); + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml index 517f9f6172..37e5ef1057 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerMapper.xml @@ -1,4 +1,38 @@ + + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerRest.java new file mode 100644 index 0000000000..1284be3d7e --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerRest.java @@ -0,0 +1,37 @@ +package com.yxt.anrui.riskcenter.biz.loanreturnvehledger; + +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyVo; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.*; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@RestController +@RequestMapping("v1/LoanReturnVehLedger") +@Api(tags = "交回车辆台账管理") +public class LoanReturnVehLedgerRest implements LoanReturnVehLedgerFeign { + + @Autowired + private LoanReturnVehLedgerService loanReturnVehLedgerService; + + @Override + public ResultBean> pageList(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = loanReturnVehLedgerService.listPageVo(pagerQuery); + return rb.success().setData(pv); + } + + @Override + public ResultBean update(LoanReturnVehLedgerDto dto) { + return loanReturnVehLedgerService.updateDto(dto); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java index d7823edab7..7f4f84066c 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanreturnvehledger/LoanReturnVehLedgerService.java @@ -1,15 +1,34 @@ package com.yxt.anrui.riskcenter.biz.loanreturnvehledger; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; +import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApply; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyQuery; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyVo; import com.yxt.anrui.riskcenter.api.loanreturninboundtrailer.LoanReturnInboundTrailer; import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedger; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerDto; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerQuery; +import com.yxt.anrui.riskcenter.api.loanreturnvehledger.LoanReturnVehLedgerVo; import com.yxt.anrui.riskcenter.biz.loanreturninboundapply.LoanReturnInboundApplyService; import com.yxt.anrui.riskcenter.biz.loanreturninboundtrailer.LoanReturnInboundTrailerService; import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.Date; +import java.util.List; + /** * @description: * @author: dimengzhe @@ -23,8 +42,11 @@ public class LoanReturnVehLedgerService extends MybatisBaseService listPageVo(PagerQuery pagerQuery) { + LoanReturnVehLedgerQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + //分公司 + if (StringUtils.isNotBlank(query.getUseOrgName())) { + qw.like("lv.useOrgName", query.getUseOrgName()); + } + //车架号 + if (StringUtils.isNotBlank(query.getVinNo())) { + qw.like("lv.vinNo", query.getVinNo()); + } + //车牌号 + if (StringUtils.isNotBlank(query.getVehMark())) { + qw.like("lv.vehMark", query.getVehMark()); + } + //车辆类型 + if (StringUtils.isNotBlank(query.getVehType())) { + qw.like("lv.vehType", query.getVehType()); + } + //车型 + if (StringUtils.isNotBlank(query.getVehModel())) { + qw.like("lv.vehModel", query.getVehModel()); + } + //客户名称 + if (StringUtils.isNotBlank(query.getCustomer())) { + qw.like("lv.customer", query.getCustomer()); + } + //贷款人 + if (StringUtils.isNotBlank(query.getBorrowerName())) { + qw.like("lv.borrowerName", query.getBorrowerName()); + } + //存放地点 + if (StringUtils.isNotBlank(query.getLocation())) { + qw.like("lv.location", query.getLocation()); + } + //处置方式 + if (StringUtils.isNotBlank(query.getDisposalKey())) { + qw.eq("lv.disposalKey", query.getDisposalKey()); + } + //入库日期开始 + qw.apply(StringUtils.isNotBlank(query.getInboundDateStart()), "date_format (lv.inboundDate,'%Y-%m-%d') >= date_format('" + query.getInboundDateStart() + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(query.getInboundDateEnd()), "date_format (lv.inboundDate,'%Y-%m-%d') <= date_format('" + query.getInboundDateEnd() + "','%Y-%m-%d')" + ); + //出库日期开始 + qw.apply(StringUtils.isNotBlank(query.getInboundDateStart()), "date_format (lv.outboundDate,'%Y-%m-%d') >= date_format('" + query.getInboundDateStart() + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(query.getInboundDateEnd()), "date_format (lv.outboundDate,'%Y-%m-%d') <= date_format('" + query.getInboundDateEnd() + "','%Y-%m-%d')" + ); + //========================================数据授权开始 + if (StringUtils.isNotBlank(query.getMenuUrl())) { + //======================= + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("lv.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("lv.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("lv.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("lv.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("lv.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + } + qw.orderByDesc("lv.createTime"); + IPage page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean updateDto(LoanReturnVehLedgerDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + LoanReturnVehLedger loanReturnVehLedger = fetchBySid(sid); + if (loanReturnVehLedger == null) { + return rb.setMsg("该车辆台账不存在"); + } + BeanUtil.copyProperties(dto, loanReturnVehLedger, "sid"); + baseMapper.updateById(loanReturnVehLedger); + return rb.success(); } } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundAppVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundAppVo.java new file mode 100644 index 0000000000..2246e3615b --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundAppVo.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.terminal.api.risk.returninbound; + +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnInboundAppVo { +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeign.java new file mode 100644 index 0000000000..786f836fa0 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeign.java @@ -0,0 +1,64 @@ +package com.yxt.anrui.terminal.api.risk.returninbound; + +import com.yxt.anrui.terminal.api.risk.overduefin.OverDueFnAppVo; +import com.yxt.anrui.terminal.api.risk.overduefin.flowable.FinDelegateQuery; +import com.yxt.anrui.terminal.api.risk.overduefin.flowable.OverdueFinDto; +import com.yxt.anrui.terminal.api.risk.overduefin.flowable.OverdueFinQuery; +import com.yxt.anrui.terminal.api.risk.overduefin.flowable.OverdueFinTaskQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDelegateQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDto; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundTaskQuery; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@FeignClient( + contextId = "terminal-ReturnInbound", + name = "anrui-terminal", + path = "/risk/v1/ReturnInbound", + fallback = ReturnInboundFeignFallback.class) +public interface ReturnInboundFeign { + + @ApiOperation("办理") + @PutMapping("/agreeReturnInbound") + @ResponseBody + ResultBean agreeReturnInbound(@RequestBody ReturnInboundDto dto); + + @ApiOperation("驳回") + @PutMapping("/rejectReturnInbound") + @ResponseBody + ResultBean rejectReturnInbound(@RequestBody ReturnInboundTaskQuery query); + + @ApiOperation("撤回") + @PutMapping("/recallReturnInbound") + @ResponseBody + ResultBean recallReturnInbound(@RequestBody ReturnInboundTaskQuery query); + + @ApiOperation("终止") + @PutMapping("/stopReturnInbound") + @ResponseBody + ResultBean stopReturnInbound(@RequestBody ReturnInboundTaskQuery query); + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap ReturnInboundQuery query); + + @ApiOperation("详情") + @GetMapping("/getReturnInbound/{sid}") + @ResponseBody + ResultBean getReturnInbound(@PathVariable("sid") String sid); + + @ApiOperation(value = "加签") + @PutMapping(value = "/delegate") + @ResponseBody + public ResultBean delegate(@RequestBody ReturnInboundDelegateQuery delegateQuery); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeignFallback.java new file mode 100644 index 0000000000..5fdd69ea5d --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/ReturnInboundFeignFallback.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.terminal.api.risk.returninbound; + +import org.springframework.stereotype.Component; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Component +public class ReturnInboundFeignFallback { +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDelegateQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDelegateQuery.java new file mode 100644 index 0000000000..ce477d622a --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDelegateQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.terminal.api.risk.returninbound.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnInboundDelegateQuery { + + private String userSid; + @ApiModelProperty("流程实例id") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDto.java new file mode 100644 index 0000000000..45743804c5 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundDto.java @@ -0,0 +1,35 @@ +package com.yxt.anrui.terminal.api.risk.returninbound.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnInboundDto { + + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:procInsId") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundQuery.java new file mode 100644 index 0000000000..d79802cdc9 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundQuery.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.terminal.api.risk.returninbound.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnInboundQuery { + + @ApiModelProperty(value = "节点key") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + @NotNull(message = "参数错误:next") + private Integer next; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundTaskQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundTaskQuery.java new file mode 100644 index 0000000000..7ddb462717 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/returninbound/flowable/ReturnInboundTaskQuery.java @@ -0,0 +1,45 @@ +package com.yxt.anrui.terminal.api.risk.returninbound.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Data +public class ReturnInboundTaskQuery { + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + @JsonProperty("procInsId") + private String instanceId; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundRest.java new file mode 100644 index 0000000000..d79d363f1d --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundRest.java @@ -0,0 +1,62 @@ +package com.yxt.anrui.terminal.biz.risk.returninbound; + +import com.yxt.anrui.terminal.api.risk.returninbound.ReturnInboundAppVo; +import com.yxt.anrui.terminal.api.risk.returninbound.ReturnInboundFeign; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDelegateQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDto; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundTaskQuery; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/22 + **/ +@Controller +@RequestMapping("/risk/v1/ReturnInbound") +@Api(tags = "交回车辆入库申请审批") +public class ReturnInboundRest implements ReturnInboundFeign { + + @Autowired + private ReturnInboundService returnInboundService; + + @Override + public ResultBean agreeReturnInbound(ReturnInboundDto dto) { + return returnInboundService.agreeReturnInbound(dto); + } + + @Override + public ResultBean rejectReturnInbound(ReturnInboundTaskQuery query) { + return returnInboundService.rejectReturnInbound(query); + } + + @Override + public ResultBean recallReturnInbound(ReturnInboundTaskQuery query) { + return returnInboundService.recallReturnInbound(query); + } + + @Override + public ResultBean stopReturnInbound(ReturnInboundTaskQuery query) { + return returnInboundService.stopReturnInbound(query); + } + + @Override + public ResultBean getFlowOperateTitle(ReturnInboundQuery query) { + return returnInboundService.getFlowOperateTitle(query); + } + + @Override + public ResultBean getReturnInbound(String sid) { + return returnInboundService.getReturnInbound(sid); + } + + @Override + public ResultBean delegate(ReturnInboundDelegateQuery delegateQuery) { + return returnInboundService.delegate(delegateQuery); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundService.java new file mode 100644 index 0000000000..c2a9046b65 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/returninbound/ReturnInboundService.java @@ -0,0 +1,115 @@ +package com.yxt.anrui.terminal.biz.risk.returninbound; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.riskcenter.api.loanoverduefin.flowable.*; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApply; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.LoanReturnInboundApplyFeign; +import com.yxt.anrui.riskcenter.api.loanreturninboundapply.flowable.*; +import com.yxt.anrui.terminal.api.risk.returninbound.ReturnInboundAppVo; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDelegateQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundDto; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundQuery; +import com.yxt.anrui.terminal.api.risk.returninbound.flowable.ReturnInboundTaskQuery; +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: dimengzhe + * @date: 2024/1/22 + **/ +@Service +public class ReturnInboundService { + @Autowired + private LoanReturnInboundApplyFeign loanReturnInboundApplyFeign; + + public ResultBean agreeReturnInbound(ReturnInboundDto dto) { + ResultBean rb = ResultBean.fireFail(); + CompleteReturnInboundDto completeDto = new CompleteReturnInboundDto(); + BeanUtil.copyProperties(dto, completeDto); + ResultBean resultBean = loanReturnInboundApplyFeign.complete(completeDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean rejectReturnInbound(ReturnInboundTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + ReturnInboundApplyTaskQuery returnInboundApplyTaskQuery = new ReturnInboundApplyTaskQuery(); + BeanUtil.copyProperties(query, returnInboundApplyTaskQuery); + ResultBean resultBean = loanReturnInboundApplyFeign.taskReject(returnInboundApplyTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean recallReturnInbound(ReturnInboundTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + ReturnInboundApplyTaskQuery returnInboundApplyTaskQuery = new ReturnInboundApplyTaskQuery(); + BeanUtil.copyProperties(query, returnInboundApplyTaskQuery); + ResultBean resultBean = loanReturnInboundApplyFeign.revokeProcess(returnInboundApplyTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean stopReturnInbound(ReturnInboundTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + ReturnInboundApplyTaskQuery returnInboundApplyTaskQuery = new ReturnInboundApplyTaskQuery(); + BeanUtil.copyProperties(query, returnInboundApplyTaskQuery); + ResultBean resultBean = loanReturnInboundApplyFeign.breakProcess(returnInboundApplyTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitle(ReturnInboundQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + ReturnInboundApplyNodeQuery getNodeQuery = new ReturnInboundApplyNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> getPreviousNodesForReject = loanReturnInboundApplyFeign.getPreviousNodesForReject(getNodeQuery); + if (getPreviousNodesForReject.getSuccess()) { + getPreviousNodesForReject.getData().removeAll(Collections.singleton(null)); + data = getPreviousNodesForReject.getData().get(0).getName(); + } else { + return rb.setMsg(getPreviousNodesForReject.getMsg()); + } + } else if (next == 1) { + ResultBean> getNextNodesForSubmit = loanReturnInboundApplyFeign.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 getReturnInbound(String sid) { + return null; + } + + public ResultBean delegate(ReturnInboundDelegateQuery delegateQuery) { + ResultBean rb = ResultBean.fireFail(); + ReturnInboundApplyDelegateQuery delegateQuery1 = new + ReturnInboundApplyDelegateQuery(); + BeanUtil.copyProperties(delegateQuery, delegateQuery1); + ResultBean delegate = loanReturnInboundApplyFeign.delegate(delegateQuery1); + return rb.success(); + } +}