Commit 6d65e011 by jianan

新单跟进30

parent 40b2ac2b
......@@ -4,16 +4,13 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Data
public class PolicyBeneficiaryAddRequest implements Serializable {
private static final long serialVersionUID = 1L;
public class PolicyBeneficiaryAddRequest {
/**
* 新单跟进业务ID
*/
......@@ -182,7 +179,7 @@ public class PolicyBeneficiaryAddRequest implements Serializable {
* 地址列表(json串)
*/
@Schema(description = "地址列表(json串)")
private List<Map<String, String>> addressList;
private Object addressList;
/**
* 通用备注
......
......@@ -3,13 +3,10 @@ package com.yd.csf.service.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class PolicyBeneficiaryListUpdateRequest implements Serializable {
private static final long serialVersionUID = 1L;
public class PolicyBeneficiaryListUpdateRequest {
/**
* 保单BizId
*/
......
......@@ -8,7 +8,6 @@ import com.yd.common.utils.RandomStringGenerator;
import com.yd.csf.service.dto.PolicyBeneficiaryAddRequest;
import com.yd.csf.service.dto.PolicyBeneficiaryListUpdateRequest;
import com.yd.csf.service.dto.PolicyBeneficiaryUpdateRequest;
import com.yd.csf.service.model.PolicyAdditional;
import com.yd.csf.service.model.PolicyBeneficiary;
import com.yd.csf.service.service.PolicyBeneficiaryService;
import com.yd.csf.service.dao.PolicyBeneficiaryMapper;
......@@ -19,15 +18,13 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.Date;
import java.util.Map;
import java.util.*;
/**
* @author Zhang Jianan
* @description 针对表【policy_beneficiary(受益人信息表)】的数据库操作Service实现
* @createDate 2025-10-31 11:43:16
*/
* @author Zhang Jianan
* @description 针对表【policy_beneficiary(受益人信息表)】的数据库操作Service实现
* @createDate 2025-10-31 11:43:16
*/
@Service
public class PolicyBeneficiaryServiceImpl extends ServiceImpl<PolicyBeneficiaryMapper, PolicyBeneficiary>
implements PolicyBeneficiaryService{
......@@ -88,19 +85,49 @@ public class PolicyBeneficiaryServiceImpl extends ServiceImpl<PolicyBeneficiaryM
// 先删除旧的受益人
this.remove(new QueryWrapper<PolicyBeneficiary>().eq("policy_biz_id", policyBeneficiaryUpdateRequest.getPolicyBizId()));
// 批量插入新的受益人
if (policyBeneficiaryUpdateRequest.getPolicyBeneficiaryList() != null && !policyBeneficiaryUpdateRequest.getPolicyBeneficiaryList().isEmpty()) {
this.saveBatch(policyBeneficiaryUpdateRequest.getPolicyBeneficiaryList().stream().map(beneficiaryAddRequest -> {
if (CollectionUtils.isNotEmpty(policyBeneficiaryUpdateRequest.getPolicyBeneficiaryList())) {
List<PolicyBeneficiary> beneficiaryList = new ArrayList<>();
for (PolicyBeneficiaryAddRequest beneficiaryAddRequest : policyBeneficiaryUpdateRequest.getPolicyBeneficiaryList()) {
PolicyBeneficiary beneficiary = new PolicyBeneficiary();
BeanUtils.copyProperties(beneficiaryAddRequest, beneficiary);
beneficiary.setPolicyBeneficiaryBizId(RandomStringGenerator.generateBizId16("policy_beneficiary"));
beneficiary.setPolicyBizId(policyBeneficiaryUpdateRequest.getPolicyBizId());
if (CollectionUtils.isNotEmpty(beneficiaryAddRequest.getAddressList())) {
beneficiary.setPolicyNo(beneficiaryAddRequest.getPolicyNo());
beneficiary.setCustomerType(beneficiaryAddRequest.getCustomerType());
beneficiary.setInsurantRel(beneficiaryAddRequest.getInsurantRel());
beneficiary.setBenefitRatio(beneficiaryAddRequest.getBenefitRatio());
beneficiary.setName(beneficiaryAddRequest.getName());
beneficiary.setNameEn(beneficiaryAddRequest.getNameEn());
beneficiary.setGender(beneficiaryAddRequest.getGender());
beneficiary.setDocumentType(beneficiaryAddRequest.getDocumentType());
beneficiary.setIdNumber(beneficiaryAddRequest.getIdNumber());
beneficiary.setPassportNumber(beneficiaryAddRequest.getPassportNumber());
beneficiary.setBirthTime(beneficiaryAddRequest.getBirthTime());
beneficiary.setCompanyName(beneficiaryAddRequest.getCompanyName());
beneficiary.setCompanyNameEn(beneficiaryAddRequest.getCompanyNameEn());
beneficiary.setCompanyBusinessNo(beneficiaryAddRequest.getCompanyBusinessNo());
beneficiary.setCompanyRegisterTime(beneficiaryAddRequest.getCompanyRegisterTime());
beneficiary.setCompanyRegisterRegion(beneficiaryAddRequest.getCompanyRegisterRegion());
beneficiary.setCompanyMobileCode(beneficiaryAddRequest.getCompanyMobileCode());
beneficiary.setCompanyMobile(beneficiaryAddRequest.getCompanyMobile());
beneficiary.setCompanyEmail(beneficiaryAddRequest.getCompanyEmail());
beneficiary.setCompanyEnterAddress(beneficiaryAddRequest.getCompanyEnterAddress());
beneficiary.setMailingAddress(beneficiaryAddRequest.getMailingAddress());
beneficiary.setAuthNameCn(beneficiaryAddRequest.getAuthNameCn());
beneficiary.setAuthNameEn(beneficiaryAddRequest.getAuthNameEn());
beneficiary.setAuthProfessional(beneficiaryAddRequest.getAuthProfessional());
beneficiary.setAuthMobileCode(beneficiaryAddRequest.getAuthMobileCode());
beneficiary.setAuthMobile(beneficiaryAddRequest.getAuthMobile());
beneficiary.setRemark(beneficiaryAddRequest.getRemark());
if (beneficiaryAddRequest.getAddressList() != null) {
beneficiary.setAddressList(GSONUtil.toJson(beneficiaryAddRequest.getAddressList()));
}
beneficiary.setCreateTime(new Date());
beneficiary.setUpdateTime(new Date());
return beneficiary;
}).collect(java.util.stream.Collectors.toList()));
beneficiaryList.add(beneficiary);
}
this.saveBatch(beneficiaryList);
}
return true;
}
......
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