From d8f66b834134f6b755fd3fb93bb91b56f9d31f6f Mon Sep 17 00:00:00 2001
From: Van333 <van666666@foxmail.com>
Date: 星期四, 29 十二月 2022 15:46:53 +0800
Subject: [PATCH] 放假备份。对接光伏对外接口,单灯,灯杆调整。

---
 src/main/java/api/service/SinglelampDataServer.java |   35 ++++++++++++++++++++++++++++-------
 1 files changed, 28 insertions(+), 7 deletions(-)

diff --git a/src/main/java/api/service/SinglelampDataServer.java b/src/main/java/api/service/SinglelampDataServer.java
index 8370a73..cc07864 100644
--- a/src/main/java/api/service/SinglelampDataServer.java
+++ b/src/main/java/api/service/SinglelampDataServer.java
@@ -3,6 +3,7 @@
 import api.bean.ReqParams;
 import api.bean.SinglelampDataEntity;
 import api.dao.SinglelampDataDao;
+import cn.hutool.core.collection.ListUtil;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,21 +28,41 @@
     public PageInfo<SinglelampDataEntity> selectList(Long userId, ReqParams reqParams) {
         Long roleId = accessService.getRoleId(userId);
 
-        if(roleId == null || roleId == 0){
+        if (roleId == null || roleId == 0) {
             return null;
         }
 
         List<SinglelampDataEntity> list = null;
 
-        if(roleId.longValue() == 1 ){
-            PageHelper.startPage(reqParams.getPage(),reqParams.getLimit());
+        Integer count = null;
+        if (roleId.longValue() == 1) {
+            PageHelper.startPage(reqParams.getPage(), reqParams.getLimit());
             list = singlelampDao.selectAll();
-        }else if (roleId.longValue() == 2 || roleId.longValue() == 3){
-           PageHelper.startPage(reqParams.getPage(),reqParams.getLimit());
-            list = singlelampDao.selectByCompany(reqParams.getPage(),reqParams.getLimit(),userId);
+        } else if (roleId.longValue() == 2 || roleId.longValue() == 3) {
+            count = singlelampDao.countByCompany(userId);
+            list = singlelampDao.selectByCompany(0, count, userId);
 
         }
-        PageInfo<SinglelampDataEntity> page = new PageInfo<>(list);
+        Integer listLimit = reqParams.getLimit();
+        Integer listPage = reqParams.getPage();
+
+        if ((listLimit > listPage * listLimit)
+            || listLimit < listPage){
+            listLimit = count;
+        }
+
+        List<SinglelampDataEntity> pageList =
+                ListUtil.sortByProperty(list,"streetlightId");
+
+        List<SinglelampDataEntity> finalList =
+                ListUtil.page(listPage-1, listLimit, pageList);
+
+        PageInfo<SinglelampDataEntity> page = new PageInfo<>(finalList);
+
+
+        page.setStartRow(list.size());
+        page.setEndRow(count);
+
         return page;
 
     }

--
Gitblit v1.9.3