Commit 1448b107 by jianan

新单跟进v2

parent f15d3ace
......@@ -43,39 +43,54 @@ public class PolicyAdditional implements Serializable {
private String planBizId;
/**
* 保险附加产品唯一业务ID(中台保险附加产品业务id,冗余)
* 产品上架信息表唯一业务ID
*/
private String additionalProductBizId;
private String productLaunchBizId;
/**
* 保险附加产品名称(中台保险附加产品名称,冗余)
* 品上架信息表名称
*/
private String addProductName;
private String productLaunchName;
/**
* 货币(字典)
* 付款频率(字典)
*/
private String currency;
private String paymentFrequency;
/**
* 保障年期
*/
private String guaranteePeriod;
/**
* 保单币种
*/
private String policyCurrency;
/**
* 供款期数
*/
private String issueNumber;
/**
* 保费
*/
private BigDecimal premium;
private BigDecimal eachIssuePremium;
/**
* 保额
* 保额(重疾)
*/
private BigDecimal sumInsured;
/**
* 保障地区(字典)
* 保障级别
*/
private String guaranteeRegion;
private String protectionLevel;
/**
* 等级(字典)
* 保障地区(字典)
*/
private String level;
private String guaranteeRegion;
/**
* 自付额(字典)
......@@ -88,6 +103,11 @@ public class PolicyAdditional implements Serializable {
private String additionalSafeguards;
/**
* 保单征费
*/
private BigDecimal policyLevy;
/**
* 通用备注
*/
private String remark;
......
......@@ -36,7 +36,7 @@ public class PolicyAdditionalServiceImpl extends ServiceImpl<PolicyAdditionalMap
PolicyAdditional policyAdditional = new PolicyAdditional();
BeanUtils.copyProperties(policyAdditionalAddRequest, policyAdditional);
policyAdditional.setAdditionalProductBizId(RandomStringGenerator.generateBizId16("policy_additional"));
policyAdditional.setPolicyAdditionalBizId(RandomStringGenerator.generateBizId16("policy_additional"));
Date now = new Date();
policyAdditional.setCreateTime(now);
......
......@@ -22,6 +22,7 @@ import com.yd.csf.service.service.*;
import com.yd.csf.service.dao.PolicyFollowMapper;
import com.yd.csf.service.utils.AsyncQueryUtil;
import com.yd.csf.service.utils.GSONUtil;
import com.yd.csf.service.vo.PolicyAdditionalVO;
import com.yd.csf.service.vo.PolicyFollowDetailVO;
import com.yd.csf.service.vo.PolicyFollowVO;
import lombok.extern.slf4j.Slf4j;
......@@ -334,12 +335,12 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
detailVO.setBrokerList(brokerList);
// 查询附加险列表
List<PolicyAdditional> additionalList = policyAdditionalService.list(
new QueryWrapper<PolicyAdditional>()
.eq("policy_biz_id", policyBizId)
.eq("is_deleted", 0)
);
detailVO.setAdditionalList(additionalList);
List<PolicyAdditional> additionalList = policyAdditionalService.lambdaQuery()
.eq(PolicyAdditional::getPolicyBizId, policyBizId).list();
List<PolicyAdditionalVO> additionalVOList = additionalList.stream()
.map(PolicyAdditionalVO::objToVo)
.collect(Collectors.toList());
detailVO.setAdditionalList(additionalVOList);
return detailVO;
}
......@@ -524,10 +525,10 @@ public class PolicyFollowServiceImpl extends ServiceImpl<PolicyFollowMapper, Pol
if (CollUtil.isNotEmpty(additionalList)) {
for (PolicyAdditional additional : additionalList) {
PolicyReportData.AdditionalInsurance additionalInsurance = new PolicyReportData.AdditionalInsurance();
additionalInsurance.setName(additional.getAddProductName());
additionalInsurance.setName(additional.getProductLaunchName());
additionalInsurance.setPaymentTerm(null);
additionalInsurance.setCurrency(getCurrencyValue(additional.getCurrency()));
additionalInsurance.setFirstYearAmount(additional.getPremium());
additionalInsurance.setCurrency(getCurrencyValue(additional.getPolicyCurrency()));
additionalInsurance.setFirstYearAmount(additional.getEachIssuePremium());
additionalInsurances.add(additionalInsurance);
}
}
......
package com.yd.csf.service.vo;
import com.yd.csf.feign.enums.PaymentFrequencyEnum;
import com.yd.csf.service.model.Fna;
import com.yd.csf.service.model.PolicyAdditional;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.beans.BeanUtils;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 保单附加险VO
*/
@Data
@Schema(description = "保单附加险信息")
public class PolicyAdditionalVO implements Serializable {
/**
* 主键ID
*/
@Schema(description = "policy additional id")
private Long id;
/**
* 新单跟进-保单附加险信息表唯一业务ID
*/
@Schema(description = "新单跟进-保单附加险信息表唯一业务ID")
private String policyAdditionalBizId;
/**
* 新单跟进业务ID
*/
@Schema(description = "新单跟进业务ID")
private String policyBizId;
/**
* 保单号
*/
@Schema(description = "保单号")
private String policyNo;
/**
* 产品计划信息表唯一业务ID
*/
@Schema(description = "产品计划信息表唯一业务ID")
private String planBizId;
/**
* 产品上架信息表唯一业务ID
*/
@Schema(description = "产品上架信息表唯一业务ID")
private String productLaunchBizId;
/**
* 产品上架信息表名称
*/
@Schema(description = "品上架信息表名称")
private String productLaunchName;
/**
* 付款频率(字典)
*/
@Schema(description = "付款频率(字典)")
private String paymentFrequency;
/**
* 保障年期
*/
@Schema(description = "保障年期")
private String guaranteePeriod;
/**
* 保单币种
*/
@Schema(description = "保单币种")
private String policyCurrency;
/**
* 供款期数
*/
@Schema(description = "供款期数")
private String issueNumber;
/**
* 每期保费
*/
@Schema(description = "每期保费")
private BigDecimal eachIssuePremium;
private static final long serialVersionUID = 1L;
/**
* 对象转封装类
*
* @param policyAdditional
* @return
*/
public static PolicyAdditionalVO objToVo(PolicyAdditional policyAdditional) {
if (policyAdditional == null) {
return null;
}
PolicyAdditionalVO policyAdditionalVO = new PolicyAdditionalVO();
BeanUtils.copyProperties(policyAdditional, policyAdditionalVO);
return policyAdditionalVO;
}
/**
* 根据付款频率字典值获取中文标签
*
* @param paymentFrequency 付款频率字典值
* @return 中文标签
*/
public static String getPaymentFrequencyLabel(String paymentFrequency) {
if (paymentFrequency == null) {
return null;
}
for (PaymentFrequencyEnum enumItem : PaymentFrequencyEnum.values()) {
if (enumItem.getItemValue().equals(paymentFrequency)) {
return enumItem.getItemLabel();
}
}
return paymentFrequency;
}
}
......@@ -2,7 +2,6 @@ package com.yd.csf.service.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yd.csf.service.enums.PolicyFollowStatusEnum;
import com.yd.csf.service.model.PolicyAdditional;
import com.yd.csf.service.model.PolicyBroker;
import com.yd.csf.service.model.PolicyFollow;
import io.swagger.v3.oas.annotations.media.Schema;
......@@ -431,7 +430,7 @@ public class PolicyFollowDetailVO implements Serializable {
* 附加险列表
*/
@Schema(description = "附加险列表")
private List<PolicyAdditional> additionalList;
private List<PolicyAdditionalVO> additionalList;
/**
* 通用备注
......
......@@ -2,7 +2,7 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yd.csf.service.dao.PolicyAdditionalMapper">
<mapper namespace="generator.mapper.PolicyAdditionalMapper">
<resultMap id="BaseResultMap" type="com.yd.csf.service.model.PolicyAdditional">
<id property="id" column="id" />
......@@ -10,15 +10,19 @@
<result property="policyBizId" column="policy_biz_id" />
<result property="policyNo" column="policy_no" />
<result property="planBizId" column="plan_biz_id" />
<result property="additionalProductBizId" column="additional_product_biz_id" />
<result property="addProductName" column="add_product_name" />
<result property="currency" column="currency" />
<result property="premium" column="premium" />
<result property="productLaunchBizId" column="product_launch_biz_id" />
<result property="productLaunchName" column="product_launch_name" />
<result property="paymentFrequency" column="payment_frequency" />
<result property="guaranteePeriod" column="guarantee_period" />
<result property="policyCurrency" column="policy_currency" />
<result property="issueNumber" column="issue_number" />
<result property="eachIssuePremium" column="each_issue_premium" />
<result property="sumInsured" column="sum_insured" />
<result property="protectionLevel" column="protection_level" />
<result property="guaranteeRegion" column="guarantee_region" />
<result property="level" column="level" />
<result property="deductibles" column="deductibles" />
<result property="additionalSafeguards" column="additional_safeguards" />
<result property="policyLevy" column="policy_levy" />
<result property="remark" column="remark" />
<result property="isDeleted" column="is_deleted" />
<result property="creatorId" column="creator_id" />
......@@ -28,9 +32,10 @@
</resultMap>
<sql id="Base_Column_List">
id,policy_additional_biz_id,policy_biz_id,policy_no,plan_biz_id,additional_product_biz_id,
add_product_name,currency,premium,sum_insured,guarantee_region,
level,deductibles,additional_safeguards,remark,is_deleted,
creator_id,updater_id,create_time,update_time
id,policy_additional_biz_id,policy_biz_id,policy_no,plan_biz_id,product_launch_biz_id,
product_launch_name,payment_frequency,guarantee_period,policy_currency,issue_number,
each_issue_premium,sum_insured,protection_level,guarantee_region,deductibles,
additional_safeguards,policy_levy,remark,is_deleted,creator_id,
updater_id,create_time,update_time
</sql>
</mapper>
......@@ -105,7 +105,7 @@
t.policy_no as policyNumber,
t.insurance_company as insuranceCompany,
t.product_name as insurancePlan,
t.payment_term as paymentPeriod,
t.issue_number as paymentPeriod,
t.initial_premium as annualAmount,
t.prepaid_amount as totalPrepayment,
t.payment_premium as premiumFee,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment