Commit dc758c06 by jianan

预计发佣查询结算币种2

parent 4811106f
......@@ -322,7 +322,10 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
List<ExpectedFortune> expectedFortuneList = updatePayableNoBatch(policyNo);
//默认结算汇率、港币金额
if (ObjectUtils.isNotEmpty(queryPolicyAndBrokerDtoList)) {
if (CollUtil.isNotEmpty(queryPolicyAndBrokerDtoList)) {
log.info("queryPolicyAndBrokerDtoList: {}", queryPolicyAndBrokerDtoList);
QueryPolicyAndBrokerDto queryPolicyAndBrokerDto = queryPolicyAndBrokerDtoList.get(0);
updateHkdAmountBatch(expectedFortuneList, queryPolicyAndBrokerDto);
}
......@@ -355,52 +358,49 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
}
private void updateHkdAmountBatch(List<ExpectedFortune> expectedFortuneList, QueryPolicyAndBrokerDto queryPolicyAndBrokerDto) {
if (ObjectUtils.isNotEmpty(expectedFortuneList)) {
//查询转介人职级比例
//查询结算币种
ApiAnnouncementCommissionRatioListRequest request = new ApiAnnouncementCommissionRatioListRequest();
request.setProductLaunchBizId(queryPolicyAndBrokerDto.getPlanBizId());
//localDate转换为Date
request.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
request.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm()));
Result<List<ApiAnnouncementCommissionRatioListResponse>> result = apiAnnouncementCommissionRatioFeignClient.list(request);
log.info("查询结算币种->入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
if (result.getCode() == 200 && ObjectUtils.isNotEmpty(result.getData())) {
List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList = result.getData();
//查询默认结算汇率
if (ObjectUtils.isNotEmpty(announcementRatioList)) {
ApiAnnouncementCommissionRatioListResponse announcementRatio = announcementRatioList.get(0);
String currency = announcementRatio.getCurrency();
BigDecimal exchangeRate = queryExchangeRateByFeign(queryPolicyAndBrokerDto.getCurrency(), currency);
for (ExpectedFortune expectedFortune : expectedFortuneList) {
//设置结算货币
expectedFortune.setCurrency(currency);
//设置默认结算汇率
expectedFortune.setDefaultExchangeRate(exchangeRate);
//设置港币金额(标准发佣金额 * 默认结算汇率)
expectedFortune.setHkdAmount(expectedFortune.getAmount().multiply(exchangeRate));
//设置转介人职级比例
iExpectedFortuneService.lambdaUpdate()
.set(ExpectedFortune::getCurrency, currency)
.set(ExpectedFortune::getDefaultExchangeRate, exchangeRate)
.set(ExpectedFortune::getHkdAmount, expectedFortune.getHkdAmount())
.eq(ExpectedFortune::getId, expectedFortune.getId());
}
} else {
log.error("查询结算币种失败,未查询到默认结算汇率->入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
//查询转介人职级比例
//查询结算币种
ApiAnnouncementCommissionRatioListRequest request = new ApiAnnouncementCommissionRatioListRequest();
request.setProductLaunchBizId(queryPolicyAndBrokerDto.getPlanBizId());
//localDate转换为Date
request.setEffectiveDate(Date.from(queryPolicyAndBrokerDto.getEffectiveDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
request.setPaymentTerm(String.valueOf(queryPolicyAndBrokerDto.getPaymentTerm()));
Result<List<ApiAnnouncementCommissionRatioListResponse>> result = apiAnnouncementCommissionRatioFeignClient.list(request);
log.info("查询结算币种->入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
if (result.getCode() == 200 && ObjectUtils.isNotEmpty(result.getData())) {
List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList = result.getData();
//查询默认结算汇率
if (ObjectUtils.isNotEmpty(announcementRatioList)) {
ApiAnnouncementCommissionRatioListResponse announcementRatio = announcementRatioList.get(0);
String currency = announcementRatio.getCurrency();
BigDecimal exchangeRate = queryExchangeRateByFeign(queryPolicyAndBrokerDto.getCurrency(), currency);
for (ExpectedFortune expectedFortune : expectedFortuneList) {
//设置结算货币
expectedFortune.setCurrency(currency);
//设置默认结算汇率
expectedFortune.setDefaultExchangeRate(exchangeRate);
//设置港币金额(标准发佣金额 * 默认结算汇率)
expectedFortune.setHkdAmount(expectedFortune.getAmount().multiply(exchangeRate));
//设置转介人职级比例
iExpectedFortuneService.lambdaUpdate()
.set(ExpectedFortune::getCurrency, currency)
.set(ExpectedFortune::getDefaultExchangeRate, exchangeRate)
.set(ExpectedFortune::getHkdAmount, expectedFortune.getHkdAmount())
.eq(ExpectedFortune::getId, expectedFortune.getId());
}
} else {
log.error("查询结算币种失败,入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
log.error("查询结算币种失败,未查询到默认结算汇率->入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
}
} else {
log.error("查询结算币种失败,入参request:{},出参result:{}", JSON.toJSONString(request), JSON.toJSONString(result));
}
}
@Override
......@@ -452,8 +452,13 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
//批量设置应付款编号
List<ExpectedFortune> expectedFortuneList = updatePayableNoBatch(policyNo);
log.info("开始计算默认结算汇率、港币金额:{}",JSON.toJSONString(expectedFortuneList));
//默认结算汇率、港币金额
if (ObjectUtils.isNotEmpty(queryPolicyAndBrokerDtoList)) {
log
QueryPolicyAndBrokerDto queryPolicyAndBrokerDto = queryPolicyAndBrokerDtoList.get(0);
updateHkdAmountBatch(expectedFortuneList, queryPolicyAndBrokerDto);
}
......
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