From 3d296df1ff6f6c34a68d228f5766ebe44cf169e1 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Fri, 28 Jul 2023 15:41:56 +0800
Subject: [PATCH] 三一车辆实时位置加入用户追踪提交
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java | 63 ++++++++++++++++++++++++++++---
1 files changed, 57 insertions(+), 6 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index 93eca00..efb229a 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -3,13 +3,19 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.validation.Validator;
+import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
+import com.ruoyi.alarm.config.mapper.ArdAlarmTypeConfigMapper;
import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.DictUtils;
+import com.ruoyi.common.utils.uuid.IdUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -67,6 +73,8 @@
protected Validator validator;
@Resource
private RedisCache redisCache;
+ @Resource
+ private ArdAlarmTypeConfigMapper ardAlarmTypeConfigMapper;
/**
* 项目启动时,初始化参数到缓存
@@ -128,12 +136,17 @@
public List<SysUser> selectUserList(SysUser user) {
return userMapper.selectUserList(user);
}
+ /**
+ * 获取App单兵和指挥端用户列表
+ *
+ * @param user APP用户信息
+ * @return 用户信息集合信息
+ */
@Override
- @DataScope(deptAlias = "d", userAlias = "u")
- public List<SysUser> selectAppUserList(SysUser user) {
- return userMapper.selectAppUserList(user);
+// @DataScope(deptAlias = "d", userAlias = "u")
+ public List<SysUser> selectAllAppUserList(SysUser user) {
+ return userMapper.selectAllAppUserList(user);
}
-
/**
* 根据条件分页查询已分配用户角色列表
*
@@ -306,6 +319,8 @@
insertUserPost(user);
// 新增用户与角色管理
insertUserRole(user);
+ // 新增用户与报警类型关联
+ insertAlarmTypeConfig(user);
return rows;
}
@@ -330,6 +345,11 @@
@Transactional
public int updateUser(SysUser user) {
String userId = user.getUserId();
+ // 删除用户与报警类型关联
+ ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByUserId(userId);
+ // 新增用户与报警类型关联
+ insertAlarmTypeConfig(user);
+
// 删除用户与角色关联
userRoleMapper.deleteUserRoleByUserId(userId);
// 新增用户与角色管理
@@ -429,7 +449,14 @@
public void insertUserRole(SysUser user) {
this.insertUserRole(user.getUserId(), user.getRoleIds());
}
-
+ /**
+ * 新增用户报警类型信息
+ *
+ * @param user 用户对象
+ */
+ public void insertAlarmTypeConfig(SysUser user) {
+ this.insertAlarmTypeConfig(user.getUserId(), user.getCommands());
+ }
/**
* 新增用户岗位信息
*
@@ -469,7 +496,27 @@
userRoleMapper.batchUserRole(list);
}
}
-
+ /**
+ * 新增用户报警类型
+ *
+ * @param userId 用户ID
+ * @param commands 报警类型组
+ */
+ public void insertAlarmTypeConfig(String userId, List<String> commands) {
+ if (StringUtils.isNotEmpty(commands)) {
+ // 新增用户与角色管理
+ List<ArdAlarmTypeConfig> list = new ArrayList<ArdAlarmTypeConfig>(commands.size());
+ for (String command : commands) {
+ ArdAlarmTypeConfig ur = new ArdAlarmTypeConfig();
+ ur.setUserId(userId);
+ ur.setCommand(command);
+ String alarm_type = DictUtils.getDictLabel("alarm_type", command);
+ ur.setAlarmType(alarm_type);
+ list.add(ur);
+ }
+ ardAlarmTypeConfigMapper.batchAlarmTypeConfig(list);
+ }
+ }
/**
* 通过用户ID删除用户
*
@@ -503,6 +550,8 @@
checkUserAllowed(new SysUser(userId));
checkUserDataScope(userId);
}
+ // 删除用户与报警类型关联
+ ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByIds(userIds);
// 删除用户与角色关联
userRoleMapper.deleteUserRole(userIds);
// 删除用户与岗位关联
@@ -580,4 +629,6 @@
private String getCacheKey(String configKey) {
return CacheConstants.USER_LIST_KEY + configKey;
}
+
+
}
--
Gitblit v1.9.3