瀏覽代碼

相机和线路导入修改

gao.qiang 2 年之前
父節點
當前提交
d08c506d06

+ 2 - 0
business-service/src/main/java/com/ozs/service/mapper/BaseUserMapper.java

@@ -29,6 +29,8 @@ public interface BaseUserMapper extends BaseMapper<BaseUser> {
     Set<String> getUserIdByDeptIdsBy5(@Param("deptList") List<Long> deptList);
 
     Set<String> getUserIdList6();
+    
+    Set<String> getUserIdsList();
 
     BaseUser getUser(@Param("userId") String userId);
     

+ 3 - 1
business-service/src/main/java/com/ozs/service/service/BaseCameraManagementService.java

@@ -27,6 +27,8 @@ public interface BaseCameraManagementService extends IService<BaseCameraManageme
     String importBaseAccountManagement(List<BaseCameraManagementVos> accountManageList, boolean updateSupport, String userId);
 
     List<BaseCameraManagementHomeVo> selectCameraAll(String userId);
-
+    
     List<String> getUserIds(String userId);
+
+    List<String> getUserIdList(String userId);
 }

+ 44 - 0
business-service/src/main/java/com/ozs/service/service/impl/BaseCameraManagementServiceImpl.java

@@ -239,4 +239,48 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
         List<String> list = new ArrayList<>(set);
         return list;
     }
+
+
+    /**
+     * 根据当前登陆用户ID 查询当前用户数据权限
+     *
+     * @param userId
+     * @return
+     */
+    public List<String> getUserIdList(String userId) {
+        BaseUser baseUser = baseUserService.getUser(userId);
+        if (StringUtils.isNull(baseUser) || StringUtils.isNull(baseUser.getDataPermission())
+                || StringUtils.isNull(baseUser.getDeptId())) {
+            return null;
+        }
+        // 数据权限 1:本人;2:本部门;3:本部门及下级部门;4:本人及本级部门;5:本人及本部门及下级部门;6:全部
+        Integer dataPermission = baseUser.getDataPermission();
+        Long deptId = baseUser.getDeptId();
+        Set<String> set = new HashSet<>();
+        if (1 == dataPermission) {
+            set = baseUserMapper.getUserIdList(userId);
+        } else if (2 == dataPermission) {
+            set = baseUserMapper.getUserIdByDeptId(deptId);
+        } else if (3 == dataPermission) {
+            // 获取部门数据
+            List<Long> deptList = baseUserMapper.getDeptId(deptId);
+            // 获取用户列表
+            set = baseUserMapper.getUserIdByDeptIds(deptList);
+        } else if (4 == dataPermission) {
+            set = baseUserMapper.getUserIdByDeptIdAndUserId(userId, deptId);
+        } else if (5 == dataPermission) {
+            // 获取本人
+            Set<String> setUser = baseUserMapper.getUserIdListBy5(userId);
+            // 获取部门数据
+            List<Long> deptList5 = baseUserMapper.getDeptId(deptId);
+            // 获取用户列表
+            Set<String> setUsers = baseUserMapper.getUserIdByDeptIdsBy5(deptList5);
+            set.addAll(setUser);
+            set.addAll(setUsers);
+        } else if (6 == dataPermission) {
+            set = baseUserMapper.getUserIdsList();
+        }
+        List<String> list = new ArrayList<>(set);
+        return list;
+    }
 }

+ 34 - 23
business-service/src/main/java/com/ozs/service/service/impl/BaseRailwayManagementServiceImpl.java

