@Resoure
private ProxyClient proxyClient;
public ApiResult<?> addBatch(QueryParam queryParam){
queryParam.setPageNum(0);
queryParam.setPageSize(1000);
while(true){
pageNum++;
logger.info("开始查询第{}页数据。",pageNum);
ApiResult<PageVO<DepositResp>> apiResult = proxyClient.getSearchData(queryParam);
if(!apiResult.isSuccess()){
logger.error("查询第{}页失败,错误信息{}",pageNum,apiResult.getMessage());
}
PageVO<UserResp> pageVo=Convert.convert(new TypeReference<PageVo<UserResp>>(){},JSONUtil.parseObj(apiResult.getData()));
List<User> rows=pageVo.getRows();
if(ObjectUtils.isEmpty(rows)){
logger.info("查询第{}页完成,",pageNum)
return ApiResult.ok();
}
logger.info("查询第{}页,",pageNum);
List<User> list= JSONUtil.parseArray(rows).toList(User.class);
}
}
@Resoure
private ProxyClient proxyClient;
public ApiResult<?> addBatch(QueryParam queryParam){
int total=1;
int pageSize=1000;
queryParam.setPageSize(pageSize);
for(int i=1;i<=total;i++){
queryParam.setPageNum(i);
ApiResult<PageVO<DepositResp>> apiResult = proxyClient.getSearchData(queryParam);
if(!apiResult.isSuccess()){
logger.error("查询第{}页失败,错误信息{}",i,apiResult.getMessage());
JSONObject jsonobject=JSONUtil.parseObj(apiResult.getData());
if(i=1){
total=(Integer.parseInt(jsonObject.get("total").toString())+pageSize-1)/pageSize;
List<UserEntity> rows=JSONUtil.parseArray(jsonObject.get("rows")).toList(UserEntity.class) ;
}
}
}
}
public ApiResult addBatch(PromotionPageQuery promotionPageQuery) {
int total = 0;
int pageSize = page_size;
promotionPageQuery.setPageSize(pageSize);
List<PromotionEntity> batchList = new ArrayList<>();
while (true) {
total++;
promotionPageQuery.setPageNum(total);
try {
ApiResult apiResult = proxyClient.getPromotion(promotionPageQuery);
if (!apiResult.isSuccess()) {
log.error("查询错误信息:{}", apiResult.getMessage());
return ApiResult.fail(apiResult.getMessage());
}
JSONObject jsonObject = JSONUtil.parseObj(apiResult.getData());
batchList = JSONUtil.parseArray(jsonObject.get("rows")).toList(PromotionEntity.class);
if (CollectionUtil.isEmpty(batchList)) {
log.info("查询数据第{}页没有数据,正常结束。", total);
return ApiResult.ok("批量插入成功");
}
log.info("开始写入第{}页数据", total);
promotionMapper.saveBatchPromotion(batchList);
batchList.clear();
} catch (Exception e) {
log.error("{}批次插入失败",total);
break;
}
}
return ApiResult.ok("写入数据成功第{}页",total);
}