diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java index 2dcd07adb..8e42e4cb4 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java @@ -212,8 +212,8 @@ public class HyPartnerLineInfoDAO { } return hyPartnerLineInfoMapper.getHyPartnerLineInfoList(lineIds,investmentManager); } - public LinePageInfoVo getPublicSeaPageInfoNext(Long lineId, String userNameKeyword, String phoneKeyword, String intentAreaName, Integer acceptAdjustType, String updateStartTime, String updateEndTime, List userIdList, String createStartTime, String createEndTime,String pageTurn){ - return hyPartnerLineInfoMapper.getPublicSeaPageInfoNext(lineId,userNameKeyword,phoneKeyword,intentAreaName,acceptAdjustType,updateStartTime,updateEndTime,userIdList, createStartTime, createEndTime,pageTurn); + public List getPublicSeaPageInfoNext(Long lineId, String userNameKeyword, String phoneKeyword, String intentAreaName, Integer acceptAdjustType, String updateStartTime, String updateEndTime, List userIdList, String createStartTime, String createEndTime,String pageTurn,Integer limit1,Integer limit2){ + return hyPartnerLineInfoMapper.getPublicSeaPageInfoNext(lineId,userNameKeyword,phoneKeyword,intentAreaName,acceptAdjustType,updateStartTime,updateEndTime,userIdList, createStartTime, createEndTime,pageTurn,limit1,limit2); } public List getPrivateSeaPageInfoNext(Long lineId,String keyword, String keywordType, String workflowStage, String workflowStatus, String deadlineStart, String deadlineEnd, diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java index cd1acb64c..b5598b695 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java @@ -301,7 +301,7 @@ public interface HyPartnerLineInfoMapper { @Param("limit2") Integer limit2 ); - LinePageInfoVo getPublicSeaPageInfoNext(@Param("lineId") Long lineId,@Param("userNameKeyword") String userNameKeyword, + List getPublicSeaPageInfoNext(@Param("lineId") Long lineId,@Param("userNameKeyword") String userNameKeyword, @Param("phoneKeyword") String phoneKeyword, @Param("intentAreaName") String intentAreaName, @Param("acceptAdjustType") Integer acceptAdjustType, @@ -310,7 +310,9 @@ public interface HyPartnerLineInfoMapper { @Param("userIdList") List userIdList, @Param("createStartTime") String createStartTime, @Param("createEndTime") String createEndTime, - @Param("pageTurn") String pageTurn + @Param("pageTurn") String pageTurn, + @Param("limit1") Integer limit1, + @Param("limit2") Integer limit2 ); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml index e283e2eec..6e8ca01e3 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml @@ -971,12 +971,6 @@ LEFT JOIN hy_open_area_info hoai ON hoai.id = b.want_shop_area LEFT JOIN hy_phone_location hpl ON hpl.phone_number = b.mobile where a.line_status = 0 and a.deleted = 0 - - AND a.id #{lineId} - - - AND a.id ]]> #{lineId} - and b.username like concat('%',#{userNameKeyword},'%') @@ -1000,7 +994,7 @@ #{userId} - order by a.create_time desc limit 1 + order by a.create_time desc limit #{limit1},#{limit2} \ No newline at end of file diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 76af43a01..80481a66d 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -964,6 +964,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { @Override public LinePageInfoVo privateSeaPageDetailNext(String userId, PrivateSeaLineListRequest request, Boolean allPrivateSeaFlag) { + request.setPageNum((int) Math.ceil((double) request.getPageNum() / request.getPageSize())); //allPrivateSeaFlag 为true的时候 查询全量私海 UserPositionAndUserScopeDTO userIdsByScope = new UserPositionAndUserScopeDTO(); if (!allPrivateSeaFlag) { @@ -995,10 +996,26 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { @Override public LinePageInfoVo publicSeaPageDetailNext(String userId, LineRequest lineRequest) { + lineRequest.setPageNum((int) Math.ceil((double) lineRequest.getPageNum() / lineRequest.getPageSize())); String intentAreaName = getIntentAreaName(lineRequest.getIntentArea()); - LinePageInfoVo linePageInfoVo = hyPartnerLineInfoDAO.getPublicSeaPageInfoNext(lineRequest.getLineId(), lineRequest.getUserNameKeyword(), lineRequest.getPhoneKeyword(), - intentAreaName, lineRequest.getAcceptAdjustType(), lineRequest.getUpdateStartTime(), lineRequest.getUpdateEndTime(), null, lineRequest.getCreateStartTime(), lineRequest.getCreateEndTime(),lineRequest.getPageTurn()); - return linePageInfoVo; + Integer pageNum = lineRequest.getPageNum(); + Integer pageSize = lineRequest.getPageSize(); + List linePageInfoVoList = hyPartnerLineInfoDAO.getPublicSeaPageInfoNext(lineRequest.getLineId(), lineRequest.getUserNameKeyword(), lineRequest.getPhoneKeyword(), + intentAreaName, lineRequest.getAcceptAdjustType(), lineRequest.getUpdateStartTime(), lineRequest.getUpdateEndTime(), null, lineRequest.getCreateStartTime(), lineRequest.getCreateEndTime(),lineRequest.getPageTurn() + , (pageNum - 1) * pageSize == 0 ? 0 : (pageNum - 1) * pageSize - 1, pageSize + 2); + Optional first = Stream.iterate(0, i -> i + 1).limit(linePageInfoVoList.size()).filter(item -> lineRequest.getLineId().equals(linePageInfoVoList.get(item).getLineId())).findFirst(); + if (!first.isPresent()) { + return null; + } + if (PageTurnTypeEnum.NEXT.getText().equals(lineRequest.getPageTurn())) { + //下一页 + return first.get() +1>linePageInfoVoList.size()?null:linePageInfoVoList.get(first.get() +1); + } + if (PageTurnTypeEnum.PREVIOUS.getText().equals(lineRequest.getPageTurn())) { + //上一页 + return first.get() - 1<0?null:linePageInfoVoList.get(first.get() - 1); + } + return null; }