@@ -17,7 +17,7 @@ import java.util.List;
 
 /**
  * <p>
- *  线路管理表 服务实现类
+ * 线路管理表 服务实现类
  * </p>
  *
  * @author ozs
@@ -25,7 +25,7 @@ import java.util.List;
  */
 @Service
 public class BaseRailwayManagementServiceImpl extends ServiceImpl<BaseRailwayManagementMapper, BaseRailwayManagement> implements BaseRailwayManagementService {
-   
+
     @Resource
     BaseRailwayManagementMapper baseRailwayManagementMapper;
     @Autowired
@@ -33,12 +33,13 @@ public class BaseRailwayManagementServiceImpl extends ServiceImpl<BaseRailwayMan
 
     /**
      * 导出线路管理表信息
+     *
      * @param accountManageList 线路管理表信息列表
-     * @param updateSupport 是否更新支持,如果已存在,则进行更新数据
+     * @param updateSupport     是否更新支持,如果已存在,则进行更新数据
      * @return
      */
     @Override
-    public String importBaseLineManagement(List<BaseRailwayManagement> accountManageList, boolean updateSupport,String userId) {
+    public String importBaseLineManagement(List<BaseRailwayManagement> accountManageList, boolean updateSupport, String userId) {
         if (com.ozs.common.utils.StringUtils.isNull(accountManageList) || accountManageList.size() == 0) {
             throw new ServiceException("导入线路管理信息不能为空!");
         }
@@ -48,28 +49,38 @@ public class BaseRailwayManagementServiceImpl extends ServiceImpl<BaseRailwayMan
         StringBuilder failureMsg = new StringBuilder();
         for (BaseRailwayManagement railwayManagement : accountManageList) {
             try {
-                // 判断相机编码是否存在
-                LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
-                if (!ObjectUtils.isEmpty(railwayManagement.getRailwayCode())) {
-                    lw.eq(BaseRailwayManagement::getRailwayCode, railwayManagement.getRailwayCode());
+                LambdaQueryWrapper<BaseRailwayManagement> wrapper = new LambdaQueryWrapper<BaseRailwayManagement>();
+                if (!ObjectUtils.isEmpty(railwayManagement.getRailwayName())) {
+                    wrapper.eq(BaseRailwayManagement::getRailwayName, railwayManagement.getRailwayName());
                 }
-                BaseRailwayManagement baseLineManagement = baseRailwayManagementMapper.selectOne(lw);
-                if (ObjectUtils.isEmpty(baseLineManagement)) {
-                    BeanValidators.validateWithException(validator, railwayManagement);
-                    railwayManagement.setUpdateBy(userId);
-                    railwayManagement.setCreateBy(userId);
-                    baseRailwayManagementMapper.insert(railwayManagement);
-                    successNum++;
-                    successMsg.append("<br/>" + successNum + "、线路编码 " + railwayManagement.getRailwayCode() + " 导入成功");
-                } else if (updateSupport) {
-                    BeanValidators.validateWithException(validator, railwayManagement);
-                    railwayManagement.setUpdateBy(userId);
-                    baseRailwayManagementMapper.update(railwayManagement,lw);
-                    successNum++;
-                    successMsg.append("<br/>" + successNum + "、线路编码 " + railwayManagement.getRailwayCode()  + " 更新成功");
+                BaseRailwayManagement railwayManagement1 = baseRailwayManagementMapper.selectOne(wrapper);
+                if (!ObjectUtils.isEmpty(railwayManagement1)) {
+                    // 判断相机编码是否存在
+                    LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
+                    if (!ObjectUtils.isEmpty(railwayManagement.getRailwayCode())) {
+                        lw.eq(BaseRailwayManagement::getRailwayCode, railwayManagement.getRailwayCode());
+                    }
+                    BaseRailwayManagement baseLineManagement = baseRailwayManagementMapper.selectOne(lw);
+                    if (ObjectUtils.isEmpty(baseLineManagement)) {
+                        BeanValidators.validateWithException(validator, railwayManagement);
+                        railwayManagement.setUpdateBy(userId);
+                        railwayManagement.setCreateBy(userId);
+                        baseRailwayManagementMapper.insert(railwayManagement);
+                        successNum++;
+                        successMsg.append("<br/>" + successNum + "、线路编码 " + railwayManagement.getRailwayCode() + " 导入成功");
+                    } else if (updateSupport) {
+                        BeanValidators.validateWithException(validator, railwayManagement);
+                        railwayManagement.setUpdateBy(userId);
+                        baseRailwayManagementMapper.update(railwayManagement, lw);
+                        successNum++;
+                        successMsg.append("<br/>" + successNum + "、线路编码 " + railwayManagement.getRailwayCode() + " 更新成功");
+                    } else {
+                        failureNum++;
+                        failureMsg.append("<br/>" + failureNum + "、线路编码 " + railwayManagement.getRailwayCode() + " 已存在");
+                    }
                 } else {
                     failureNum++;
-                    failureMsg.append("<br/>" + failureNum + "、线路编码 " + railwayManagement.getRailwayCode() + " 已存在");
+                    failureMsg.append("<br/>" + failureNum + "、线路名称 " + railwayManagement.getRailwayName() + " 已存在");
                 }
             } catch (Exception e) {
                 failureNum++;

+ 4 - 0
business-service/src/main/resources/mapper/service/BaseUserMapper.xml

@@ -67,4 +67,8 @@
     <select id="getUserName" resultType="com.ozs.service.entity.BaseUser" parameterType="java.lang.String">
         select user_id userId, dept_id deptId, data_permission dataPermission from sys_user where user_name = #{userName}
     </select>
+    <select id="getUserIdsList" resultType="java.lang.String">
+        select user_id
+        from sys_user
+    </select>
 </mapper>

+ 1 - 1
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java

@@ -169,7 +169,7 @@ public class BaseCameraManagementController extends BaseController {
     @ApiOperation(value = "相机台账管理分页")
     @PostMapping("/list")
     public AjaxResult selectBaseAccountManagement(@RequestBody BaseCameraManagementVo baseCameraManagementVo) {
-        List<String> userIds = baseCameraManagementService.getUserIds(getUserId());
+        List<String> userIds = baseCameraManagementService.getUserIdList(getUserId());
         LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
         if (!ObjectUtils.isEmpty(userIds)) {
             lw.in(BaseCameraManagement::getCreateBy, userIds);

+ 40 - 8
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseRailwayManagementController.java

@@ -71,7 +71,7 @@ public class BaseRailwayManagementController extends BaseController {
     @ApiOperation(value = "线路管理表分页")
     @PostMapping("/list")
     public AjaxResult selectBaseLineManagement(@RequestBody BaseRailwayManagementVo baseRailwayManagementVo) {
-        List<String> userIds = baseCameraManagementService.getUserIds(getUserId());
+        List<String> userIds = baseCameraManagementService.getUserIdList(getUserId());
         LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
         if (!ObjectUtils.isEmpty(userIds)) {
             lw.in(BaseRailwayManagement::getCreateBy, userIds);
@@ -134,11 +134,35 @@ public class BaseRailwayManagementController extends BaseController {
     @PostMapping("/saveRailwayManagement")
     @ApiOperation("新增线路管理表信息")
     public AjaxResult saveLineManagement(@RequestBody BaseRailwayManagement baseRailwayManagement) {
+        String idempotence = idempotenceUtils.getIdempotence(baseRailwayManagement.getRailwayCode());
+        if (StringUtils.isNotEmpty(idempotence)){
+            return  error("你的网络卡顿,请不要一直添加!!!");
+        }
+        idempotenceUtils.createIdempotence(baseRailwayManagement.getRailwayCode());
+        
+        LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
+        if (!ObjectUtils.isEmpty(baseRailwayManagement.getRailwayCode())) {
+            lw.eq(BaseRailwayManagement::getRailwayCode, baseRailwayManagement.getRailwayCode());
+            BaseRailwayManagement railwayManagement = baseRailwayManagementService.getOne(lw);
+            if (!ObjectUtils.isEmpty(railwayManagement)) {
+                return error("线路编码已存在,不能重复添加");
+            }
+        }
+        if (!ObjectUtils.isEmpty(baseRailwayManagement.getRailwayName())) {
+            lw.eq(BaseRailwayManagement::getRailwayName, baseRailwayManagement.getRailwayName());
+            BaseRailwayManagement railwayManagement = baseRailwayManagementService.getOne(lw);
+            if (!ObjectUtils.isEmpty(railwayManagement)) {
+                return error("线路名称已存在,不能重复添加");
+            }
+        }
+        
         baseRailwayManagement.setCreateBy(getUserId());
         baseRailwayManagement.setUpdateBy(getUserId());
         if (baseRailwayManagementService.save(baseRailwayManagement)) {
+            idempotenceUtils.deleteIdempotence(baseRailwayManagement.getRailwayCode());
             return AjaxResult.success();
         }
+        idempotenceUtils.deleteIdempotence(baseRailwayManagement.getRailwayCode());
         return AjaxResult.error();
     }
 
@@ -151,15 +175,25 @@ public class BaseRailwayManagementController extends BaseController {
     @PutMapping("/editRailwayManagement")
     @ApiOperation("修改线路管理表信息")
     public AjaxResult editLineManagement(@RequestBody BaseRailwayManagement baseRailwayManagement) {
-        String idempotence = idempotenceUtils.getIdempotence(baseRailwayManagement.getRailwayCode());
-        if (StringUtils.isNotEmpty(idempotence)){
-            return  error("你的网络卡顿,请不要一直添加!!!");
-        }
-        idempotenceUtils.createIdempotence(baseRailwayManagement.getRailwayCode());
         BaseRailwayManagement baseRailwayManagement1 = baseRailwayManagementService.getById(baseRailwayManagement.getId());
         if (ObjectUtils.isEmpty(baseRailwayManagement1)) {
             return error("主键不存在");
         }
+        LambdaQueryWrapper<BaseRailwayManagement> lw = new LambdaQueryWrapper<BaseRailwayManagement>();
+        if (!ObjectUtils.isEmpty(baseRailwayManagement.getRailwayCode())) {
+            lw.eq(BaseRailwayManagement::getRailwayCode, baseRailwayManagement.getRailwayCode());
+            BaseRailwayManagement railwayManagement = baseRailwayManagementService.getOne(lw);
+            if (!ObjectUtils.isEmpty(railwayManagement) && !baseRailwayManagement.getId().equals(railwayManagement.getId())) {
+                return error("线路编码已存在,不能进行修改操作");
+            }
+        }
+        if (!ObjectUtils.isEmpty(baseRailwayManagement.getRailwayName())) {
+            lw.eq(BaseRailwayManagement::getRailwayName, baseRailwayManagement.getRailwayName());
+            BaseRailwayManagement railwayManagement = baseRailwayManagementService.getOne(lw);
+            if (!ObjectUtils.isEmpty(railwayManagement) && !baseRailwayManagement.getId().equals(railwayManagement.getId())) {
+                return error("线路名称已存在,不能进行修改操作");
+            }
+        }
         if (!baseRailwayManagement1.getRailwayCode().equals(baseRailwayManagement.getRailwayCode())) {
             LambdaQueryWrapper<BaseCameraManagement> wrapper = new LambdaQueryWrapper();
             wrapper.eq(BaseCameraManagement::getRailwayCode, baseRailwayManagement1.getRailwayCode());
@@ -170,10 +204,8 @@ public class BaseRailwayManagementController extends BaseController {
         }
         baseRailwayManagement.setUpdateBy(getUserId());
         if (baseRailwayManagementService.updateById(baseRailwayManagement)) {
-            idempotenceUtils.deleteIdempotence(baseRailwayManagement.getRailwayCode());
             return AjaxResult.success();
         }
-        idempotenceUtils.deleteIdempotence(baseRailwayManagement.getRailwayCode());
         return AjaxResult.error();
     }
 

+ 1 - 1
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/MsgAlarmController.java

@@ -149,7 +149,7 @@ public class MsgAlarmController extends BaseController {
         if (!ObjectUtils.isEmpty(msgAlarmVo.getRailwayCode()) || !ObjectUtils.isEmpty(msgAlarmVo.getBeginMile()) || !ObjectUtils.isEmpty(msgAlarmVo.getEndMile())) {
             baseCameraManagementList = baseCameraManagementService.list(wrapper);
         }
-        List<String> userIds = baseCameraManagementService.getUserIds(getUserId());
+        List<String> userIds = baseCameraManagementService.getUserIdList(getUserId());
         LambdaQueryWrapper<MsgAlarm> lw = new LambdaQueryWrapper<MsgAlarm>();
         if (!ObjectUtils.isEmpty(userIds)) {
             lw.in(MsgAlarm::getCreateBy, userIds);