From 7dac7de9cdb6239781ca26beb82968ac2adcac72 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 29 Aug 2023 17:33:21 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E6=B4=BD=E8=B0=88=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/crmvehicledemand/AppCrmSolutions.java | 165 ++++++++++++++++++ .../AppCrmVehicleDemandUpdateDto.java | 4 +- .../AppCrmVehicledemandDetailsVo.java | 7 + .../crmvehicledemand/CrmSolutionListVo.java | 24 +++ .../api/crmvehicledemand/CrmSolutions.java | 2 + .../crmvehicledemand/CrmVehicledemand.java | 2 + .../CrmVehicledemandMapper.xml | 3 +- .../CrmVehicledemandRest.java | 7 +- .../CrmVehicledemandService.java | 96 +++++++--- .../FinCollectionConfirmationService.java | 8 +- .../api/loansolutions/LoanSolutionsFeign.java | 4 + .../LoanSolutionsFeignFallback.java | 5 + .../biz/loansolutions/LoanSolutionsRest.java | 5 + .../loansolutions/LoanSolutionsService.java | 84 +++++++++ 14 files changed, 381 insertions(+), 35 deletions(-) create mode 100644 anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmSolutions.java create mode 100644 anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutionListVo.java diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmSolutions.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmSolutions.java new file mode 100644 index 0000000000..2d15f3f855 --- /dev/null +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmSolutions.java @@ -0,0 +1,165 @@ +package com.yxt.anrui.crm.api.crmvehicledemand; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.ArrayList; +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2023/8/29 + **/ +@Data +public class AppCrmSolutions { + + @JsonProperty("isShowMore") + private boolean isShowMore; + @ApiModelProperty("是否打包:1是0否") + private String isPack; + @ApiModelProperty("产品政策名称") + private String policyName; + private String policySid; + + @ApiModelProperty("主车发票价") + private String mainVehicleAmount; + @ApiModelProperty("融资票据") + private String accessoriesAmount; + + @ApiModelProperty("挂车金额") + private String trailerAmount; + @ApiModelProperty("购置税") + private String purchaseTax; + @ApiModelProperty("保险金额") + private String premium; + + @ApiModelProperty("融资项目总额") + private String loanTotal; + + @ApiModelProperty("是否有融资票据") + private boolean accessoriesAmountCb; + @ApiModelProperty("是否有挂车") + private boolean trailerAmountCb; + @ApiModelProperty("是否有购置税") + private boolean purchaseTaxCb; + @ApiModelProperty("是否有保险") + private boolean premiumCb; + + @ApiModelProperty("首付款比例") + private String downPayRatio; + @ApiModelProperty("首付金额") + @NotBlank(message = "首付金额不能为空") + private String downPayAmount; + @ApiModelProperty("贷款金额") + private String loanAmount; + @ApiModelProperty("贷款期数") + @NotBlank(message = "产品期数不能为空") + private String loanPeriod; + @ApiModelProperty("贷款保证金比例") + private String bondRatio; + @ApiModelProperty("贷款保证金金额") + @NotBlank(message = "贷款保证金不能为空") + private String bondAmount; + @ApiModelProperty("厂家贴息") + @NotBlank(message = "厂家贴息不能为空") + private String factoryDiscount; + @ApiModelProperty("厂家贴息用途") + private String factoryDiscountUse; + + @ApiModelProperty("贴息抵车款") + @JsonProperty("factoryDiscountUseMoney") + private String discountCar; + + @ApiModelProperty("年利率") + private String policyYearRatio; + @ApiModelProperty("月还金额") + @NotBlank(message = "月还金额不能为空") + private String loanPayMoney; + @ApiModelProperty("利息总额") + private String loanInterest; + + @ApiModelProperty("是否勾选其它融") + private boolean otherPolicyState; + + @ApiModelProperty("其它融名称") + private String otherPolicyName; + private String otherPolicySid; + @ApiModelProperty("其它融贷款金额") + private String otherPolicyAmount; + @ApiModelProperty("其它融期数") + private String otherPolicyPeriod; + @ApiModelProperty("其它融月还") + private String otherPolicyMonthlyRepay; + @ApiModelProperty("其它融利息总额") + private String otherPolicyInterest; + @ApiModelProperty("其它融年利率") + private String otherPolicyYearRatio; + + @ApiModelProperty("'融资首付") + private String loanDownPay; + @ApiModelProperty("实际首付比例") + private String downPayAmountsRatio; + @ApiModelProperty("总贷款金额") + private String loanAmountTotal; + @ApiModelProperty("期数") + private String period; + @ApiModelProperty("月还金额") + private String monthlyRepay; + @ApiModelProperty("利息总额") + private String interest; + @ApiModelProperty("预计首期还款日") + private String returnTime; + + @ApiModelProperty("融资首付") + private String downPayAmounts; + @ApiModelProperty("贷款保证金") + private String bondAmounts; + @ApiModelProperty("保险保证金") + private String depositPremium; + @ApiModelProperty("落户保证金") + private String depositSettle; + @ApiModelProperty("服务费") + @NotBlank(message = "服务费不能为空") + private String serviceAmount; + @ApiModelProperty("代收意外险") + private String proxyAccidentPremium; + @ApiModelProperty("上牌费") + private String registerAmount; + @ApiModelProperty("运管费") + private String operationAmount; + + @ApiModelProperty("补车价") + private String vehOtherPrice; + @ApiModelProperty("其它费用") + private String otherAmount; + @ApiModelProperty("其它费用说明") + private String otherAmountRemark; + @ApiModelProperty("办理方式选择") + private String dealWay; + @ApiModelProperty("办理方式选择key") + private String dealWayKey; + + @ApiModelProperty("代收首年保险费") + private String proxyPremium; + @ApiModelProperty("代收购置费") + private String proxyPurchasetax; + @ApiModelProperty("抵顶首年保险费") + private String offsetPremium; + @ApiModelProperty("抵顶购置税") + private String offsetPurchasetax; + @ApiModelProperty("抵顶费用合计") + private String offsetTotal; + @ApiModelProperty("应收合计") + private String receivableTotal; + @ApiModelProperty("实收合计") + private String realTotal; + @ApiModelProperty("车辆总价") + private String vehTotalPrice; + @ApiModelProperty("名义留购价") + private String nominalPrice; + + private List financeForms = new ArrayList<>(); +} diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java index 09c8dad4d9..efb827f7f7 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java @@ -40,5 +40,7 @@ public class AppCrmVehicleDemandUpdateDto implements Dto { @ApiModelProperty(value = "1自有资金,2三方金融") private String financePlanValue; @ApiModelProperty("金融方案") - private CrmSolutions finNormal; + private AppCrmSolutions finNormal; + @ApiModelProperty("1常规、2定制") + private String finTypeKey; } diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicledemandDetailsVo.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicledemandDetailsVo.java index b8a21f5201..08d86715c9 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicledemandDetailsVo.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicledemandDetailsVo.java @@ -1,5 +1,6 @@ package com.yxt.anrui.crm.api.crmvehicledemand; +import com.fasterxml.jackson.annotation.JsonProperty; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -46,5 +47,11 @@ public class AppCrmVehicledemandDetailsVo implements Vo { private String financePlan; @ApiModelProperty(value = "金融方案value") private String financePlanValue; + @JsonProperty("finTypeKey") + private String typeKey; + private String type; + + private AppCrmSolutions finNormal; + } diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutionListVo.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutionListVo.java new file mode 100644 index 0000000000..7f236dc6bd --- /dev/null +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutionListVo.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.crm.api.crmvehicledemand; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2023/8/29 + **/ +@Data +public class CrmSolutionListVo { + + @ApiModelProperty(value = "内容") + private String value; + + @ApiModelProperty(value = "单元格大小") + private Integer spanSize; + + @ApiModelProperty("类型:0 最普通的 1 标题的 2是 加上划线的") + private Integer type; + @ApiModelProperty("是否加粗,true是,false否") + private boolean bold; +} diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutions.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutions.java index c71c93d2c1..d8ba4597a1 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutions.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmSolutions.java @@ -66,6 +66,8 @@ public class CrmSolutions { private String factoryDiscount; @ApiModelProperty("厂家贴息用途") private String factoryDiscountUse; + @ApiModelProperty("贴息抵车款") + private String discountCar; @ApiModelProperty("年利率") private String policyYearRatio; diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java index 41979a7bf4..03da49340e 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java @@ -87,6 +87,8 @@ public class CrmVehicledemand extends BaseEntity { @ApiModelProperty("1自有资金,2三方金融,3非担保,4担保") private String financePlanValue; @ApiModelProperty("01资方常规,02定制金融") + @TableField(updateStrategy = FieldStrategy.IGNORED) private String typeKey; + @TableField(updateStrategy = FieldStrategy.IGNORED) private String type; } diff --git a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandMapper.xml b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandMapper.xml index 29caf87c55..01f716970a 100644 --- a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandMapper.xml +++ b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandMapper.xml @@ -108,7 +108,8 @@ cv.otherConfig, cv.sketChconfiguration as configName, cv.financePlan, - cv.financePlanValue + cv.financePlanValue, + cv.typeKey FROM crm_vehicledemand cv WHERE cv.sid = #{intentionSid} diff --git a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandRest.java b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandRest.java index 97e9a6e425..7d84e82f52 100644 --- a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandRest.java +++ b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandRest.java @@ -165,8 +165,7 @@ public class CrmVehicledemandRest implements CrmVehicledemandFeign { */ @Override public ResultBean initVisitDemands(String intentionSid) { - AppCrmVehicledemandDetailsVo vo = crmVehicledemandService.initVisitDemands(intentionSid); - return new ResultBean().success().setData(vo); + return crmVehicledemandService.initVisitDemands(intentionSid); } /** @@ -177,9 +176,7 @@ public class CrmVehicledemandRest implements CrmVehicledemandFeign { */ @Override public ResultBean saveVisitDemands(AppCrmVehicleDemandUpdateDto appCrmVehicleDemandUpdateDto) { - ResultBean rb = ResultBean.fireFail(); - crmVehicledemandService.saveVisitDemands(appCrmVehicleDemandUpdateDto); - return rb.success(); + return crmVehicledemandService.saveVisitDemands(appCrmVehicleDemandUpdateDto); } /** diff --git a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java index abe59e16d1..718b3103df 100644 --- a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java +++ b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java @@ -1,12 +1,14 @@ package com.yxt.anrui.crm.biz.crmvehicledemand; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModelFeign; import com.yxt.anrui.base.api.basevehmodelconfig.AppModelVeDetailVo; import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfigFeign; import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelVo; +import com.yxt.anrui.buscenter.api.bussalesorder.OrderSolutionVo; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp; import com.yxt.anrui.crm.api.crmfindemand.CrmFindemand; import com.yxt.anrui.crm.api.crmfindemand.CrmFindemandDto; @@ -19,10 +21,15 @@ import com.yxt.anrui.crm.biz.crmcustomertemp.CrmCustomerTempService; import com.yxt.anrui.crm.biz.crmfindemand.CrmFindemandService; import com.yxt.anrui.crm.biz.crmvehiclefinance.CrmVehicleFinanceService; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign; import com.yxt.anrui.riskcenter.api.loansolutions.SolutionDetailsDto; +import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionListVo; import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo; import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionssDto; +import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionssVo; +import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetail; +import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy; import com.yxt.anrui.riskcenter.api.loantemplate.LoanTemplateSolutionsVo; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -37,9 +44,8 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.text.SimpleDateFormat; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** * Project: anrui-crm(客户管理)
@@ -353,21 +359,34 @@ public class CrmVehicledemandService extends MybatisBaseService initVisitDemands(String intentionSid) { + ResultBean rb = ResultBean.fireFail(); AppCrmVehicledemandDetailsVo appCrmVehicledemandDetailsVo = baseMapper.selectBySid(intentionSid); - return appCrmVehicledemandDetailsVo; + ResultBean resultBean = loanSolutionsFeign.selectDetails3(intentionSid); + if (resultBean.getData() != null) { + AppCrmSolutions finNormal = new AppCrmSolutions(); + BeanUtil.copyProperties(resultBean.getData(), finNormal); + List financeForms = resultBean.getData().getFinanceForms(); + if (!financeForms.isEmpty()) { + List voList = Optional.ofNullable(financeForms).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), CrmSolutionListVo.class)).collect(Collectors.toList()); + finNormal.setFinanceForms(voList); + } + appCrmVehicledemandDetailsVo.setFinNormal(finNormal); + } + return rb.success().setData(appCrmVehicledemandDetailsVo); } /** * 修改意向车型 - * - * @param appCrmVehicleDemandUpdateDto */ @Transactional(rollbackFor = Exception.class) public ResultBean saveVisitDemands(AppCrmVehicleDemandUpdateDto dto) { ResultBean rb = ResultBean.fireFail(); String sid = dto.getIntentionSid(); CrmVehicledemand entity = fetchBySid(sid); + if (entity == null) { + return rb.setMsg("该车辆需求不存在"); + } BeanUtil.copyProperties(dto, entity); entity.setEstimatedPickupDate(dto.getDate()); if (StringUtils.isNotBlank(dto.getPrice())) { @@ -375,14 +394,45 @@ public class CrmVehicledemandService extends MybatisBaseService payConfirmFiles = dto.getPayConfirmFiles(); if (payConfirmFiles.size() > 0) { diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java index ec2d10d761..664e294f33 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java @@ -110,6 +110,10 @@ public interface LoanSolutionsFeign { @PostMapping("/selectDetails2") ResultBean selectDetails2(@RequestParam("salesOrderSid") String busSid); + @ApiOperation("客户洽谈金融方案初始化") + @PostMapping("/selectDetails3") + ResultBean selectDetails3(@RequestParam("salesOrderSid") String busSid); + @ApiOperation("移动端计算初始化") @PostMapping("/details2") ResultBean details2(@RequestBody SolutionssQuery query); diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java index fc24b59a3a..6c245868d9 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java @@ -78,6 +78,11 @@ public class LoanSolutionsFeignFallback implements LoanSolutionsFeign { return null; } + @Override + public ResultBean selectDetails3(String busSid) { + return null; + } + @Override public ResultBean details2(SolutionssQuery query) { return null; diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java index 17b543d1a5..fa65345e96 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java @@ -90,6 +90,11 @@ public class LoanSolutionsRest implements LoanSolutionsFeign { return loanSolutionsService.selectDetails2(busSid); } + @Override + public ResultBean selectDetails3(String busSid) { + return loanSolutionsService.selectDetails3(busSid); + } + @Override public ResultBean details2(SolutionssQuery query) { return loanSolutionsService.details2(query); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java index 69cadc4478..f1226205fa 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java @@ -2185,6 +2185,90 @@ public class LoanSolutionsService extends MybatisBaseService selectDetails3(String busSid) { + ResultBean rb = ResultBean.fireFail(); + SolutionssVo solutionssVo = new SolutionssVo(); + //根据关联sid查询是否存在金融方案 + LoanSolutions loanSolutions = baseMapper.selectByApplySid(busSid); + boolean isTrue = false; + if (loanSolutions != null) { + BeanUtil.copyProperties(loanSolutions, solutionssVo); + if (loanSolutions.getTrailerAmount() != null) { + solutionssVo.setGcPrice(loanSolutions.getTrailerAmount().toString()); + } + LoanSolutionsOtherpolicy loanSolutionsOtherpolicy = loanSolutionsOtherpolicyService.selectByLoanSid(loanSolutions.getSid()); + if (loanSolutionsOtherpolicy != null) { + BeanUtil.copyProperties(loanSolutionsOtherpolicy, solutionssVo); + } + LoanSolutionsDetail loanSolutionsDetail = loanSolutionsDetailService.selectLoanSid(loanSolutions.getSid()); + if (loanSolutionsDetail != null) { + BeanUtil.copyProperties(loanSolutionsDetail, solutionssVo); + } + isTrue = true; + } + //全款且为三方金融 + if(StringUtils.isBlank(loanSolutions.getTypeKey())){ + solutionssVo.setShowMore(true); + solutionssVo.setFactoryDiscountUse("抵利息"); + if (isTrue) { + if (StringUtils.isNotBlank(loanSolutions.getPolicySid()) && loanSolutions.getOtherPolicyState() == 0) { + LoanFinOtherPolicy loanFinOtherPolicy = loanFinOtherPolicyService.selectByMainSid(loanSolutions.getPolicySid()); + if (loanFinOtherPolicy != null) { + solutionssVo.setOtherPolicyName(loanFinOtherPolicy.getOtherPolicyName()); + solutionssVo.setOtherPolicySid(loanFinOtherPolicy.getSid()); + solutionssVo.setOtherPolicyPeriod(String.valueOf(loanFinOtherPolicy.getPeriod())); + solutionssVo.setOtherPolicyYearRatio(loanFinOtherPolicy.getYearRatio().toString()); + solutionssVo.setOtherPolicyIsMain(true); + } + } else { + LoanFinOtherPolicy loanFinOtherPolicy = loanFinOtherPolicyService.selectByMainSid(loanSolutions.getPolicySid()); + if (loanFinOtherPolicy != null) { + solutionssVo.setOtherPolicyIsMain(true); + } + } + } + }else{ + if ("2".equals(loanSolutions.getTypeKey())) { + solutionssVo.setFactoryDiscountUse("抵车款"); + if (isTrue) { + if ("02".equals(loanSolutions.getTypeKey())) { + solutionssVo.setShowMore(false); + } else { + solutionssVo.setShowMore(true); + } + } else { + solutionssVo.setShowMore(false); + } + }else{ + solutionssVo.setShowMore(true); + solutionssVo.setFactoryDiscountUse("抵利息"); + if (isTrue) { + if (StringUtils.isNotBlank(loanSolutions.getPolicySid()) && loanSolutions.getOtherPolicyState() == 0) { + LoanFinOtherPolicy loanFinOtherPolicy = loanFinOtherPolicyService.selectByMainSid(loanSolutions.getPolicySid()); + if (loanFinOtherPolicy != null) { + solutionssVo.setOtherPolicyName(loanFinOtherPolicy.getOtherPolicyName()); + solutionssVo.setOtherPolicySid(loanFinOtherPolicy.getSid()); + solutionssVo.setOtherPolicyPeriod(String.valueOf(loanFinOtherPolicy.getPeriod())); + solutionssVo.setOtherPolicyYearRatio(loanFinOtherPolicy.getYearRatio().toString()); + solutionssVo.setOtherPolicyIsMain(true); + } + } else { + LoanFinOtherPolicy loanFinOtherPolicy = loanFinOtherPolicyService.selectByMainSid(loanSolutions.getPolicySid()); + if (loanFinOtherPolicy != null) { + solutionssVo.setOtherPolicyIsMain(true); + } + } + } + } + } + if (isTrue) { + List formList = getFormList(solutionssVo); + solutionssVo.setFinanceForms(formList); + } + solutionssVo.setBusSid(busSid); + return rb.success().setData(solutionssVo); + } +