Commit 7b10b215 by jianan

前端对接问题修复22

parent 25ca7e4f
......@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* policy接口
......@@ -211,4 +212,23 @@ public class ApiPolicyController {
return Result.success(commissionExpectedService.getCommissionExpectedVOPage(commissionExpectedPage));
}
/**
* 获取保单产品信息
*
* @param productLaunchBizId
* @return
*/
@GetMapping("/get_policy_product_info")
@Operation(summary = "获取保单产品信息")
public Result<Object> getProductLaunchPage(List<String> productLaunchBizId) {
if (productLaunchBizId == null) {
return Result.fail(ResultCode.PARAMS_ERROR.getCode(), ResultCode.PARAMS_ERROR.getMessage());
}
// 查询
Object productLaunchPageResponse = policyService.getPolicyProductInfo(productLaunchBizId);
// 获取封装类
return Result.success(productLaunchPageResponse);
}
}
......@@ -28,4 +28,6 @@ public interface PolicyService extends IService<Policy> {
Policy queryOne(String policyNo);
List<QueryPolicyAndBrokerDto> queryPolicyBrokerList(String policyNo);
List<Object> getPolicyProductInfo(List<String> productLaunchBizIdList);
}
package com.yd.csf.service.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import com.yd.csf.feign.dto.appointment.ApiProductPlanAdditionalInfoDto;
import com.yd.csf.feign.dto.appointment.ApiProductPlanMainInfoDto;
import com.yd.csf.service.dto.*;
import com.yd.csf.service.model.AppointmentFile;
import com.yd.csf.service.model.Policy;
import com.yd.csf.service.model.PolicyAdditional;
import com.yd.csf.service.service.PolicyAdditionalService;
import com.yd.csf.service.service.PolicyPolicyholderService;
import com.yd.csf.service.service.PolicyService;
import com.yd.csf.service.dao.PolicyMapper;
import com.yd.csf.service.vo.PolicyVO;
import com.yd.product.feign.client.relprojectproductlaunch.ApiRelProjectProductLaunchFeignClient;
import com.yd.product.feign.request.productlaunch.ApiProductLaunchParameterPageRequest;
import com.yd.product.feign.request.relprojectproductlaunch.ApiRelProjectProductLaunchPageRequest;
import com.yd.product.feign.response.productlaunch.ApiAttributeSettingDto;
import com.yd.product.feign.response.relprojectproductlaunch.ApiRelProjectProductLaunchPageResponse;
import io.swagger.v3.core.util.Json;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
......@@ -34,12 +43,16 @@ import java.util.stream.Collectors;
* @createDate 2025-09-18 15:07:25
*/
@Service
@Slf4j
public class PolicyServiceImpl extends ServiceImpl<PolicyMapper, Policy>
implements PolicyService{
@Resource
private PolicyAdditionalService policyAdditionalService;
@Resource
private ApiRelProjectProductLaunchFeignClient apiRelProjectProductLaunchFeignClient;
@Override
public QueryWrapper<Policy> getQueryWrapper(PolicyQueryRequest policyQueryRequest) {
QueryWrapper<Policy> queryWrapper = new QueryWrapper<>();
......@@ -163,6 +176,50 @@ public class PolicyServiceImpl extends ServiceImpl<PolicyMapper, Policy>
public List<QueryPolicyAndBrokerDto> queryPolicyBrokerList(String policyNo) {
return baseMapper.queryPolicyBrokerList(policyNo);
}
@Override
public List<Object> getPolicyProductInfo(List<String> productLaunchBizIdList) {
ApiRelProjectProductLaunchPageRequest pageRequest = new ApiRelProjectProductLaunchPageRequest();
pageRequest.setProductLaunchBizIdList(productLaunchBizIdList);
Result<IPage<ApiRelProjectProductLaunchPageResponse>> result = apiRelProjectProductLaunchFeignClient.page(pageRequest);
if (result == null || ObjectUtils.isEmpty(result.getData()) || ObjectUtils.isEmpty(result.getData().getRecords())) {
return CollUtil.newArrayList();
}
List<ApiRelProjectProductLaunchPageResponse> productLaunchPageResponseList = result.getData().getRecords();
List<Map<String, Object>> policyProductInfoList = CollUtil.newArrayList();
for (ApiRelProjectProductLaunchPageResponse response : productLaunchPageResponseList) {
log.info("ApiRelProjectProductLaunchPageResponse:{}", JSONUtil.toJsonStr(response));
List<ApiAttributeSettingDto> apiAttributeSettingDtoList = response.getApiAttributeSettingDtoList();
Map<String, Object> infoMap = new HashMap<>();
infoMap.put("productLaunchBizId", response.getProductLaunchBizId());
infoMap.put("productName", response.getProductName());
// 解析自定义属性
getInfo(apiAttributeSettingDtoList, infoMap);
policyProductInfoList.add(infoMap);
}
return null;
}
/**
* 从附加险列表中获取保险公司业务ID
*
* @param apiAttributeSettingDtoList
* @param infoMap
*/
private void getInfo(List<ApiAttributeSettingDto> apiAttributeSettingDtoList, Map<String, Object> infoMap) {
if (CollUtil.isEmpty(apiAttributeSettingDtoList)) {
return;
}
// insuranceCompanyBizId
// insuranceCompany
// reconciliationCompanyBizId
// reconciliationCompany
for (ApiAttributeSettingDto dto : apiAttributeSettingDtoList) {
}
}
}
......
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