From 316dce3b4de147fdf301ff4295f286da908deffb Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期一, 28 二月 2022 17:39:25 +0800
Subject: [PATCH] 功能完善

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java   |   30 ++++++++--
 ximon-admin/src/main/java/com/sandu/ximon/admin/utils/ListPageUtil.java           |   97 ++++++++++++++++++++++++++++++++
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java |    2 
 3 files changed, 122 insertions(+), 7 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
index 1181a0c..adf0fc1 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -1,6 +1,7 @@
 package com.sandu.ximon.admin.controller;
 
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.system.UserInfo;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -18,16 +19,16 @@
 import com.sandu.ximon.admin.service.PoleLightemitService;
 import com.sandu.ximon.admin.service.XiXunPlayerService;
 import com.sandu.ximon.admin.utils.LightemitUtils;
+import com.sandu.ximon.admin.utils.ListPageUtil;
 import com.sandu.ximon.dao.domain.PoleLightemitEntity;
 import com.sandu.ximon.dao.domain.PoleXixunPlayerEntity;
 import com.sandu.ximon.dao.enums.AdministratorEnums;
 import lombok.AllArgsConstructor;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 /**
  * @Author liuhaonan
@@ -44,6 +45,7 @@
     private final PoleLightemitService poleLightemitService;
     private final LightemitUtils lightemitUtils;
     private final LedScheduleService scheduleService;
+   // private final ListPageUtil listPageUtil;
 
     /**
      * 鏂板鑺傜洰
@@ -218,8 +220,24 @@
     }
 
     @GetMapping("/onLineLed")
-    public ResponseVO<Object> onlineLed() {
-        return ResponseUtil.success(poleLightemitService.ledList());
+    public ResponseVO<Object> onlineLed(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
+       // PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+        List<PoleLightemitEntity> list = poleLightemitService.ledList();
+        if(list!=null&&!keyword.isEmpty()){
+            List results = new ArrayList();
+            //妯$硦鏌ヨ 浣跨敤锛圥attern銆丮atcher锛�
+            Pattern pattern = Pattern.compile("寮�");
+            for(int i=0; i < list.size(); i++){
+                Matcher matcher = pattern.matcher((list.get(i)).getLightemitName());
+                Matcher matcher1 = pattern.matcher((list.get(i)).getLightemitControlCode());
+                if(matcher.find()||matcher1.find()){  //matcher.find()-涓烘ā绯婃煡璇�   matcher.matches()-涓虹簿纭煡璇�
+                    results.add(list.get(i));
+                }
+            }
+            return ResponseUtil.success(results);
+        }
+
+        return ResponseUtil.success(list);
     }
 
 
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
index 432eb1c..e283140 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
@@ -194,7 +194,7 @@
         List<PoleLightemitEntity> onLineList=new ArrayList<>();
         for(PoleLightemitEntity poleLightemitEntity : list){
             poleLightemitEntity.setIsOpen(lightemitUtils.getIsScreenOpen(poleLightemitEntity.getLightemitControlCode()).contains("true"));
-            if(poleLightemitEntity.getIsOpen()){
+            if(!poleLightemitEntity.getIsOpen()){
                 onLineList.add(poleLightemitEntity);
             }
         }
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/ListPageUtil.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/ListPageUtil.java
new file mode 100644
index 0000000..365eadc
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/utils/ListPageUtil.java
@@ -0,0 +1,97 @@
+package com.sandu.ximon.admin.utils;
+
+import java.util.Collections;
+import java.util.List;
+public class ListPageUtil<T> {
+   private List<T> data;
+
+    /** 涓婁竴椤� */
+     private int lastPage;
+
+    /** 褰撳墠椤� */
+    private int currentPage;
+
+     /** 涓嬩竴椤� */
+    private int nextPage;
+ //
+     /** 姣忛〉鏉℃暟 */
+    private int pageSize;
+
+    /** 鎬婚〉鏁� */
+    private int totalPage;
+
+    /** 鎬绘暟鎹潯鏁� */
+     private int totalCount;
+
+     public ListPageUtil(List<T> data,int currentPage,int pageSize) {
+         if (data == null || data.isEmpty()) {
+            throw new IllegalArgumentException("data must be not empty!");
+         }
+
+        this.data = data;
+         this.pageSize = pageSize;
+         this.currentPage = currentPage;
+        this.totalCount = data.size();
+        this.totalPage = (totalCount + pageSize - 1) / pageSize;
+        this.lastPage = currentPage-1>1? currentPage-1:1;
+        this.nextPage = currentPage>=totalPage? totalPage: currentPage + 1;
+
+     }
+
+    /**
+     * 寰楀埌鍒嗛〉鍚庣殑鏁版嵁
+      * @return 鍒嗛〉鍚庣粨鏋�
+     */
+ //    public List<T> getPagedLst() {
+ //        int fromIndex = (nowPage - 1) * pageSize;
+//        if (fromIndex >= data.size()) {
+ //            return Collections.emptyList();//绌烘暟缁�
+ //        }
+ //        if(fromIndex<0){
+ //            return Collections.emptyList();//绌烘暟缁�
+ //        }
+//        int toIndex = nowPage * pageSize;
+//        if (toIndex >= data.size()) {
+//            toIndex = data.size();
+ //        }
+ //        return data.subList(fromIndex, toIndex);
+ //    }
+
+     public int getPageSize() {
+        return pageSize;
+    }
+
+      public List<T> getData() {
+          int fromIndex = (currentPage - 1) * pageSize;
+         if (fromIndex >= data.size()) {
+             return Collections.emptyList();//绌烘暟缁�
+        }
+        if(fromIndex<0){
+             return Collections.emptyList();//绌烘暟缁�
+        }
+         int toIndex = currentPage * pageSize;
+         if (toIndex >= data.size()) {
+             toIndex = data.size();
+         }
+        return data.subList(fromIndex, toIndex);
+     }
+     public int getLastPage() {
+         return lastPage;
+    }
+
+     public int getCurrentPage() {
+        return currentPage;
+     }
+
+     public int getNextPage() {
+         return nextPage;
+     }
+
+    public int getTotalPage() {
+        return totalPage;
+     }
+
+     public int getTotalCount() {
+         return totalCount;
+     }
+ }
\ No newline at end of file

--
Gitblit v1.9.3