Commit 981ab70f by jianan

生成预计发佣记录是查询出账币种、默认结算汇率3

parent 6f993f22
...@@ -7,6 +7,7 @@ import com.alibaba.excel.ExcelReader; ...@@ -7,6 +7,7 @@ import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.metadata.ReadSheet; import com.alibaba.excel.read.metadata.ReadSheet;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.auth.core.dto.AuthUserDto; import com.yd.auth.core.dto.AuthUserDto;
...@@ -28,6 +29,7 @@ import com.yd.csf.service.common.ErrorCode; ...@@ -28,6 +29,7 @@ import com.yd.csf.service.common.ErrorCode;
import com.yd.csf.service.component.PolicyReportPdfService; import com.yd.csf.service.component.PolicyReportPdfService;
import com.yd.csf.service.dto.*; import com.yd.csf.service.dto.*;
import com.yd.csf.service.enums.PolicyFollowStatusEnum; import com.yd.csf.service.enums.PolicyFollowStatusEnum;
import com.yd.csf.service.helper.FeignResultHelper;
import com.yd.csf.service.model.*; import com.yd.csf.service.model.*;
import com.yd.csf.service.service.*; import com.yd.csf.service.service.*;
import com.yd.csf.service.vo.PolicyFollowDetailVO; import com.yd.csf.service.vo.PolicyFollowDetailVO;
...@@ -36,6 +38,9 @@ import com.yd.csf.service.vo.PolicyFollowVO; ...@@ -36,6 +38,9 @@ import com.yd.csf.service.vo.PolicyFollowVO;
import com.yd.csf.service.vo.PolicyNumberResponseVO; import com.yd.csf.service.vo.PolicyNumberResponseVO;
import com.yd.insurance.base.feign.client.insurancereconciliationcompany.ApiInsuranceReconciliationCompanyFeignClient; import com.yd.insurance.base.feign.client.insurancereconciliationcompany.ApiInsuranceReconciliationCompanyFeignClient;
import com.yd.insurance.base.feign.request.insurancereconciliationcompany.ApiInsuranceReconciliationCompanyPageRequest; import com.yd.insurance.base.feign.request.insurancereconciliationcompany.ApiInsuranceReconciliationCompanyPageRequest;
import com.yd.product.feign.client.announcementcommissionratio.ApiAnnouncementCommissionRatioFeignClient;
import com.yd.product.feign.request.announcementcommissionratio.ApiAnnouncementCommissionRatioListRequest;
import com.yd.product.feign.response.announcementcommissionratio.ApiAnnouncementCommissionRatioListResponse;
import com.yd.product.feign.response.expectedspecies.ApiExpectedSpeciesListResponse; import com.yd.product.feign.response.expectedspecies.ApiExpectedSpeciesListResponse;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
...@@ -89,9 +94,12 @@ public class ApiPolicyFollowController { ...@@ -89,9 +94,12 @@ public class ApiPolicyFollowController {
private CommissionExpectedService commissionExpectedService; private CommissionExpectedService commissionExpectedService;
@Resource @Resource
private ApiPolicyFollowService apiPolicyFollowService; private ApiPolicyFollowService apiPolicyFollowService;
@Resource @Resource
private ApiExpectedFortuneService apiExpectedFortuneService; private ApiExpectedFortuneService apiExpectedFortuneService;
@Resource
private ApiAnnouncementCommissionRatioFeignClient apiAnnouncementCommissionRatioFeignClient;
@Resource
private FeignResultHelper feignResultHelper;
@PostMapping("/upload/excel") @PostMapping("/upload/excel")
...@@ -536,6 +544,20 @@ public class ApiPolicyFollowController { ...@@ -536,6 +544,20 @@ public class ApiPolicyFollowController {
if (!hasCommissionInfo) { if (!hasCommissionInfo) {
return Result.fail(ResultCode.NULL_ERROR.getCode(), "产品未维护发佣信息"); return Result.fail(ResultCode.NULL_ERROR.getCode(), "产品未维护发佣信息");
} }
//查询产品发佣配置,获取结算币种
ApiAnnouncementCommissionRatioListRequest announcementRatioListRequest = new ApiAnnouncementCommissionRatioListRequest();
announcementRatioListRequest.setProductLaunchBizId(productLaunchBizId);
announcementRatioListRequest.setEffectiveDate(changePolicyFollowStatusRequest.getEffectiveDate());
announcementRatioListRequest.setPaymentTerm(String.valueOf(policyFollow.getIssueNumber()));
try {
feignResultHelper.extractListData(
apiAnnouncementCommissionRatioFeignClient.list(announcementRatioListRequest),
ApiAnnouncementCommissionRatioListResponse.class
);
} catch (Exception e) {
log.info("查询结算币种->保单号:{},入参request:{}", policyFollow.getPolicyNo(), JSON.toJSONString(announcementRatioListRequest));
throw new BusinessException("查询产品发佣配置,获取结算币种失败," + e.getMessage());
}
} }
// 修改逻辑 // 修改逻辑
......
...@@ -154,12 +154,17 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -154,12 +154,17 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
announcementRatioListRequest.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant())); announcementRatioListRequest.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
announcementRatioListRequest.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm())); announcementRatioListRequest.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm()));
log.info("查询结算币种->保单号:{},入参request:{}", request.getPolicyNo(), JSON.toJSONString(announcementRatioListRequest)); List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList;
try {
announcementRatioList = feignResultHelper.extractListData(
apiAnnouncementCommissionRatioFeignClient.list(announcementRatioListRequest),
ApiAnnouncementCommissionRatioListResponse.class
);
} catch (Exception e) {
log.info("查询结算币种->保单号:{},入参request:{}", request.getPolicyNo(), JSON.toJSONString(announcementRatioListRequest));
List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList = feignResultHelper.extractListData( throw new BusinessException("查询产品发佣配置,获取结算币种失败," + e.getMessage());
apiAnnouncementCommissionRatioFeignClient.list(announcementRatioListRequest), }
ApiAnnouncementCommissionRatioListResponse.class
);
//遍历保单转介人列表信息 -> 调用基本法算出预计发佣列表 //遍历保单转介人列表信息 -> 调用基本法算出预计发佣列表
// 通过代理对象调用 // 通过代理对象调用
...@@ -214,12 +219,16 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -214,12 +219,16 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
announcementRatioListRequest.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant())); announcementRatioListRequest.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
announcementRatioListRequest.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm())); announcementRatioListRequest.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm()));
log.info("查询结算币种->保单号:{},入参request:{}", request.getPolicyNo(), JSON.toJSONString(announcementRatioListRequest)); List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList;
try {
List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList = feignResultHelper.extractListData( announcementRatioList = feignResultHelper.extractListData(
apiAnnouncementCommissionRatioFeignClient.list(announcementRatioListRequest), apiAnnouncementCommissionRatioFeignClient.list(announcementRatioListRequest),
ApiAnnouncementCommissionRatioListResponse.class ApiAnnouncementCommissionRatioListResponse.class
); );
} catch (Exception e) {
log.info("查询结算币种->保单号:{},入参request:{}", request.getPolicyNo(), JSON.toJSONString(announcementRatioListRequest));
throw new BusinessException("查询产品发佣配置,获取结算币种失败," + e.getMessage());
}
//遍历保单转介人列表信息 -> 调用基本法算出预计发佣列表(同步执行) //遍历保单转介人列表信息 -> 调用基本法算出预计发佣列表(同步执行)
executeSync(queryPolicyAndBrokerDtoList, request.getPolicyNo(), announcementRatioList); executeSync(queryPolicyAndBrokerDtoList, request.getPolicyNo(), announcementRatioList);
......
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