diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PileController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PileController.java index 7e854bf4e..695d60b38 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PileController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/PileController.java @@ -11,11 +11,13 @@ import com.jsowell.pile.dto.QueryConnectorListDTO; import com.jsowell.pile.dto.QueryStationDTO; import com.jsowell.pile.service.IPileConnectorInfoService; import com.jsowell.pile.service.IPileStationInfoService; +import com.jsowell.pile.vo.base.StationInfoVO; import com.jsowell.pile.vo.uniapp.PersonalPileInfoVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import java.util.List; /** * 充电桩相关接口 @@ -51,6 +53,7 @@ public class PileController extends BaseController { // startPage(); // List list = pileStationInfoService.uniAppQueryStationInfos(queryStationDTO); PageResponse pageResponse = pileStationInfoService.uniAppQueryStationInfoList(queryStationDTO); + // List list = pileStationInfoService.uniAppQueryStationInfoList(queryStationDTO); response = new RestApiResponse<>(pageResponse); } catch (BusinessException e) { logger.warn("查询充电站信息列表warn", e); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileStationInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileStationInfoService.java index 03541046a..8242dc454 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileStationInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/IPileStationInfoService.java @@ -4,6 +4,7 @@ import com.jsowell.common.core.page.PageResponse; import com.jsowell.pile.domain.PileStationInfo; import com.jsowell.pile.dto.FastCreateStationDTO; import com.jsowell.pile.dto.QueryStationDTO; +import com.jsowell.pile.vo.base.StationInfoVO; import com.jsowell.pile.vo.web.PileStationVO; import java.util.List; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java index 057b12604..a56b5f5ad 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileStationInfoServiceImpl.java @@ -1,5 +1,6 @@ package com.jsowell.pile.service.impl; +import cn.hutool.core.util.PageUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.google.common.collect.Lists; @@ -7,10 +8,7 @@ import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.entity.SysDept; import com.jsowell.common.core.domain.vo.AuthorizedDeptVO; import com.jsowell.common.core.page.PageResponse; -import com.jsowell.common.util.DateUtils; -import com.jsowell.common.util.DistanceUtils; -import com.jsowell.common.util.SecurityUtils; -import com.jsowell.common.util.StringUtils; +import com.jsowell.common.util.*; import com.jsowell.common.util.ip.AddressUtils; import com.jsowell.pile.domain.PileStationInfo; import com.jsowell.pile.dto.FastCreateStationDTO; @@ -34,6 +32,7 @@ import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 充电站信息Service业务层处理 @@ -251,31 +250,31 @@ public class PileStationInfoServiceImpl implements IPileStationInfoService { */ @Override public PageResponse uniAppQueryStationInfoList(QueryStationDTO dto) { - int pageNum = dto.getPageNum() == 0 ? 1 : dto.getPageNum(); - int pageSize = dto.getPageSize() == 0 ? 10 : dto.getPageSize(); + long pageNum = dto.getPageNum() == 0 ? 1L : dto.getPageNum(); + long pageSize = dto.getPageSize() == 0 ? 10L : dto.getPageSize(); // 小程序站点列表页只展示对外开放的站点 dto.setPublicFlag(Constants.ONE); // 根据前台参数分页 - PageHelper.startPage(pageNum, pageSize); + // PageHelper.startPage(pageNum, pageSize); List list = pileStationInfoMapper.queryStationInfos(dto); - PageInfo pageInfo = new PageInfo<>(list); - if (CollectionUtils.isEmpty(pageInfo.getList())) { - return PageResponse.builder() - .pageNum(pageInfo.getPageNum()) - .pageSize(pageInfo.getPageSize()) - .list(Lists.newArrayList()) - .pages(pageInfo.getPages()) - .total(pageInfo.getTotal()) - .build(); - } + // PageInfo pageInfo = new PageInfo<>(list); + // if (CollectionUtils.isEmpty(pageInfo.getList())) { + // return PageResponse.builder() + // .pageNum(pageInfo.getPageNum()) + // .pageSize(pageInfo.getPageSize()) + // .list(Lists.newArrayList()) + // .pages(pageInfo.getPages()) + // .total(pageInfo.getTotal()) + // .build(); + // } List stationVOList = Lists.newArrayList(); StationInfoVO stationVO = null; String stationLng = dto.getStationLng(); String stationLat = dto.getStationLat(); double distance = 0d; - for (PileStationVO pileStationVO : pageInfo.getList()) { + for (PileStationVO pileStationVO : list) { stationVO = new StationInfoVO(); if (StringUtils.isNotEmpty(stationLng) && StringUtils.isNotEmpty(stationLat)) { try{ @@ -343,14 +342,20 @@ public class PileStationInfoServiceImpl implements IPileStationInfoService { return a.compareTo(b); }); } + List collect = stationVOList.stream() + .skip((pageNum - 1) * pageSize) + .limit(pageSize) + .collect(Collectors.toList()); + int total = stationVOList.size(); + int pages = PageUtil.totalPage(total, dto.getPageSize()); // 返回结果集 return PageResponse.builder() - .pageNum(pageInfo.getPageNum()) - .pageSize(pageInfo.getPageSize()) - .list(stationVOList) - .pages(pageInfo.getPages()) - .total(pageInfo.getTotal()) + .pageNum(Integer.parseInt(String.valueOf(pageNum))) + .pageSize(Integer.parseInt(String.valueOf(pageSize))) + .list(collect) + .pages(pages) + .total(total) .build(); }