Browse Source

金融产品政策

master
dimengzhe 2 years ago
parent
commit
755f482754
  1. 2
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicy.java
  2. 8
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicyFeign.java
  3. 59
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicyVos.java
  4. 4
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinpolicy/LoanFinPolicyVos.java
  5. 3
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyMapper.java
  6. 6
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyMapper.xml
  7. 14
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyRest.java
  8. 8
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyService.java
  9. 3
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml
  10. 11
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java
  11. 105
      doc/databases/risk_center.sql

2
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicy.java

@ -57,8 +57,6 @@ public class LoanFinOtherPolicy extends BaseEntity {
private int useSate;
@ApiModelProperty("风控状态:1禁用 0正常 风控中心设置的状态")
private int riskState;
@ApiModelProperty("是否有其他融:1有,0无")
private int isOtherProduct;
@ApiModelProperty("适用销售部门sids(逗号分隔)")
private String useDeptSids;
@ApiModelProperty("适用销售部门名称(逗号分隔)")

8
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicyFeign.java

@ -1,7 +1,11 @@
package com.yxt.anrui.riskcenter.api.loanfinotherPolicy;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @description: 其他融产品
@ -15,4 +19,8 @@ import org.springframework.cloud.openfeign.FeignClient;
path = "v1/LoanFinOtherPolicy",
fallback = LoanFinOtherPolicyFeignFallback.class)
public interface LoanFinOtherPolicyFeign {
@GetMapping("details")
@ApiOperation("详情")
ResultBean<LoanFinOtherPolicyVos> details(@RequestParam("sid") String sid);
}

59
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinotherPolicy/LoanFinOtherPolicyVos.java

@ -0,0 +1,59 @@
package com.yxt.anrui.riskcenter.api.loanfinotherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.UseDept;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2023/7/11
**/
@Data
public class LoanFinOtherPolicyVos {
@ApiModelProperty("资方名称")
private String bankShortName;
@ApiModelProperty("其他融名称(资方+产品类别+最高融资比例+期数)")
private String otherPolicyName;
@ApiModelProperty("资方sid")
private String bankSid;
@ApiModelProperty("主产品sid")
private String mainPolicySid;
@ApiModelProperty("适用销售部门sids(逗号分隔)")
private String useDeptSids;
@ApiModelProperty("适用销售部门名称(逗号分隔)")
private String useDeptNames;
@ApiModelProperty("适用销售部门List")
private List<UseDept> useDeptList = new ArrayList<>();
@ApiModelProperty("产品类别key")
private String productTypeKey;
@ApiModelProperty("产品类别value")
private String productTypeValue;
@ApiModelProperty("业务类型key")
private String busTypeKey;
@ApiModelProperty("业务类型value")
private String busTypeValue;
@ApiModelProperty("车辆大类key")
private String vehCategoryKey;
@ApiModelProperty("车辆大类value")
private String vehCategoryValue;
@ApiModelProperty("车辆功能key")
private String vehTypeKey;
@ApiModelProperty("车辆功能value")
private String vehTypeValue;
@ApiModelProperty("最高融资额比例(%)")
private String maxLoanRatio;
@ApiModelProperty("最高融资额")
private String maxLoanAmount;
@ApiModelProperty("期数")
private int period;
private String periodKey;
@ApiModelProperty("年利率(%)")
private String yearRatio;
@ApiModelProperty("有效期至")
private String validDateTo;
}

4
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinpolicy/LoanFinPolicyVos.java

@ -1,5 +1,6 @@
package com.yxt.anrui.riskcenter.api.loanfinpolicy;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -13,6 +14,8 @@ import lombok.Data;
public class LoanFinPolicyVos implements Vo {
private static final long serialVersionUID = 7126087240752513932L;
private String sid;
@ApiModelProperty("其他融sid")
private String otherPolicySid;
@ApiModelProperty("报备状态")
private String filingStateValue;
@ApiModelProperty("风控状态")
@ -52,5 +55,6 @@ public class LoanFinPolicyVos implements Vo {
@ApiModelProperty("名义/留购价款")
private String nominalPrice;
@ApiModelProperty("是否有其他融")
@JsonProperty("isOtherProduct")
private boolean isOtherProduct;
}

3
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyMapper.java

@ -2,6 +2,7 @@ package com.yxt.anrui.riskcenter.biz.loanfinotherPolicy;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicyVos;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@ -18,4 +19,6 @@ public interface LoanFinOtherPolicyMapper extends BaseMapper<LoanFinOtherPolicy>
int deleteMainSid(String sid);
LoanFinOtherPolicy selectByMainSid(String sid);
LoanFinOtherPolicyVos details(String sid);
}

