From 6d754022e36ce1b83c8f23bbd82178258304d493 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期一, 29 一月 2024 15:49:59 +0800
Subject: [PATCH] 测试提交
---
ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java | 79 ++++++++++++++++++++++++++++++++-------
1 files changed, 64 insertions(+), 15 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
index 04a2dd7..4fc1bcf 100644
--- a/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
@@ -2,7 +2,10 @@
import java.util.*;
+import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.system.mapper.SysRoleMapper;
+import com.ruoyi.utils.websocket.util.WebSocketUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -14,6 +17,9 @@
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
+import javax.websocket.Session;
+
+import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
/**
* 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆Service涓氬姟灞傚鐞�
@@ -25,6 +31,9 @@
public class ArdAppApplicationServiceImpl implements IArdAppApplicationService {
@Resource
private ArdAppApplicationMapper ardAppApplicationMapper;
+
+ @Resource
+ private SysRoleMapper sysRoleMapper;
private Map<String,Thread> threadMap = new HashMap();
@@ -182,6 +191,23 @@
resultSingle = ardAppApplicationMapper.insertArdAppApplication(ardAppApplication);
result = result + resultSingle;
}
+ //鍔犲叆缁檖c绔痺ebsocket杞彂
+ List<SysRole> sysRoleList = sysRoleMapper.selectRolePermissionByUserId(commanderId);
+ for(SysRole sysRole : sysRoleList){
+ if(!sysRole.getRoleKey().equals("appLeader")){
+ Map<String,Object> resultMap = ardAppApplicationMapper.selectSYCarApplicationByPCIdAndSoilderId(commanderId,usersId);
+ Map<String,Map<String,Object>> msg = new HashMap();
+ msg.put("60000",resultMap);
+ for(String id : ONLINE_USER_SESSIONS.keySet()){
+ if(id.startsWith(commanderId)){
+ Session session = ONLINE_USER_SESSIONS.get(id);
+ WebSocketUtils.sendMessage(session,msg);
+ break;
+ }
+ }
+ break;//涓�涓猵c绔敤鎴峰彲鑳芥寕鎺ュ涓鑹诧紝姣忎釜pc绔彧杞彂涓�娆�
+ }
+ }
}
return result;
}
@@ -264,29 +290,32 @@
List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationByCommanderIdTrue(commanderId);
Date date = new Date();
//鏌ョ湅鎸囨尌绔綅缃敵璇�
- /*List<Map<String, Object>> resultCommanderPosition = new ArrayList();
+ List<Map<String, Object>> resultCommanderPosition = new ArrayList();
+ //鏌ョ湅杞﹁締浣嶇疆鐢宠
+ List<Map<String, Object>> resultSYCarsPosition = new ArrayList();
for(Map<String, Object> map : ardAppApplicationList){
Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
interval = 24 * 60 * 60 * 1000 - interval;
Long hour = interval / (60 * 60 * 1000);
Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
- map.put("time",hour + "鏃�" + min + "鍒�");
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
if(((String)map.get("applicationType")).equals("Commander")){
resultCommanderPosition.add(map);
- }
- }*/
- //鏌ョ湅杞﹁締浣嶇疆鐢宠
- /*List<Map<String, Object>> resultSYCarsPosition = new ArrayList();
- for(Map<String, Object> map : ardAppApplicationList){
- Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
- interval = 24 * 60 * 60 * 1000 - interval;
- Long hour = interval / (60 * 60 * 1000);
- Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
- map.put("time",hour + "鏃�" + min + "鍒�");
- if(((String)map.get("applicationType")).equals("SYCar")){
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
resultSYCarsPosition.add(map);
}
- }*/
+ }
+ result.put("commander",resultCommanderPosition);
+ result.put("SYCars",resultSYCarsPosition);
+ return result;
+ }
+
+ @Override
+ public Map<String, List<Map<String, Object>>> getSendPositionTrue(String soilderId) {
+ Map<String, List<Map<String, Object>>> result = new HashMap();
+ List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationBySoilderIdTrue(soilderId);
+ Date date = new Date();
//鏌ョ湅鎸囨尌绔綅缃敵璇�
List<Map<String, Object>> resultCommanderPosition = new ArrayList();
//鏌ョ湅杞﹁締浣嶇疆鐢宠
@@ -296,7 +325,8 @@
interval = 24 * 60 * 60 * 1000 - interval;
Long hour = interval / (60 * 60 * 1000);
Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
- map.put("time",hour + "鏃�" + min + "鍒�");
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
if(((String)map.get("applicationType")).equals("Commander")){
resultCommanderPosition.add(map);
}else if(((String)map.get("applicationType")).equals("SYCar")){
@@ -355,4 +385,23 @@
int result = ardAppApplicationMapper.updateSoilderCheckByCommanderIdAndSoilderIdAndType(soilderId,commanderId,applicationType);
return result;
}
+
+ @Override
+ public List<Map<String, Object>> getCheckPositionNo(String commanderId) {///
+ List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationByCommanderIdNoCheck(commanderId);
+ Date date = new Date();
+ for(Map<String, Object> map : ardAppApplicationList){
+ if(((String)map.get("begin")).equals("")){
+ map.put("time","");
+ }else{
+ Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
+ interval = 24 * 60 * 60 * 1000 - interval;
+ Long hour = interval / (60 * 60 * 1000);
+ Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
+ }
+ }
+ return ardAppApplicationList;
+ }
}
--
Gitblit v1.9.3