From 71726a1cb05790d6841595ef7daef5173f2cddfa Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 29 三月 2023 09:43:11 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/all/ScheduleService.java | 104 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 88 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/lf/server/service/all/ScheduleService.java b/src/main/java/com/lf/server/service/all/ScheduleService.java index 5db8120..1382d29 100644 --- a/src/main/java/com/lf/server/service/all/ScheduleService.java +++ b/src/main/java/com/lf/server/service/all/ScheduleService.java @@ -1,10 +1,14 @@ package com.lf.server.service.all; import com.lf.server.entity.all.RedisCacheKey; +import com.lf.server.entity.sys.LoginEntity; +import com.lf.server.entity.sys.OperateEntity; import com.lf.server.entity.sys.ResEntity; import com.lf.server.entity.sys.UserEntity; import com.lf.server.helper.FileHelper; import com.lf.server.helper.StringHelper; +import com.lf.server.service.sys.LoginService; +import com.lf.server.service.sys.OperateService; import com.lf.server.service.sys.ResService; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -37,15 +41,18 @@ private ResService resService; @Autowired + private LoginService loginService; + + @Autowired + private OperateService operateService; + + @Autowired private RedisTemplate<String, Object> redisTemplate; private static final Log log = LogFactory.getLog(ScheduleService.class); /** * 鏌ヨ鏈嶅姟鍣ㄧ姸鎬� - * - * @return - * @throws InterruptedException */ public JSONObject selectServerStatus() throws InterruptedException { JSONObject json = new JSONObject(); @@ -57,9 +64,6 @@ /** * 鏌ヨCpu淇℃伅 - * - * @return - * @throws InterruptedException */ public JSONObject selectCpuInfo() throws InterruptedException { SystemInfo systemInfo = new SystemInfo(); @@ -91,8 +95,6 @@ /** * 鏌ヨ鍐呭瓨淇℃伅 - * - * @return */ public JSONObject selectMemInfo() { JSONObject map = new JSONObject(); @@ -114,8 +116,6 @@ /** * 鏌ヨ鍦ㄧ嚎鐢ㄦ埛 - * - * @return */ public List<JSONObject> selectOnlineUsers() { List<JSONObject> list = new ArrayList<JSONObject>(); @@ -123,7 +123,7 @@ Set<String> keys = redisTemplate.keys(RedisCacheKey.signUserKey("*")); for (String key : keys) { Object obj = redisTemplate.opsForValue().get(key); - if (obj != null && obj instanceof UserEntity) { + if (obj instanceof UserEntity) { UserEntity ue = (UserEntity) obj; JSONObject map = new JSONObject(); @@ -139,18 +139,30 @@ } /** - * 鏌ヨ鏈嶅姟璧勬簮鐘舵�� - * + * 缁熻鍦ㄧ嚎鐢ㄦ埛鏁� * @return */ - public List<ResEntity> selectResStatus() { - List<ResEntity> list = new ArrayList<ResEntity>(); + public int countOnlineUsers() { + Set<String> keys = redisTemplate.keys(RedisCacheKey.signUserKey("*")); + return null == keys ? 0 : keys.size(); + } + + /** + * 鏌ヨ鏈嶅姟璧勬簮鐘舵�� + */ + public List<ResEntity> selectResStatus() { List<ResEntity> resList = resService.selectResAll(); + + return testResStatus(resList); + } + + private List<ResEntity> testResStatus(List<ResEntity> resList) { + List<ResEntity> list = new ArrayList<ResEntity>(); for (ResEntity re : resList) { Socket socket = new Socket(); try { - if (StringHelper.isEmpty(re.getServer())){ + if (StringHelper.isEmpty(re.getServer())) { list.add(re); continue; } @@ -174,4 +186,64 @@ return list; } + + /** + * 缁熻鏈嶅姟璧勬簮鐘舵�� + */ + public JSONObject countResStatus() { + List<ResEntity> resList = resService.selectResAll(); + List<ResEntity> unableList = testResStatus(resList); + + JSONObject jsonObject = new JSONObject(); + + // 璧勬簮鍙敤 + jsonObject.put("resAbleCount", resList.size() - unableList.size()); + // 璧勬簮涓嶅彲鐢� + jsonObject.put("resUnableCount", unableList.size()); + + return jsonObject; + } + + /** + * 璧勬簮鎿嶄綔鐘舵�� + */ + public JSONObject operateCount() { + List<OperateEntity> list = operateService.operateCount(); + JSONObject jsonObject = new JSONObject(); + if (list.isEmpty()) { + return null; + } else { + List<JSONObject> lister = new ArrayList<JSONObject>(); + for (OperateEntity key : list) { + JSONObject map = new JSONObject(); + map.put("count", key.getCount()); + map.put("modular2", key.getModular2()); + lister.add(map); + } + jsonObject.put("operateCount", lister); + return jsonObject; + } + } + + /** + * 鐢ㄦ埛鐧诲綍鐘舵�� + */ + public JSONObject userLoginCount() { + List<LoginEntity> list = loginService.selectLoginCounts(); + if (list == null || list.isEmpty()) { + return null; + } + + JSONObject jsonObject = new JSONObject(); + List<JSONObject> lister = new ArrayList<JSONObject>(); + for (LoginEntity key : list) { + JSONObject map = new JSONObject(); + map.put("count", key.getCount()); + map.put("optime", key.getOptime()); + lister.add(map); + } + jsonObject.put("userLoginCount", lister); + + return jsonObject; + } } -- Gitblit v1.9.3