From e16302f9d475c7cc4dd18c5abf1a23cb5502e362 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期三, 28 五月 2025 14:57:56 +0800 Subject: [PATCH] 密码验证加- --- src/main/java/com/whyc/webSocket/HomeAdminSocket.java | 147 +++--------------------------------------------- 1 files changed, 11 insertions(+), 136 deletions(-) diff --git a/src/main/java/com/whyc/webSocket/HomeAdminSocket.java b/src/main/java/com/whyc/webSocket/HomeAdminSocket.java index 7679a79..9dc0028 100644 --- a/src/main/java/com/whyc/webSocket/HomeAdminSocket.java +++ b/src/main/java/com/whyc/webSocket/HomeAdminSocket.java @@ -23,7 +23,7 @@ import java.util.stream.Collectors; /** - * 鎬婚椤� + * 鎬婚椤碉紙棰嗗灞傦級 */ @Component @ServerEndpoint(value = "/homeAdmin", encoders = WebSocketEncoder.class, configurator = WebSocketConfig.class) @@ -50,6 +50,8 @@ private static PowerInfService powerInfService; private static BatttestdataInfService batttestdataInfService; + + private HttpSession httpSession; @Autowired public void setBattInfService(BattInfService battInfService) { @@ -79,8 +81,12 @@ @OnOpen public void onOpen(Session session, EndpointConfig config) { this.session = session; - HttpSession httpSession = (HttpSession) config.getUserProperties().get("httpSession"); - UserInf user = (UserInf) httpSession.getAttribute("user"); + this.httpSession = (HttpSession) config.getUserProperties().get("httpSession"); + } + + @OnMessage + public void onMessage(Session session, String message) { + UserInf user = (UserInf) this.httpSession.getAttribute("user"); final int userId = user.getUId().intValue(); //final int userId = 1087; Thread thread = new Thread() { @@ -92,10 +98,7 @@ ThreadPoolExecutor poolExecutor = ThreadPoolExecutorFactory.getPoolExecutor(); CountDownLatch latch = new CountDownLatch(7); poolExecutor.execute(() -> { - //钃勭數姹犵粍浼樺姡鍒嗘瀽(鐢ㄨ搫鐢垫睜缁勭粍鍚庤瘎浼扮殑缁熻) - /*Response resGroupAnalysis = badBattMonService.getGroupAnalysis(userId); - res.put("resGroupAnalysis", resGroupAnalysis);*/ - Response resGroupAnalysis = batttestdataInfService.getGroupAnalysis(userId); + Response resGroupAnalysis = batttestdataInfService.getGroupAnalysis3(userId); res.put("resGroupAnalysis", resGroupAnalysis); latch.countDown(); }); @@ -191,7 +194,7 @@ }); latch.await(10, TimeUnit.MINUTES); session.getBasicRemote().sendObject(new Response().set(1, res)); - sleep(4000); + sleep(5000); } } catch (Exception e) { this.interrupt(); @@ -200,134 +203,6 @@ }; thread.start(); this.thread = thread; - /*thread = new Thread("Thread_homeAdmin") { - @Override - public void run() { - while (runFlag && !isInterrupted()) { - Thread thread = currentThread(); - threadFlagMap.put(thread.getId(), true); - try { - if (session.isOpen()) { - //鎺ㄩ�佷俊鎭� - synchronized (session) { - session.getBasicRemote().sendObject(getAnalysis(userId)); - } - threadFlagMap.put(thread.getId(), false); - } - sleep(executeTime); - //} catch (IOException | InterruptedException | EncodeException e) { - } catch (Exception e) { - interrupt(); - } - } - } - }; - thread.start(); - threadFlagMap.put(thread.getId(), true); - //鍋滄鑰佺殑socket绾跨▼ - Thread threadBefore = threadMap.get(session.getId()); - if (threadBefore != null && threadBefore.isAlive()) { - while (threadFlagMap.get(threadBefore.getId())) { - } - threadBefore.interrupt(); - } - //灏嗙嚎绋嬪瓨鍌�,渚夸簬璋冪敤瀹氫綅 - threadMap.put(session.getId(), this.thread);*/ - } - - //瀹炴椂椤甸潰鎺ㄩ�� - public Response getAnalysis(int userId) { - Map<String, Object> res = new HashMap<>(); - /*//钃勭數姹犱紭鍔e垎鏋� - Response resQualityAnalysis = badBattMonService.getQualityAnalysis(userId); - res.put("resQualityAnalysis", resQualityAnalysis);*/ - - //钃勭數姹犵粍浼樺姡鍒嗘瀽 - /* Response resGroupAnalysis = badBattMonService.getGroupAnalysis(userId); - res.put("resGroupAnalysis", resGroupAnalysis);*/ - Response resGroupAnalysis = batttestdataInfService.getGroupAnalysis(userId); - res.put("resGroupAnalysis", resGroupAnalysis); - - - //鍩虹璧勬簮淇℃伅 - Response resBattInfoAnalysis = battInfService.getBattInfoAnalysis(userId); - res.put("resBattInfoAnalysis", resBattInfoAnalysis); - - //绔欑偣淇℃伅 - Response resStationAnalysis = new Response(); - try { - //List<Battinf> battinfList = battInfService.getSateAnalysis(userId); - List<StationInf> sinfList = stationInfService.getSateAnalysis(userId); - Map<Integer, List<StationInf>> nodeStationMap = sinfList.stream().collect(Collectors.groupingBy(StationInf::getNodeStation)); - Map<String, List<StationInf>> stationTypeMap = sinfList.stream().collect(Collectors.groupingBy(StationInf::getStationType)); - Map<Integer, Object> nodeMap = new HashMap<>(); - Map<String, Object> stationMap = new HashMap<>(); - Map<String, Object> battGroupInfoMap = new HashMap<>(); - int battSize = sinfList.size(); - for (Integer node : nodeStationMap.keySet()) { - nodeMap.put(node, nodeStationMap.get(node).size()); - } - for (String station : stationTypeMap.keySet()) { - stationMap.put(station, stationTypeMap.get(station).size()); - } - battGroupInfoMap.put("node", nodeMap); - battGroupInfoMap.put("stationType", stationMap); - battGroupInfoMap.put("totalNum", battSize); - resStationAnalysis.setII(1, true, battGroupInfoMap, null); - } catch (Exception e) { - resStationAnalysis.set(1, false, "鍙戠敓寮傚父:" + e.getCause()); - } - res.put("resStationAnalysis", resStationAnalysis); - //涓嶅悓鍝佺墝鍚屼竴鏃堕棿鍝佽川鍜屽悓鍝佺墝鍚屾椂闂村搧璐� - Response resProductQuaAnalysis = badBattMonService.getProductQuaAnalysis(userId); - res.put("resProductQuaAnalysis", resProductQuaAnalysis); - - //鐢垫睜淇℃伅 - Response res_battGroupInfo = new Response(); - try { - List<Battinf> battinfList = battInfService.getBattGroupList(userId); - Map<String, List<Battinf>> battProducerMap = battinfList.stream().collect(Collectors.groupingBy(Battinf::getBattProducer)); - Map<Float, List<Battinf>> battMonVolStdMap = battinfList.stream().collect(Collectors.groupingBy(Battinf::getMonVolStd)); - Map<String, Object> battGroupProducerMap = new HashMap<>(); - Map<String, Object> battGroupMonVolMap = new HashMap<>(); - Map<String, Object> battGroupInfoMap = new HashMap<>(); - int battSize = battinfList.size(); - for (String producer : battProducerMap.keySet()) { - battGroupProducerMap.put(producer, battProducerMap.get(producer).size()); - } - for (Float monVolStd : battMonVolStdMap.keySet()) { - battGroupMonVolMap.put(Float.toString(monVolStd), battMonVolStdMap.get(monVolStd).size()); - } - battGroupInfoMap.put("producer", battGroupProducerMap); - battGroupInfoMap.put("monVol", battGroupMonVolMap); - battGroupInfoMap.put("totalNum", battSize); - res_battGroupInfo.setII(1, true, battGroupInfoMap, null); - } catch (Exception e) { - res_battGroupInfo.set(1, false, "鍙戠敓寮傚父:" + e.getCause()); - } - res.put("battGroupInfo", res_battGroupInfo); - //鐢垫簮淇℃伅 - Response resPwrdevInfAnalysis = new Response(); - try { - List<PowerInf> powerInfList = powerInfService.getPwrdevInfAnalysis(userId); - Map<String, List<PowerInf>> powerProducerMap = powerInfList.stream().collect(Collectors.groupingBy(PowerInf::getPowerProducer)); - Map<String, Object> AnalysisMap = new HashMap<>(); - for (String producer : powerProducerMap.keySet()) { - AnalysisMap.put(producer, powerProducerMap.get(producer).size()); - } - resPwrdevInfAnalysis.setII(1, true, AnalysisMap, "鐢垫簮淇℃伅"); - } catch (Exception e) { - resPwrdevInfAnalysis.set(1, false, "鍙戠敓寮傚父:" + e.getCause()); - } - res.put("resPwrdevInfAnalysis", resPwrdevInfAnalysis); - //娴嬭瘯淇℃伅 - Response resTestdataInfAnalysis = batttestdataInfService.getTestdataInfAnalysis(userId); - res.put("resTestdataInfAnalysis", resTestdataInfAnalysis); - return new Response().set(1, res); - } - - @OnMessage - public void onMessage(Session session, String message) { } @OnClose -- Gitblit v1.9.1