From b7a71b30c1c1b06a162678c90a54c8188097dc81 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 13 十二月 2024 20:57:39 +0800
Subject: [PATCH] 1

---
 se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java |   80 ++++++++++++++++++++++++++++++----------
 1 files changed, 60 insertions(+), 20 deletions(-)

diff --git a/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java
index b48b211..d606e87 100644
--- a/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java
+++ b/se-modules/se-system/src/main/java/com/se/system/service/impl/SysStatusCtrlServiceImpl.java
@@ -2,10 +2,15 @@
 
 import java.util.List;
 import com.se.common.core.utils.DateUtils;
+import com.se.system.service.WebSocketService;
+import com.se.system.utils.CaffeineUtils;
+import com.se.system.utils.ConnectUtils;
+import com.se.system.utils.StringUtils;
 import org.springframework.stereotype.Service;
 import com.se.system.mapper.SysStatusCtrlMapper;
 import com.se.system.domain.SysStatusCtrl;
 import com.se.system.service.inte.ISysStatusCtrlService;
+import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
 
@@ -16,82 +21,117 @@
  * @date 2024-12-07
  */
 @Service
-public class SysStatusCtrlServiceImpl implements ISysStatusCtrlService 
-{
+@SuppressWarnings("ALL")
+public class SysStatusCtrlServiceImpl implements ISysStatusCtrlService {
     @Resource
     private SysStatusCtrlMapper sysStatusCtrlMapper;
 
+    private final static String CACHE_KEY = "list:statusctrl";
+
     /**
      * 鏌ヨ绯荤粺鐘舵�佺洃鎺�
-     * 
+     *
      * @param statusId 绯荤粺鐘舵�佺洃鎺т富閿�
      * @return 绯荤粺鐘舵�佺洃鎺�
      */
     @Override
-    public SysStatusCtrl selectSysStatusCtrlByStatusId(Long statusId)
-    {
+    public SysStatusCtrl selectSysStatusCtrlByStatusId(Long statusId) {
         return sysStatusCtrlMapper.selectSysStatusCtrlByStatusId(statusId);
     }
 
     /**
      * 鏌ヨ绯荤粺鐘舵�佺洃鎺у垪琛�
-     * 
+     *
      * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺�
      * @return 绯荤粺鐘舵�佺洃鎺�
      */
     @Override
-    public List<SysStatusCtrl> selectSysStatusCtrlList(SysStatusCtrl sysStatusCtrl)
-    {
+    public List<SysStatusCtrl> selectSysStatusCtrlList(SysStatusCtrl sysStatusCtrl) {
         return sysStatusCtrlMapper.selectSysStatusCtrlList(sysStatusCtrl);
     }
 
     /**
      * 鏂板绯荤粺鐘舵�佺洃鎺�
-     * 
+     *
      * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺�
      * @return 缁撴灉
      */
     @Override
-    public int insertSysStatusCtrl(SysStatusCtrl sysStatusCtrl)
-    {
+    public int insertSysStatusCtrl(SysStatusCtrl sysStatusCtrl) {
+        CaffeineUtils.remove(CACHE_KEY);
         sysStatusCtrl.setCreateTime(DateUtils.getNowDate());
         return sysStatusCtrlMapper.insertSysStatusCtrl(sysStatusCtrl);
     }
 
     /**
      * 淇敼绯荤粺鐘舵�佺洃鎺�
-     * 
+     *
      * @param sysStatusCtrl 绯荤粺鐘舵�佺洃鎺�
      * @return 缁撴灉
      */
     @Override
-    public int updateSysStatusCtrl(SysStatusCtrl sysStatusCtrl)
-    {
+    public int updateSysStatusCtrl(SysStatusCtrl sysStatusCtrl) {
+        CaffeineUtils.remove(CACHE_KEY);
         sysStatusCtrl.setUpdateTime(DateUtils.getNowDate());
         return sysStatusCtrlMapper.updateSysStatusCtrl(sysStatusCtrl);
     }
 
     /**
      * 鎵归噺鍒犻櫎绯荤粺鐘舵�佺洃鎺�
-     * 
+     *
      * @param statusIds 闇�瑕佸垹闄ょ殑绯荤粺鐘舵�佺洃鎺т富閿�
      * @return 缁撴灉
      */
     @Override
-    public int deleteSysStatusCtrlByStatusIds(Long[] statusIds)
-    {
+    public int deleteSysStatusCtrlByStatusIds(Long[] statusIds) {
+        CaffeineUtils.remove(CACHE_KEY);
         return sysStatusCtrlMapper.deleteSysStatusCtrlByStatusIds(statusIds);
     }
 
     /**
      * 鍒犻櫎绯荤粺鐘舵�佺洃鎺т俊鎭�
-     * 
+     *
      * @param statusId 绯荤粺鐘舵�佺洃鎺т富閿�
      * @return 缁撴灉
      */
     @Override
-    public int deleteSysStatusCtrlByStatusId(Long statusId)
-    {
+    public int deleteSysStatusCtrlByStatusId(Long statusId) {
+        CaffeineUtils.remove(CACHE_KEY);
         return sysStatusCtrlMapper.deleteSysStatusCtrlByStatusId(statusId);
     }
+
+    private List<SysStatusCtrl> getList() {
+        List<SysStatusCtrl> list = CaffeineUtils.getListByKey(CACHE_KEY);
+        if (null == list) {
+            list = selectSysStatusCtrlList(new SysStatusCtrl());
+            CaffeineUtils.putListByKey(CACHE_KEY, list);
+        }
+
+        return list;
+    }
+
+    public void runSubSysTest() {
+        List<SysStatusCtrl> list = getList();
+        if (CollectionUtils.isEmpty(list)) return;
+
+        for (SysStatusCtrl ctrl : list) {
+            ctrl.setStatus("0");
+            ctrl.setRemark("");
+            if (!StringUtils.isEmpty(ctrl.getIp()) && !ConnectUtils.isReachable(ctrl.getIp())) {
+                ctrl.setStatus("1");
+                ctrl.setRemark("IP涓嶈繛閫�");
+            }
+            if (!StringUtils.isEmpty(ctrl.getUrl()) && !ConnectUtils.testUrl(ctrl.getUrl(), ctrl.getMethod())) {
+                ctrl.setStatus("1");
+                ctrl.setRemark((ctrl.getRemark().length() > 0 ? ctrl.getRemark() + "锛�" : "") + "URL杩炴帴涓嶄笂");
+            }
+        }
+
+        sysStatusCtrlMapper.updates(list);
+    }
+
+    private void sendMsg(String json) throws Exception {
+        //String json = JSONObject.toJSONStringWithDateFormat(jsonObject, "yyyy-MM-dd HH:mm:ss", SerializerFeature.WriteMapNullValue);
+        WebSocketService.broadCastInfo(json);
+    }
 }

--
Gitblit v1.9.3