@Override
public BaseResponse<Page<SpongeProjectDetailRespDTO>> page(@NotNull SpongeProjectListReqDTO dto) {
Page<SpongeProjectDetailRespDTO> page = new Page<>();
page.setPageNum(dto.getPageNum());
page.setPageSize(dto.getPageSize());
SpongeProBaseInfoExample example = new SpongeProBaseInfoExample();
SpongeProBaseInfoExample.Criteria criteria = example.createCriteria();
// 查詢條件
example.setOrderByClause("id desc");
if(StringUtils.isNotEmpty(dto.getProjectName())) {
List<Long> projectIds = spongeProBaseInfoService.getProjectIdByName(dto.getProjectName());
if(CollectionUtils.isEmpty(projectIds)) {
return BaseResponse.buildSuccessResponse().result(page);
}
criteria.andIdIn(projectIds);
}
if(StringUtils.isNotEmpty(dto.getProjectCategory())) {
criteria.andProjectCategoryLike("%" + dto.getProjectCategory() + "%");
}
if(StringUtils.isNotEmpty(dto.getStatus())) {
criteria.andStatusEqualTo(dto.getStatus());
}
if(StringUtils.isNotEmpty(dto.getProjectprogress())) {
criteria.andStatusEqualTo(dto.getProjectprogress());
}
if(StringUtils.isNotEmpty(dto.getProjectconstrct())) {
criteria.andStatusEqualTo(dto.getProjectconstrct());
}
// 不同型別查詢 (提示空指標)
switch (dto.getSpongeType()) {
case "important_project" :
criteria.andConstructTypeNotLike("%4%");
break;
case "award_project" :
criteria.andAwardEqualTo(true);
break;
default:
break;
}
criteria.andDeletedEqualTo(CommonConstants.UN_DELETED);
com.github.pagehelper.Page<Object> startPage = PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
// 查詢串列
Optional<Collection<SpongeProBaseInfo>> spongeProBaseInfos = spongeProBaseInfoService.queryByExample(example);
if (CollectionUtils.isNotEmpty(spongeProBaseInfos.orElse(null))) {
// 處理記錄
List<SpongeProjectDetailRespDTO> response = spongeProBaseInfos.get().stream().map(spongeProBaseInfo -> {
SpongeProjectDetailRespDTO respDTO = new SpongeProjectDetailRespDTO();
BeanUtils.copyProperties(spongeProBaseInfo, respDTO);
// 判斷按鈕展示
return respDTO;
}).collect(Collectors.toList());
page.setResults(response);
page.setTotal(startPage.getTotal());
}
return BaseResponse.buildSuccessResponse().result(page);
}
uj5u.com熱心網友回復:
那啥,,錯誤日志代碼是保密內容嗎。。。。難道要我們自己把錯誤跑出來嗎...uj5u.com熱心網友回復:
我覺得上面都判空的里面就是空的。你可以把上面放出來看看,傳進來的也許只有頁面號。最好在資料進入的時候就用日志列印一下接收到資料uj5u.com熱心網友回復:
我沒有看博客哇 這個是個service層
我列印出來這個物件所以屬性都是空的 是什么原因呀?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/256105.html
標籤:Web 開發
上一篇:求大佬解答一下
