Browse Source

Merge remote-tracking branch 'origin/master'

master
God 2 years ago
parent
commit
a45ba4162c
  1. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSaleOrderStateVo.java
  2. 30
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  3. 17
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java
  4. 12
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java
  5. 135
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/app/SolutionsDetailsVo.java
  6. 135
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/app/SolutionsDto.java
  7. 13
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutionsotherpolicy/LoanSolutionsOtherpolicy.java
  8. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsMapper.java
  9. 84
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsMapper.xml
  10. 13
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java
  11. 67
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java
  12. 3
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderStateVo.java
  13. 4
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/solutions/SolutionsFeign.java
  14. 10
      doc/databases/risk_center.sql

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSaleOrderStateVo.java

@ -80,5 +80,7 @@ public class AppBusSaleOrderStateVo implements Vo {
@ApiModelProperty("上装的采购类型是否允许修改")
private boolean isMain;
@ApiModelProperty("是否有金融方案按钮")
private boolean financeState;
}

30
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -140,6 +140,8 @@ import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo;
import com.yxt.anrui.portal.config.DictCommonType;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseFeign;
import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseVo;
import com.yxt.common.base.config.component.FileUploadComponent;
@ -256,6 +258,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
@Autowired
private BusHandoverService busHandoverService;
@Autowired
private LoanSolutionsFeign loanSolutionsFeign;
/**
* 构造查询条件
*
@ -1389,7 +1394,22 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//金融方案状态
vo.setFinanceInfoState(0);
//如果是贷款或全款的三方金融的时候显示
if ("2".equals(busSalesOrder.getPayTypeKey()) || "2".equals(busSalesOrder.getFinancePlan())) {//贷款 || 三方金融
vo.setFinanceState(true);
} else {
vo.setFinanceState(false);
}
//查询该销售订单是否存在金融方案
//ToDo:
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetails(saleOrderSid);
SolutionsDetailsVo solutionsDetailsVo = solutionsDetailsVoResultBean.getData();
if (solutionsDetailsVo == null) {
vo.setFinanceInfoState(0);
} else {
vo.setFinanceInfoState(1);
}
//补充说明状态
if (StringUtils.isNotBlank(busSalesOrder.getNotes()) || StringUtils.isNotBlank(busSalesOrder.getImagesFile())) {
vo.setRemarksStete(1);
@ -1481,22 +1501,22 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
AppOrderDetailsVo appOrderDetailsVo = getSaleOrderDetails(record.getSaleOrderSid()).getData();
AppOrderModelInfoVo modelInfo = appOrderDetailsVo.getModelInfo();
List<String> vinSids = new ArrayList<>();
if (modelInfo != null){
if (modelInfo != null) {
List<VinListsVo> vinListsVos = modelInfo.getVinListsVos();
for (VinListsVo vinListsVo : vinListsVos) {
if (StringUtils.isNotBlank(vinListsVo.getVinSid())){
if (StringUtils.isNotBlank(vinListsVo.getVinSid())) {
vinSids.add(vinListsVo.getVinSid());
}
}
}
if (vinSids.size() > 0){
if (vinSids.size() > 0) {
int i = busHandoverService.selectByCount(record.getContractId(), vinSids);
if (record.isShowStopBtn() && i < vinSids.size()) {
record.setShowStopBtn(true);
} else {
record.setShowStopBtn(false);
}
}else {
} else {
record.setShowStopBtn(false);
}
if (StringUtils.isNotBlank(record.getCustomerImage())) {

17
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeign.java

@ -1,12 +1,15 @@
package com.yxt.anrui.riskcenter.api.loansolutions;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDto;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
/**
* Project: anrui-riskcenter(风控中心) <br/>
@ -29,6 +32,14 @@ import org.springframework.web.bind.annotation.*;
fallback = LoanSolutionsFeignFallback.class)
public interface LoanSolutionsFeign {
@ApiOperation("根据销售订单sid查询金融方案")
@GetMapping("/selectDetails")
ResultBean<SolutionsDetailsVo> selectDetails(@RequestParam("salesOrderSid") String saleOrderSid);
@ApiOperation("保存金融方案")
@PostMapping("/save")
ResultBean save(@RequestBody SolutionsDto dto);
/* @ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<LoanSolutionsVo>> listPage(@RequestBody PagerQuery<LoanSolutionsQuery> pq);

12
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/LoanSolutionsFeignFallback.java

@ -1,5 +1,8 @@
package com.yxt.anrui.riskcenter.api.loansolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDto;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Component;
/**
@ -17,6 +20,15 @@ import org.springframework.stereotype.Component;
*/
@Component
public class LoanSolutionsFeignFallback implements LoanSolutionsFeign {
@Override
public ResultBean<SolutionsDetailsVo> selectDetails(String saleOrderSid) {
return null;
}
@Override
public ResultBean save(SolutionsDto dto) {
return null;
}
/* @Override
public ResultBean<PagerVo<LoanSolutionsVo>> listPage(PagerQuery<LoanSolutionsQuery> pq) {

135
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/app/SolutionsDetailsVo.java

@ -0,0 +1,135 @@
package com.yxt.anrui.riskcenter.api.loansolutions.app;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @Author dimengzhe
* @Date 2023/3/22 11:40
* @Description
*/
@Data
public class SolutionsDetailsVo implements Vo {
private static final long serialVersionUID = 2678358838559733044L;
//金融方案主表
private String type;
private String typeKey;
private Integer isPack;
@ApiModelProperty("产品政策名称")
private String policyName;
@ApiModelProperty("产品政策sid")
private String policySid;
@ApiModelProperty("融资项目总额")
private String loanTotal;
@ApiModelProperty("主车发票价")
private String mainVehicleAmount;
@ApiModelProperty("融资票据")
private String accessoriesAmount;
@ApiModelProperty("挂车金额")
private String trailerAmount;
@ApiModelProperty("购置税")
private String purchaseTax;
@ApiModelProperty("保险金额")
private String premium;
@ApiModelProperty("车损上浮")
private String vehDamageFloat;
@ApiModelProperty("首付款比例")
private String downPayRatio;
@ApiModelProperty("首付金额")
private String downPayAmount;
@ApiModelProperty("贷款金额")
private String loanAmount;
@ApiModelProperty("贷款期数")
private int loanPeriod;
@ApiModelProperty("保证金比例")
private String bondRatio;
@ApiModelProperty("保证金金额")
private String bondAmount;
@ApiModelProperty("厂家贴息")
private String factoryDiscount;
@ApiModelProperty("年利率")
private String policyYearRatio;
@ApiModelProperty("贷款月还")
private String loanPayMoney;
@ApiModelProperty("贷款利息")
private String loanInterest;
//其他融
@ApiModelProperty("其它融名称")
private String otherPolicyName;
@ApiModelProperty("其它融金额")
private String otherPolicyAmount;
@ApiModelProperty("其它融期数")
private Integer otherPolicyPeriod;
@ApiModelProperty("其它融月还")
private String otherPolicyMonthlyRepay;
@ApiModelProperty("其它融利息总额")
private String otherPolicyInterest;
@ApiModelProperty("'融资首付")
private BigDecimal loanDownPay;
@ApiModelProperty("总贷款金额")
private BigDecimal loanAmountTotal;
@ApiModelProperty("期数")
private Integer period;
@ApiModelProperty("月还金额")
private BigDecimal monthlyRepay;
@ApiModelProperty("利息总额")
private BigDecimal interest;
@ApiModelProperty("预计首期还款日")
private String returnTime;
//金融方案费用明细
@ApiModelProperty("融资首付")
private String downPayAmounts;
@ApiModelProperty("贷款保证金")
private String bondAmounts;
@ApiModelProperty("保险保证金")
private String depositPremium;
@ApiModelProperty("落户保证金")
private String depositSettle;
@ApiModelProperty("服务费")
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("代收首年保险费")
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;
}

135
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutions/app/SolutionsDto.java

@ -0,0 +1,135 @@
package com.yxt.anrui.riskcenter.api.loansolutions.app;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @Author dimengzhe
* @Date 2023/3/22 15:02
* @Description
*/
@Data
public class SolutionsDto implements Dto {
private static final long serialVersionUID = 3094344495849727373L;
//金融方案主表
private String saleOrderSid;
private String type;
private String typeKey;
private Integer isPack;
@ApiModelProperty("产品政策名称")
private String policyName;
@ApiModelProperty("产品政策sid")
private String policySid;
@ApiModelProperty("融资项目总额")
private String loanTotal;
@ApiModelProperty("主车发票价")
private String mainVehicleAmount;
@ApiModelProperty("融资票据")
private String accessoriesAmount;
@ApiModelProperty("挂车金额")
private String trailerAmount;
@ApiModelProperty("购置税")
private String purchaseTax;
@ApiModelProperty("保险金额")
private String premium;
@ApiModelProperty("车损上浮")
private String vehDamageFloat;
@ApiModelProperty("首付款比例")
private String downPayRatio;
@ApiModelProperty("首付金额")
private String downPayAmount;
@ApiModelProperty("贷款金额")
private String loanAmount;
@ApiModelProperty("贷款期数")
private int loanPeriod;
@ApiModelProperty("保证金比例")
private String bondRatio;
@ApiModelProperty("保证金金额")
private String bondAmount;
@ApiModelProperty("厂家贴息")
private String factoryDiscount;
@ApiModelProperty("年利率")
private String policyYearRatio;
@ApiModelProperty("贷款月还")
private String loanPayMoney;
@ApiModelProperty("贷款利息")
private String loanInterest;
//其他融
@ApiModelProperty("其它融名称")
private String otherPolicyName;
@ApiModelProperty("其它融金额")
private String otherPolicyAmount;
@ApiModelProperty("其它融期数")
private Integer otherPolicyPeriod;
@ApiModelProperty("其它融月还")
private String otherPolicyMonthlyRepay;
@ApiModelProperty("其它融利息总额")
private String otherPolicyInterest;
@ApiModelProperty("'融资首付")
private BigDecimal loanDownPay;
@ApiModelProperty("总贷款金额")
private BigDecimal loanAmountTotal;
@ApiModelProperty("期数")
private Integer period;
@ApiModelProperty("月还金额")
private BigDecimal monthlyRepay;
@ApiModelProperty("利息总额")
private BigDecimal interest;
@ApiModelProperty("预计首期还款日")
private String returnTime;
//金融方案费用明细
@ApiModelProperty("融资首付")
private String downPayAmounts;
@ApiModelProperty("贷款保证金")
private String bondAmounts;
@ApiModelProperty("保险保证金")
private String depositPremium;
@ApiModelProperty("落户保证金")
private String depositSettle;
@ApiModelProperty("服务费")
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("代收首年保险费")
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;
}

13
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansolutionsotherpolicy/LoanSolutionsOtherpolicy.java

@ -64,5 +64,18 @@ public class LoanSolutionsOtherpolicy extends BaseEntity {
private BigDecimal otherPolicyMonthlyRepay;
@ApiModelProperty("其它融利息总额")
private BigDecimal otherPolicyInterest;
@ApiModelProperty("'融资首付")
private BigDecimal loanDownPay;
@ApiModelProperty("总贷款金额")
private BigDecimal loanAmountTotal;
@ApiModelProperty("期数")
private Integer period;
@ApiModelProperty("月还金额")
private BigDecimal monthlyRepay;
@ApiModelProperty("利息总额")
private BigDecimal interest;
@ApiModelProperty("预计首期还款日")
private String returnTime;
}

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsMapper.java

@ -27,6 +27,8 @@ import java.util.Map;
*/
@Mapper
public interface LoanSolutionsMapper extends BaseMapper<LoanSolutions> {
LoanSolutions selectBySaleOrderSid(String saleOrderSid);
/* IPage<LoanSolutionsVo> selectPageVo(IPage<LoanSolutions> page, @Param(Constants.WRAPPER) Wrapper<LoanSolutions> qw);

84
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsMapper.xml

@ -3,49 +3,55 @@
<mapper namespace="com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<!-- <select id="selectPageVo" resultType="com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsVo">
SELECT *
FROM loan_solutions
<where>
${ew.sqlSegment}
</where>
</select>
<!-- <select id="selectPageVo" resultType="com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsVo">
SELECT *
FROM loan_solutions
<where>
${ew.sqlSegment}
</where>
</select>
<update id="updateAppFinanceProject" parameterType="map">
UPDATE loan_solutions SET packingProjectKey=#{packingProjectKey},packingProject=#{packingProject},mainVehicleAmount=#{mainVehicleAmount},
trailerAmount=#{trailerAmount},topcoatAmount=#{topcoatAmount},accessoriesAmount=#{accessoriesAmount},purchaseTax=#{purchaseTax},
insuredAmount=#{insuredAmount},otherAmount=#{otherAmount},financingRemarks=#{financingRemarks},financingAmount=#{financingAmount}
WHERE sid=#{sid}
</update>
<update id="updateAppFinanceProject" parameterType="map">
UPDATE loan_solutions SET packingProjectKey=#{packingProjectKey},packingProject=#{packingProject},mainVehicleAmount=#{mainVehicleAmount},
trailerAmount=#{trailerAmount},topcoatAmount=#{topcoatAmount},accessoriesAmount=#{accessoriesAmount},purchaseTax=#{purchaseTax},
insuredAmount=#{insuredAmount},otherAmount=#{otherAmount},financingRemarks=#{financingRemarks},financingAmount=#{financingAmount}
WHERE sid=#{sid}
</update>
<update id="updateAppAdvance" parameterType="map">
UPDATE loan_solutions SET trailerAdvance=#{trailerAdvance},topcoatAdvance=#{topcoatAdvance}
WHERE sid=#{sid}
</update>
<update id="updateAppAdvance" parameterType="map">
UPDATE loan_solutions SET trailerAdvance=#{trailerAdvance},topcoatAdvance=#{topcoatAdvance}
WHERE sid=#{sid}
</update>
<update id="updateAppFinBack" parameterType="map">
UPDATE loan_solutions SET bankAccess=#{bankAccess},productPolicy=#{productPolicy},factoryDiscount=#{factoryDiscount},downPayRatio=#{downPayRatio},
downPayPrincipal=#{downPayPrincipal},loanRatio=#{loanRatio},loanAmount=#{loanAmount},bondRatio=#{bondRatio},bondAmount=#{bondAmount},
bondMethod=#{bondMethod},loanPeriod=#{loanPeriod},loanPayMoney=#{loanPayMoney},policyYearRatio=#{policyYearRatio},loanInterest=#{loanInterest},
solutionsRemarks=#{solutionsRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppFinBack" parameterType="map">
UPDATE loan_solutions SET bankAccess=#{bankAccess},productPolicy=#{productPolicy},factoryDiscount=#{factoryDiscount},downPayRatio=#{downPayRatio},
downPayPrincipal=#{downPayPrincipal},loanRatio=#{loanRatio},loanAmount=#{loanAmount},bondRatio=#{bondRatio},bondAmount=#{bondAmount},
bondMethod=#{bondMethod},loanPeriod=#{loanPeriod},loanPayMoney=#{loanPayMoney},policyYearRatio=#{policyYearRatio},loanInterest=#{loanInterest},
solutionsRemarks=#{solutionsRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppDownPay" parameterType="map">
UPDATE loan_solutions SET downPay=#{downPay},downPayNo=#{downPayNo},downPayInterest=#{downPayInterest},downPayMoney=#{downPayMoney},
downPayFinancier=#{downPayFinancier},downPayRemarks=#{downPayRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppDownPay" parameterType="map">
UPDATE loan_solutions SET downPay=#{downPay},downPayNo=#{downPayNo},downPayInterest=#{downPayInterest},downPayMoney=#{downPayMoney},
downPayFinancier=#{downPayFinancier},downPayRemarks=#{downPayRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppCorpAdvance" parameterType="map">
UPDATE loan_solutions SET advanceAmount=#{advanceAmount},advanceTimeLimit=#{advanceTimeLimit},advanceAllInterest=#{advanceAllInterest},
c_repayMoney=#{c_repayMoney},c_repayRemarks=#{c_repayRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppCorpAdvance" parameterType="map">
UPDATE loan_solutions SET advanceAmount=#{advanceAmount},advanceTimeLimit=#{advanceTimeLimit},advanceAllInterest=#{advanceAllInterest},
c_repayMoney=#{c_repayMoney},c_repayRemarks=#{c_repayRemarks}
WHERE sid=#{sid}
</update>
<update id="updateAppRePayByMap" parameterType="map">
UPDATE loan_solutions SET prophase=#{prophase},prophasePayMoney=#{prophasePayMoney},residualsPayMoney=#{residualsPayMoney},
modeOfRePay=#{modeOfRePay}
WHERE sid=#{sid}
</update>-->
<update id="updateAppRePayByMap" parameterType="map">
UPDATE loan_solutions SET prophase=#{prophase},prophasePayMoney=#{prophasePayMoney},residualsPayMoney=#{residualsPayMoney},
modeOfRePay=#{modeOfRePay}
WHERE sid=#{sid}
</update>-->
<select id="selectBySaleOrderSid" resultType="com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions">
select *
from loan_solutions
where salesOrderSid = #{saleOrderSid}
</select>
</mapper>

13
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsRest.java

@ -1,6 +1,9 @@
package com.yxt.anrui.riskcenter.biz.loansolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDto;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
@ -27,6 +30,16 @@ public class LoanSolutionsRest implements LoanSolutionsFeign {
@Autowired
private LoanSolutionsService loanSolutionsService;
@Override
public ResultBean<SolutionsDetailsVo> selectDetails(String saleOrderSid) {
return loanSolutionsService.selectDetails(saleOrderSid);
}
@Override
public ResultBean save(SolutionsDto dto) {
return loanSolutionsService.saveDto(dto);
}
/* @Override
public ResultBean<PagerVo<LoanSolutionsVo>> listPage(@RequestBody PagerQuery<LoanSolutionsQuery> pq) {
ResultBean rb = ResultBean.fireFail();

67
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java

@ -1,7 +1,16 @@
package com.yxt.anrui.riskcenter.biz.loansolutions;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDto;
import com.yxt.anrui.riskcenter.api.loansolutionsdetail.LoanSolutionsDetail;
import com.yxt.anrui.riskcenter.api.loansolutionsotherpolicy.LoanSolutionsOtherpolicy;
import com.yxt.anrui.riskcenter.biz.loansolutionsdetail.LoanSolutionsDetailService;
import com.yxt.anrui.riskcenter.biz.loansolutionsotherpolicy.LoanSolutionsOtherpolicyService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
@ -19,6 +28,60 @@ import org.springframework.stereotype.Service;
*/
@Service
public class LoanSolutionsService extends MybatisBaseService<LoanSolutionsMapper, LoanSolutions> {
@Autowired
private LoanSolutionsOtherpolicyService loanSolutionsOtherpolicyService;
@Autowired
private LoanSolutionsDetailService loanSolutionsDetailService;
public ResultBean<SolutionsDetailsVo> selectDetails(String saleOrderSid) {
ResultBean<SolutionsDetailsVo> rb = ResultBean.fireFail();
SolutionsDetailsVo solutionsDetailsVo = new SolutionsDetailsVo();
LoanSolutions loanSolutions = baseMapper.selectBySaleOrderSid(saleOrderSid);
BeanUtil.copyProperties(loanSolutions, solutionsDetailsVo);
return rb.success().setData(solutionsDetailsVo);
}
public ResultBean saveDto(SolutionsDto dto) {
ResultBean rb = ResultBean.fireFail();
//验证必填
//融资项目总额
//首付比例
//首付金额 = 首付比例*融资项目总额
//产品贷款金额 = 融资项目总额-首付比例
//贷款保证金比例
//贷款保证金 = 贷款金额*保证金比例
//厂家贴息
//年利率计算
//月还金额计算
//利息总额计算
//查询金融方案
String saleOrderSid = dto.getSaleOrderSid();
LoanSolutions loanSolutions = baseMapper.selectBySaleOrderSid(saleOrderSid);
if (loanSolutions == null) {
loanSolutions = new LoanSolutions();
BeanUtil.copyProperties(dto, loanSolutions);
baseMapper.insert(loanSolutions);
//其他融
LoanSolutionsOtherpolicy loanSolutionsOtherpolicy = new LoanSolutionsOtherpolicy();
loanSolutionsOtherpolicy.setSolutionsSid(loanSolutions.getSid());
BeanUtil.copyProperties(dto, loanSolutionsOtherpolicy);
//费用明细
LoanSolutionsDetail loanSolutionsDetail = new LoanSolutionsDetail();
loanSolutionsDetail.setSolutionsSid(loanSolutions.getSid());
BeanUtil.copyProperties(dto, loanSolutionsDetail);
loanSolutionsDetailService.insert(loanSolutionsDetail);
loanSolutionsOtherpolicyService.insert(loanSolutionsOtherpolicy);
} else {
//修改其他融
//修改费用明细
//
}
return null;
}
/* @Autowired
private LoanSolutionsTopService loanSolutionsTopService;
@Autowired
@ -529,7 +592,7 @@ public class LoanSolutionsService extends MybatisBaseService<LoanSolutionsMapper
* @param orderSid
* @return
*//*
*//* public AppLoanSolutionsVo getAppSumSolutionsByOrderSid(String orderSid) {
*//* public AppLoanSolutionsVo getAppSumSolutionsByOrderSid(String orderSid) {
LoanLoadpriceVo loanLoadpriceVo = loanLoadpriceService.selectByOrderSid(orderSid);
LoanSolutions loanSolutionsVo = baseMapper.selectByLoanPriceSid(loanLoadpriceVo.getSid());
if (loanSolutionsVo == null) {
@ -614,7 +677,7 @@ public class LoanSolutionsService extends MybatisBaseService<LoanSolutionsMapper
return vo;
}*//*
*//**
*//**
* 更新手机端融资项目
* @param map
* @return

3
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderStateVo.java

@ -86,4 +86,7 @@ public class OrderStateVo implements Vo {
@ApiModelProperty("上装的采购类型是否允许修改")
@JsonProperty("isMain")
private boolean isMain;
@ApiModelProperty("是否有金融方案按钮")
private boolean financeState;
}

4
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/solutions/SolutionsFeign.java

@ -15,4 +15,8 @@ import org.springframework.cloud.openfeign.FeignClient;
path = "/risk/v1/solutions",
fallback = SolutionsFeignFallback.class)
public interface SolutionsFeign {
}

10
doc/databases/risk_center.sql

@ -959,6 +959,12 @@ CREATE TABLE `loan_solutions_otherPolicy`
`otherPolicyPeriod` int(10) DEFAULT NULL COMMENT '其它融期数',
`otherPolicyMonthlyRepay` decimal(10, 2) DEFAULT NULL COMMENT '其它融月还',
`otherPolicyInterest` decimal(10, 2) DEFAULT NULL COMMENT '其它融利息总额',
`loanDownPay` decimal(10, 2) DEFAULT NULL COMMENT '融资首付',
`loanAmountTotal` decimal(10, 2) DEFAULT NULL COMMENT '总贷款金额',
`period` int(32) DEFAULT NULL COMMENT '期数',
`monthlyRepay` decimal(10, 2) DEFAULT NULL COMMENT '月还金额',
`interest` decimal(10, 2) DEFAULT NULL COMMENT '利息总额',
`returnTime` varchar(64) DEFAULT NULL COMMENT '预计首期还款日',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
@ -980,8 +986,8 @@ CREATE TABLE `loan_solutions_detail`
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`solutionsSid` VARCHAR(64) DEFAULT NULL COMMENT '主产品方案sid',
`downPayAmount` decimal(10, 2) DEFAULT NULL COMMENT '融资首付',
`bondAmount` decimal(10, 2) DEFAULT NULL COMMENT '贷款保证金',
`downPayAmounts` decimal(10, 2) DEFAULT NULL COMMENT '融资首付',
`bondAmounts` decimal(10, 2) DEFAULT NULL COMMENT '贷款保证金',
`depositPremium` decimal(10, 2) DEFAULT NULL COMMENT '保险保证金',
`depositSettle` decimal(10, 2) DEFAULT NULL COMMENT '落户保证金',
`serviceAmount` decimal(10, 2) DEFAULT NULL COMMENT '服务费',

Loading…
Cancel
Save