6
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyMapper.xml

@ -22,4 +22,10 @@
from loan_fin_otherpolicy
where mainPolicySid = #{mainPolicySid}
</select>
<select id="details" resultType="com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicyVos">
select *
from loan_fin_otherpolicy
where sid = #{sid}
</select>
</mapper>

14
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyRest.java

@ -1,6 +1,10 @@
package com.yxt.anrui.riskcenter.biz.loanfinotherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicyFeign;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicyVos;
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;
import org.springframework.web.bind.annotation.RestController;
@ -12,5 +16,13 @@ import org.springframework.web.bind.annotation.RestController;
@Api(tags = "其他融产品")
@RestController
@RequestMapping("v1/LoanFinOtherPolicy")
public class LoanFinOtherPolicyRest {
public class LoanFinOtherPolicyRest implements LoanFinOtherPolicyFeign {
@Autowired
private LoanFinOtherPolicyService loanFinOtherPolicyService;
@Override
public ResultBean<LoanFinOtherPolicyVos> details(String sid) {
return loanFinOtherPolicyService.details(sid);
}
}

8
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherPolicy/LoanFinOtherPolicyService.java

@ -1,7 +1,9 @@
package com.yxt.anrui.riskcenter.biz.loanfinotherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicy;
import com.yxt.anrui.riskcenter.api.loanfinotherPolicy.LoanFinOtherPolicyVos;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.List;
@ -32,4 +34,10 @@ public class LoanFinOtherPolicyService extends MybatisBaseService<LoanFinOtherPo
public LoanFinOtherPolicy selectByMainSid(String sid) {
return baseMapper.selectByMainSid(sid);
}
public ResultBean<LoanFinOtherPolicyVos> details(String sid) {
ResultBean<LoanFinOtherPolicyVos> rb = ResultBean.fireFail();
LoanFinOtherPolicyVos loanFinOtherPolicyVos = baseMapper.details(sid);
return rb.success().setData(loanFinOtherPolicyVos);
}
}

3
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml

@ -34,7 +34,8 @@
case lfp.isOtherProduct
when 1 then true
when 0 then false
end as isOtherProduct
end as isOtherProduct,
lfop.sid as otherPolicySid
from loan_fin_policy lfp
left join loan_fin_otherpolicy lfop on lfp.sid = lfop.mainPolicySid
<where>

11
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java

@ -76,12 +76,15 @@ public class LoanFinPolicyService extends MybatisBaseService<LoanFinPolicyMapper
loanFinPolicy.setCreateOrgName(useOrgName);
loanFinPolicy.setCreateBySid(dto.getUserSid());
loanFinPolicy.setOrgSidPath(orgPath);
if (dto.isOtherProduct()) {
if (dto.isOtherProduct()) {//有其他融
loanFinPolicy.setIsOtherProduct(1);
LoanFinOtherPolicy loanFinOtherPolicy = new LoanFinOtherPolicy();
BeanUtil.copyProperties(dto, loanFinOtherPolicy, "sid");
LoanFinOtherPolicyDto loanFinOtherPolicyDto = dto.getLoanFinOtherPolicy();
BeanUtil.copyProperties(loanFinOtherPolicyDto, loanFinOtherPolicy);
//其它融名称=资方+产品类别+最高融资比例+期数
String name = loanFinOtherPolicy.getBankShortName() + loanFinOtherPolicy.getProductTypeValue() + loanFinOtherPolicy.getMaxLoanRatio() + loanFinOtherPolicy.getPeriod();
loanFinOtherPolicy.setOtherPolicyName(name);
loanFinOtherPolicy.setMainPolicySid(loanFinPolicy.getSid());
loanFinOtherPolicy.setUseDeptSids(deptSids);
loanFinOtherPolicy.setUseDeptNames(deptNames);
@ -126,6 +129,9 @@ public class LoanFinPolicyService extends MybatisBaseService<LoanFinPolicyMapper
BeanUtil.copyProperties(loanFinOtherPolicyDto, loanFinOtherPolicy);
loanFinOtherPolicy.setUseDeptSids(deptSids);
loanFinOtherPolicy.setUseDeptNames(deptNames);
//其它融名称=资方+产品类别+最高融资比例+期数
String name = loanFinOtherPolicy.getBankShortName() + loanFinOtherPolicy.getProductTypeValue() + loanFinOtherPolicy.getMaxLoanRatio() + loanFinOtherPolicy.getPeriod();
loanFinOtherPolicy.setOtherPolicyName(name);
loanFinOtherPolicyService.updateById(loanFinOtherPolicy);
} else {
loanFinOtherPolicy = new LoanFinOtherPolicy();
@ -139,6 +145,9 @@ public class LoanFinPolicyService extends MybatisBaseService<LoanFinPolicyMapper
loanFinOtherPolicy.setUseOrgName(useOrgName);
loanFinOtherPolicy.setCreateOrgName(useOrgName);
loanFinOtherPolicy.setCreateBySid(dto.getUserSid());
//其它融名称=资方+产品类别+最高融资比例+期数
String name = loanFinOtherPolicy.getBankShortName() + loanFinOtherPolicy.getProductTypeValue() + loanFinOtherPolicy.getMaxLoanRatio() + loanFinOtherPolicy.getPeriod();
loanFinOtherPolicy.setOtherPolicyName(name);
loanFinOtherPolicyService.insert(loanFinOtherPolicy);
}
}

