From 3b541e81611079a5a1c214440eed704cbb6b38af Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期一, 24 七月 2023 11:40:17 +0800
Subject: [PATCH] 优化

---
 ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
index 599b126..7dc8c9e 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
@@ -8,13 +8,18 @@
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
 
+import com.alibaba.fastjson.JSON;
+import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.common.websocket.util.WebSocketUtils;
 import com.ruoyi.device.hiksdk.config.MinioClientSingleton;
 import com.ruoyi.device.hiksdk.util.minio.MinioUtils;
 import com.ruoyi.sy.domain.ArdSyUser;
+import com.ruoyi.sy.gps31.PositionContainer;
 import com.ruoyi.sy.mapper.ArdSyUserMapper;
 import com.ruoyi.system.domain.SysConfig;
 import com.ruoyi.system.mapper.SysConfigMapper;
+import com.ruoyi.system.mapper.SysUserMapper;
 import com.ruoyi.utils.httpclient.SYCarClient;
 import com.ruoyi.utils.result.Constants;
 import com.ruoyi.utils.result.Results;
@@ -33,6 +38,8 @@
 
 import javax.annotation.Resource;
 
+import static com.ruoyi.common.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
+
 /**
  * 涓変竴杞﹁締Service涓氬姟灞傚鐞�
  *
@@ -49,6 +56,9 @@
 
     @Resource
     private ArdSyUserMapper ardSyUserMapper;
+
+    @Resource
+    private SysUserMapper userMapper;
 
 
     /**
@@ -327,6 +337,13 @@
         }
     }
 
+//    @Override
+//    public List<ArdSyCar> getArdSyCarWithRightByCarIdList(List<String> carIdList) {
+//        List<ArdSyCar> result = ardSyCarMapper.getArdSyCarWithRightByCarIdList(carIdList);
+//        return result;
+//    }
+
+
     @Override
     public Results carListById(String id) {
         try {
@@ -341,4 +358,30 @@
             return Results.error(e.toString());
         }
     }
+
+    @Override
+    public Map<String, Object> getArdSyCarAndDeptByCarId(String carId) {
+        Map<String, Object> result = ardSyCarMapper.getArdSyCarAndDeptByCarId(carId);
+        return result;
+    }
+
+    @Override
+    public void sendArdSyCarPosition() {
+        for(String key : ONLINE_USER_SESSIONS.keySet()){
+            SysUser sysUser = userMapper.selectUserById(key);
+            String deptId = String.valueOf(sysUser.getDeptId());
+            Map<String,Map<String,Object>> map = PositionContainer.getDeptPositionMap().get(deptId);
+            Map<Integer,Object> data = new HashMap();
+            data.put(30000, map.values());
+            WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(key), JSON.toJSONString(data));
+        }
+    }
+
+    @Override
+    public void sendArdSyCarAlarmByCarId(String carId, Map<Integer,Object> data) {
+        List<SysUser> result = userMapper.getSysUserByCarId(carId);
+        for(SysUser sysUser : result){
+            WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(sysUser.getUserId()), JSON.toJSONString(data));
+        }
+    }
 }

--
Gitblit v1.9.3