Commit 6f993f22 by jianan

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

parent 950aeb25
...@@ -15,11 +15,11 @@ import com.yd.csf.service.dto.QueryPolicyAndBrokerDto; ...@@ -15,11 +15,11 @@ import com.yd.csf.service.dto.QueryPolicyAndBrokerDto;
import com.yd.csf.service.model.CommissionRuleBinding; import com.yd.csf.service.model.CommissionRuleBinding;
import com.yd.csf.service.model.ExpectedFortune; import com.yd.csf.service.model.ExpectedFortune;
import com.yd.csf.service.vo.ExpectedFortuneStatisticsVO; import com.yd.csf.service.vo.ExpectedFortuneStatisticsVO;
import com.yd.product.feign.response.announcementcommissionratio.ApiAnnouncementCommissionRatioListResponse;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
import java.util.Map;
public interface ApiExpectedFortuneService { public interface ApiExpectedFortuneService {
Result<ApiGenerateExpectedFortuneResponse> generate(ApiGenerateExpectedFortuneRequest request); Result<ApiGenerateExpectedFortuneResponse> generate(ApiGenerateExpectedFortuneRequest request);
...@@ -37,7 +37,8 @@ public interface ApiExpectedFortuneService { ...@@ -37,7 +37,8 @@ public interface ApiExpectedFortuneService {
@Async("asyncQueryExecutor") @Async("asyncQueryExecutor")
Result execute(List<QueryPolicyAndBrokerDto> queryPolicyAndBrokerDtoList, Result execute(List<QueryPolicyAndBrokerDto> queryPolicyAndBrokerDtoList,
List<CommissionRuleBinding> commissionRuleBindingList, List<CommissionRuleBinding> commissionRuleBindingList,
String policyNo); String policyNo,
List<ApiAnnouncementCommissionRatioListResponse> announcementRatioList);
/** /**
* 同步执行预计发佣生成 * 同步执行预计发佣生成
......
package com.yd.csf.service.helper;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yd.common.enums.ResultCode;
import com.yd.common.exception.BusinessException;
import com.yd.common.result.Result;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class FeignResultHelper {
private final ObjectMapper objectMapper = new ObjectMapper();
public <T> T extractData(Result<T> result) {
if (result == null) {
throw new BusinessException(ResultCode.FAIL.getCode(), "远程调用返回null");
}
if (result.getCode() != ResultCode.SUCCESS.getCode()) {
throw new BusinessException(result.getCode(), result.getMsg());
}
return result.getData();
}
public <T> List<T> extractListData(Result<?> result, Class<T> elementType) {
if (result == null) {
throw new BusinessException(ResultCode.FAIL.getCode(), "远程调用返回null");
}
if (result.getCode() != ResultCode.SUCCESS.getCode()) {
throw new BusinessException(result.getCode(), result.getMsg());
}
Object data = result.getData();
if (data == null) {
throw new BusinessException(ResultCode.FAIL.getCode(), "远程调用 result.getData() 为 null");
}
if (data instanceof List) {
if (((List<?>) data).isEmpty()) {
throw new BusinessException(ResultCode.FAIL.getCode(), "远程调用 result.getData() 为 []");
}
return objectMapper.convertValue(
data,
objectMapper.getTypeFactory().constructCollectionType(
List.class, elementType
)
);
} else {
throw new BusinessException(ResultCode.FAIL.getCode(), "返回数据类型错误");
}
}
}
\ No newline at end of file
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