105
doc/databases/risk_center.sql

@ -1022,110 +1022,6 @@ CREATE TABLE `loan_solutions_detail`
DEFAULT CHARSET = utf8 COMMENT ='金融方案表(费用明细)';
-- 金融产品政策
DROP TABLE IF EXISTS `loan_fin_policy`;
CREATE TABLE `loan_fin_policy`
(
`id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(32) DEFAULT '0' COMMENT '版本锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用',
`state` int(32) DEFAULT '1' COMMENT '状态',
`isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`policyName` VARCHAR(255) DEFAULT NULL COMMENT '政策名称:组合(资方简称+(担保/非担保)+首付比例+保证金比例+是否打包),如中车(担保)30+0打包',
`bankSid` VARCHAR(255) DEFAULT NULL COMMENT '资方sid',
`bankShortName` VARCHAR(255) DEFAULT NULL COMMENT '资方名称',
`busTypeKey` VARCHAR(255) DEFAULT NULL COMMENT '业务类型key',
`busTypeValue` VARCHAR(255) DEFAULT NULL COMMENT '业务类型value',
`vehCategoryKey` VARCHAR(255) DEFAULT NULL COMMENT '车辆大类key',
`vehCategoryValue` VARCHAR(255) DEFAULT NULL COMMENT '车辆大类value',
`vehTypeKey` VARCHAR(255) DEFAULT NULL COMMENT '车辆功能key',
`vehTypeValue` VARCHAR(255) DEFAULT NULL COMMENT '车辆功能value',
`isPack` int(64) DEFAULT NULL COMMENT '是否打包:1打包、2不打包',
`guaranteeTypeKey` VARCHAR(255) DEFAULT NULL COMMENT '担保类型key',
`guaranteeTypeValue` VARCHAR(255) DEFAULT NULL COMMENT '担保类型value',
`isVehFloat` int(32) DEFAULT NULL COMMENT '是否车损上浮',
`vehAccidentAmount` decimal(10, 2) DEFAULT NULL COMMENT '单车意外险',
`downPayRatio` VARCHAR(255) DEFAULT NULL COMMENT '首付比例(%)',
`downPayRatioLeast` VARCHAR(255) DEFAULT NULL COMMENT '最低首付比例(%)',
`bondRatio` VARCHAR(255) DEFAULT NULL COMMENT '保证金比例(%)',
`period` int(64) DEFAULT NULL COMMENT '期数',
`yearRatio` varchar(255) DEFAULT NULL COMMENT '标准年利率(%)',
`serviceAmountTypeKey` varchar(255) DEFAULT NULL COMMENT '服务费类型key',
`serviceAmountTypeValue` varchar(255) DEFAULT NULL COMMENT '服务费类型value',
`serviceAmount` decimal(10, 0) DEFAULT NULL COMMENT '服务费',
`depositPremium` decimal(10, 0) DEFAULT NULL COMMENT '保险保证金',
`depositSettle` decimal(10, 0) DEFAULT NULL COMMENT '落户保证金',
`nominalPrice` decimal(10, 0) DEFAULT NULL COMMENT '名义/留购价款',
`validDateTo` varchar(255) DEFAULT NULL COMMENT '有效期至',
`filingState` int(64) DEFAULT NULL COMMENT '报备状态:1已报备,0未报备,2报备中',
`useSate` int(64) DEFAULT NULL COMMENT '使用状态:1停用 0正常 各分公司设置的状态',
`riskState` int(64) DEFAULT NULL COMMENT '风控状态:1禁用 0正常 风控中心设置的状态',
`isOtherProduct` int(64) DEFAULT NULL COMMENT '是否有其他融:1有,0无',
`useDeptSids` text DEFAULT NULL COMMENT '适用销售部门sids(逗号分隔)',
`useDeptNames` text DEFAULT NULL COMMENT '适用销售部门名称(逗号分隔)',
`createOrgSid` varchar(255) DEFAULT NULL COMMENT '创建组织sid',
`createOrgName` varchar(255) DEFAULT NULL COMMENT '创建组织名称',
`useOrgSid` varchar(255) DEFAULT NULL COMMENT '使用组织sid',
`useOrgName` varchar(255) DEFAULT NULL COMMENT '使用组织名称',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='金融产品政策';
-- 其他融产品
DROP TABLE IF EXISTS `loan_fin_otherPolicy`;
CREATE TABLE `loan_fin_otherPolicy`
(
`id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(32) DEFAULT '0' COMMENT '版本锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用',
`state` int(32) DEFAULT '1' COMMENT '状态',
`isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`otherPolicyName` VARCHAR(255) DEFAULT NULL COMMENT '产品名称:组合(资方+产品类别+最高融资比例+期数)',
`bankSid` VARCHAR(255) DEFAULT NULL COMMENT '资方sid',
`bankShortName` VARCHAR(255) DEFAULT NULL COMMENT '资方名称',
`mainPolicySid` VARCHAR(64) DEFAULT NULL COMMENT '主产品sid(可以为空)',
`productTypeKey` VARCHAR(64) DEFAULT NULL COMMENT '产品类别Key',
`productTypeValue` VARCHAR(64) DEFAULT NULL COMMENT '产品类别value',
`busTypeKey` VARCHAR(255) DEFAULT NULL COMMENT '业务类型key',
`busTypeValue` VARCHAR(255) DEFAULT NULL COMMENT '业务类型value',
`vehCategoryKey` VARCHAR(255) DEFAULT NULL COMMENT '车辆大类key',
`vehCategoryValue` VARCHAR(255) DEFAULT NULL COMMENT '车辆大类value',
`vehTypeKey` VARCHAR(255) DEFAULT NULL COMMENT '车辆功能key',
`vehTypeValue` VARCHAR(255) DEFAULT NULL COMMENT '车辆功能value',
`maxLoanRatio` VARCHAR(255) DEFAULT NULL COMMENT '最高融资额比例(%)',
`maxLoanAmount` decimal(10, 0) DEFAULT NULL COMMENT '最高融资额',
`period` int(64) DEFAULT NULL COMMENT '期数',
`yearRatio` varchar(255) DEFAULT NULL COMMENT '年利率(%)',
`validDateTo` varchar(255) DEFAULT NULL COMMENT '有效期至',
`filingState` int(64) DEFAULT NULL COMMENT '报备状态:1已报备,0未报备',
`useSate` int(64) DEFAULT NULL COMMENT '使用状态:1停用 0正常 各分公司设置的状态',
`riskState` int(64) DEFAULT NULL COMMENT '风控状态:1禁用 0正常 风控中心设置的状态',
`isOtherProduct` int(64) DEFAULT NULL COMMENT '是否有其他融:1有,0无',
`useDeptSids` text DEFAULT NULL COMMENT '适用销售部门sids(逗号分隔)',
`useDeptNames` text DEFAULT NULL COMMENT '适用销售部门名称(逗号分隔)',
`createOrgSid` varchar(255) DEFAULT NULL COMMENT '创建组织sid',
`createOrgName` varchar(255) DEFAULT NULL COMMENT '创建组织名称',
`useOrgSid` varchar(255) DEFAULT NULL COMMENT '使用组织sid',
`useOrgName` varchar(255) DEFAULT NULL COMMENT '使用组织名称',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='其他融产品';
-- ------------------------------------------新
-- 金融产品政策
@ -1228,7 +1124,6 @@ CREATE TABLE `loan_fin_otherPolicy`
`filingState` int(64) DEFAULT NULL COMMENT '报备状态:1已报备,0未报备',
`useSate` int(64) DEFAULT NULL COMMENT '使用状态:1停用 0正常 各分公司设置的状态',
`riskState` int(64) DEFAULT NULL COMMENT '风控状态:1禁用 0正常 风控中心设置的状态',
`isOtherProduct` int(64) DEFAULT NULL COMMENT '是否有其他融:1有,0无',
`useDeptSids` text DEFAULT NULL COMMENT '适用销售部门sids(逗号分隔)',
`useDeptNames` text DEFAULT NULL COMMENT '适用销售部门名称(逗号分隔)',
`createOrgSid` varchar(255) DEFAULT NULL COMMENT '创建组织sid',

Loading…
Cancel
Save