Browse Source

数据权限

sunhh 2 years ago
parent
commit
71acbbaa5a

+ 12 - 12
.idea/jarRepositories.xml

@@ -1,16 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="RemoteRepositoriesConfiguration">
-    <remote-repository>
-      <option name="id" value="central" />
-      <option name="name" value="Central Repository" />
-      <option name="url" value="https://maven.aliyun.com/repository/public" />
-    </remote-repository>
-    <remote-repository>
-      <option name="id" value="central" />
-      <option name="name" value="Central Repository" />
-      <option name="url" value="https://repo.maven.apache.org/maven2" />
-    </remote-repository>
     <remote-repository>
       <option name="id" value="public" />
       <option name="name" value="aliyun nexus" />
@@ -18,8 +8,8 @@
     </remote-repository>
     <remote-repository>
       <option name="id" value="central" />
-      <option name="name" value="Maven Central repository" />
-      <option name="url" value="https://repo1.maven.org/maven2" />
+      <option name="name" value="Central Repository" />
+      <option name="url" value="https://repo.maven.apache.org/maven2" />
     </remote-repository>
     <remote-repository>
       <option name="id" value="central" />
@@ -36,6 +26,11 @@
       <option name="name" value="Central Repository" />
       <option name="url" value="http://maven.aliyun.com/nexus/content/repositories/central/" />
     </remote-repository>
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Maven Central repository" />
+      <option name="url" value="https://repo1.maven.org/maven2" />
+    </remote-repository>
     <remote-repository>
       <option name="id" value="custom_group" />
       <option name="name" value="Nexus Repository" />
@@ -46,5 +41,10 @@
       <option name="name" value="JBoss Community repository" />
       <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
     </remote-repository>
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Central Repository" />
+      <option name="url" value="https://maven.aliyun.com/repository/public" />
+    </remote-repository>
   </component>
 </project>

+ 2 - 6
business-service/src/main/java/com/ozs/service/mapper/MsgWebPushMapper.java

@@ -16,15 +16,11 @@ import java.util.Map;
  */
 @Mapper
 public interface MsgWebPushMapper extends BaseMapper<MsgWebPush> {
-    Integer webAlarmNum(@Param("userIds") List<String> userIds);
+    Integer webAlarmNum(MsgAlarmVo msgAlarmParameter);
 
-    List<MsgAlarm> webAlarm(@Param("userIds") List<String> userIds);
+    List<MsgAlarm> webAlarm(MsgAlarmVo msgAlarmParameter);
 
     List<MsgAlarm> messageMore(MsgAlarmVo msgAlarmVo);
 
-    List<String> messageMoreByUserIds(List<String> userIds);
-
     Map<String, Integer> messageMoreNum(MsgAlarmVo msgAlarmVo);
-
-    int messageMoreCount(MsgAlarmVo msgAlarmVo);
 }

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

@@ -28,9 +28,9 @@ public interface BaseCameraManagementService extends IService<BaseCameraManageme
      */
     String importBaseAccountManagement(List<BaseCameraManagementVos> accountManageList, boolean updateSupport, String userId);
 
-    List<BaseCameraManagementHomeVo> selectCameraAll(String userId);
+    List<BaseCameraManagementHomeVo> selectCameraAll(BaseCameraManagementVo baseCameraManagementVo);
     
-    List<String> getUserIds(String userId);
+//    List<String> getUserIds(String userId);
 
     List<String> getUserIdList(String userId);
 

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

@@ -17,9 +17,9 @@ import java.util.Map;
 public interface MsgWebPushService extends IService<MsgWebPush> {
     int read(MsgWebPush msgWebPush);
 
-    Map webAlarm(String userId);
+    Map webAlarm(MsgAlarmVo msgAlarm);
 
-    IPage<MsgAlarm> messageMore(String userId, MsgAlarmVo msgAlarmVo);
+    IPage<MsgAlarm> messageMore(MsgAlarmVo msgAlarmVo);
 
-    Map<String, Integer> messageMoreNum(String userId, MsgAlarmVo msgAlarmVo);
+    Map<String, Integer> messageMoreNum(MsgAlarmVo msgAlarmVo);
 }

+ 10 - 9
business-service/src/main/java/com/ozs/service/service/impl/BaseCameraManagementServiceImpl.java

@@ -181,13 +181,14 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
      * @return
      */
     @Override
-    public List<BaseCameraManagementHomeVo> selectCameraAll(String userId) {
-        List<String> userIdList = getUserIds(userId);
-        LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
-        if (!StringUtils.isEmpty(userIdList)) {
-            lw.in(BaseCameraManagement::getCreateBy, userIdList);
-        }
-        List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementMapper.selectList(lw);
+    public List<BaseCameraManagementHomeVo> selectCameraAll(BaseCameraManagementVo baseCameraManagementVo) {
+//        List<String> userIdList = getUserIds(userId);
+//        LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
+//        if (!StringUtils.isEmpty(userIdList)) {
+//            lw.in(BaseCameraManagement::getCreateBy, userIdList);
+//        }
+//        List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementMapper.selectList(lw);
+        List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementMapper.selectCameraManagementList(baseCameraManagementVo);
         List<BaseCameraManagementHomeVo> allListVo = BeanUtils.entityListToVOList(baseCameraManagementList, BaseCameraManagementHomeVo.class);
         for (BaseCameraManagementHomeVo baseCameraManagementHomeVo : allListVo) {
             Map map = msgAlarmMapper.selectCameraCode(baseCameraManagementHomeVo.getCameraCode());
@@ -206,7 +207,7 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
      * @param userId
      * @return
      */
-    public List<String> getUserIds(String userId) {
+   /* public List<String> getUserIds(String userId) {
         BaseUser baseUser = baseUserService.getUser(userId);
         if (StringUtils.isNull(baseUser) || StringUtils.isNull(baseUser.getDataPermission())
                 || StringUtils.isNull(baseUser.getDeptId())) {
@@ -241,7 +242,7 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
         }
         List<String> list = new ArrayList<>(set);
         return list;
-    }
+    }*/
 
 
     /**

+ 6 - 16
business-service/src/main/java/com/ozs/service/service/impl/MsgWebPushServiceImpl.java

@@ -47,17 +47,12 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
     }
 
     @Override
-    public Map webAlarm(String userId) {
-        List<String> userIds = baseCameraManagementService.getUserIds(userId);
+    public Map webAlarm(MsgAlarmVo msgAlarmParameter) {
+        // List<String> userIds = baseCameraManagementService.getUserIds(userId);
         Map<String, Object> webAlarmMap = new HashMap<>();
         List<MsgAlarmResp> msgAlarmRespList = new ArrayList<>();
-        if (StringUtils.isEmpty(userIds)) {
-            webAlarmMap.put("webAlarmNum", 0);
-            webAlarmMap.put("webAlarm", msgAlarmRespList);
-            return webAlarmMap;
-        }
-        Integer webAlarmNum = msgWebPushMapper.webAlarmNum(userIds);
-        List<MsgAlarm> webAlarm = msgWebPushMapper.webAlarm(userIds);
+        Integer webAlarmNum = msgWebPushMapper.webAlarmNum(msgAlarmParameter);
+        List<MsgAlarm> webAlarm = msgWebPushMapper.webAlarm(msgAlarmParameter);
         if (!StringUtils.isEmpty(webAlarm) && webAlarm.size() > 0) {
             for (MsgAlarm msgAlarm : webAlarm) {
                 LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
@@ -90,10 +85,7 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
     }
 
     @Override
-    public IPage<MsgAlarm> messageMore(String userId, MsgAlarmVo msgAlarmVo) {
-        List<String> userIds = baseCameraManagementService.getUserIds(userId);
-        msgAlarmVo.setUserIds(userIds);
-        // List<MsgAlarm> webAlarm = msgWebPushMapper.messageMore(msgAlarmVo);
+    public IPage<MsgAlarm> messageMore(MsgAlarmVo msgAlarmVo) {
         Page<MsgAlarm> page = PageHelper.startPage(msgAlarmVo.getPageNum().intValue(), msgAlarmVo.getPageSize().intValue())
                 .doSelectPage(() -> msgWebPushMapper.messageMore(msgAlarmVo));
         com.baomidou.mybatisplus.extension.plugins.pagination.Page<MsgAlarm> pageR =
@@ -133,9 +125,7 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
     }
 
     @Override
-    public Map<String, Integer> messageMoreNum(String userId, MsgAlarmVo msgAlarmVo) {
-        List<String> userIds = baseCameraManagementService.getUserIds(userId);
-        msgAlarmVo.setUserIds(userIds);
+    public Map<String, Integer> messageMoreNum(MsgAlarmVo msgAlarmVo) {
         Map<String, Integer> map = msgWebPushMapper.messageMoreNum(msgAlarmVo);
         return map;
     }

+ 91 - 102
business-service/src/main/resources/mapper/service/MsgWebPushMapper.xml

@@ -3,137 +3,126 @@
 <mapper namespace="com.ozs.service.mapper.MsgWebPushMapper">
 
     <select id="webAlarmNum" parameterType="java.lang.String" resultType="java.lang.Integer">
-        select count(*) from msg_web_push where status = 1
-        <if test="userIds != null and userIds != ''">
-            and receive_by in
-            <foreach item="item" collection="userIds" separator="," open="(" close=")" index="">
-                #{item}
-            </foreach>
-        </if>
-    </select>
-
-    <select id="webAlarm" parameterType="java.lang.String" resultType="com.ozs.service.entity.MsgAlarm">
-        select b.* from (
-            select alarm_id from msg_web_push where status = 1
-                <if test="userIds != null and userIds != ''">
-                    and receive_by in
-                    <foreach item="item" collection="userIds" separator="," open="(" close=")" index="">
-                        #{item}
-                    </foreach>
-                </if>
-        ) a left join (
-            select * from msg_alarm
-        ) b on a.alarm_id = b.alarm_id
-    </select>
-
-    <select id="messageMoreByUserIds" parameterType="java.util.List" resultType="java.lang.String">
-        select alarm_id from msg_web_push where status = #{status} and receive_by in
-        <foreach item="item" collection="userIds" index="index" separator="," open="(" close=")">
-            #{item}
-        </foreach>
-    </select>
-
-    <select id="messageMore" parameterType="com.ozs.service.entity.vo.MsgAlarmVo"
-            resultType="com.ozs.service.entity.MsgAlarm">
-        select b.* from (
-        select alarm_id from msg_web_push
+        select count(1)
+        from msg_web_push AS a
+        join msg_alarm AS b on a.alarm_id = b.alarm_id
+        join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            <if test="status != null  and status != ''">
-                and status = #{status}
-            </if>
-            <if test="userIds != null and userIds != ''">
-                and receive_by in
-                <foreach item="item" collection="userIds" index="index" separator="," open="(" close=")">
-                    #{item}
-                </foreach>
+            status = 1
+            <if test="!dsFlay">
+                and
+                <trim prefix="(" prefixOverrides="or" suffix=")">
+                    <if test="dsUserId != null and dsUserId != ''">
+                        or a.receive_by = #{dsUserId}
+                    </if>
+                    <if test="dsDeptId != null and dsDeptId != 0">
+                        or c.dept_id = #{dsDeptId}
+                    </if>
+                    <if test="dsDeptIds != null">
+                        or c.dept_id in
+                        <foreach item="item" collection="dsDeptIds" separator="," open="(" close=")" index="">
+                            #{item}
+                        </foreach>
+                    </if>
+                </trim>
             </if>
         </where>
-        ) a left join (
-        select * from msg_alarm
-        <where>
-            <if test="alarmType != null and alarmType != ''">
-                and alarm_type = #{alarmType}
-            </if>
-            <if test="beginAlarmTime != null and beginAlarmTime != ''">
-                and alarm_time &gt;= #{beginAlarmTime}
-            </if>
-            <if test="endAlarmTime != null and endAlarmTime != ''">
-                and alarm_time &lt;= #{endAlarmTime}
-            </if>
-            <if test="isLock != null and isLock != ''">
-                and is_lock = #{isLock}
-            </if>
-        </where>
-        ) b on a.alarm_id = b.alarm_id left join (
-        select * from base_camera_management
+    </select>
+
+    <select id="webAlarm" parameterType="java.lang.String" resultType="com.ozs.service.entity.MsgAlarm">
+        select b.*
+        from msg_web_push AS a
+        join msg_alarm AS b on a.alarm_id = b.alarm_id
+        join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            <if test="railwayCode != null and railwayCode != ''">
-                and railway_code = #{railwayCode}
-            </if>
-            <if test="beginMile != null and beginMile != ''">
-                and begin_mile &gt;= #{beginMile}
-            </if>
-            <if test="endMile != null and endMile != ''">
-                and end_mile &lt;= #{endMile}
+            status = 1
+            <if test="!dsFlay">
+                and
+                <trim prefix="(" prefixOverrides="or" suffix=")">
+                    <if test="dsUserId != null and dsUserId != ''">
+                        or a.receive_by = #{dsUserId}
+                    </if>
+                    <if test="dsDeptId != null and dsDeptId != 0">
+                        or c.dept_id = #{dsDeptId}
+                    </if>
+                    <if test="dsDeptIds != null">
+                        or c.dept_id in
+                        <foreach item="item" collection="dsDeptIds" separator="," open="(" close=")" index="">
+                            #{item}
+                        </foreach>
+                    </if>
+                </trim>
             </if>
         </where>
-        ) c on b.camera_code = c.camera_code
     </select>
 
-    <select id="messageMoreCount" parameterType="com.ozs.service.entity.vo.MsgAlarmVo" resultType="java.lang.Integer">
-        select count(b.*) from (
-        select alarm_id from msg_web_push
+    <select id="messageMore" parameterType="com.ozs.service.entity.vo.MsgAlarmVo"
+            resultType="com.ozs.service.entity.MsgAlarm">
+        select b.*
+        from msg_web_push AS a
+        join msg_alarm AS b on a.alarm_id = b.alarm_id
+        join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            <if test="status != null  and status != ''">
-                and status = #{status}
-            </if>
-            <if test="userIds != null and userIds != ''">
-                and receive_by in
-                <foreach item="item" collection="userIds" index="index" separator="," open="(" close=")">
-                    #{item}
-                </foreach>
+            <if test="!dsFlay">
+                and
+                <trim prefix="(" prefixOverrides="or" suffix=")">
+                    <if test="dsUserId != null and dsUserId != ''">
+                        or a.receive_by = #{dsUserId}
+                    </if>
+                    <if test="dsDeptId != null and dsDeptId != 0">
+                        or c.dept_id = #{dsDeptId}
+                    </if>
+                    <if test="dsDeptIds != null">
+                        or c.dept_id in
+                        <foreach item="item" collection="dsDeptIds" separator="," open="(" close=")" index="">
+                            #{item}
+                        </foreach>
+                    </if>
+                </trim>
             </if>
-        </where>
-        ) a left join (
-        select * from msg_alarm
-        <where>
             <if test="alarmType != null and alarmType != ''">
-                and alarm_type = #{alarmType}
+                and b.alarm_type = #{alarmType}
             </if>
             <if test="beginAlarmTime != null and beginAlarmTime != ''">
-                and alarm_time &gt;= #{beginAlarmTime}
+                and b.alarm_time &gt;= #{beginAlarmTime}
             </if>
             <if test="endAlarmTime != null and endAlarmTime != ''">
-                and alarm_time &lt;= #{endAlarmTime}
+                and b.alarm_time &lt;= #{endAlarmTime}
             </if>
             <if test="isLock != null and isLock != ''">
-                and is_lock = #{isLock}
+                and b.is_lock = #{isLock}
             </if>
-        </where>
-        ) b on a.alarm_id = b.alarm_id left join (
-        select * from base_camera_management
-        <where>
             <if test="railwayCode != null and railwayCode != ''">
-                and railway_code = #{railwayCode}
+                and c.railway_code = #{railwayCode}
             </if>
             <if test="beginMile != null and beginMile != ''">
-                and begin_mile &gt;= #{beginMile}
+                and c.begin_mile &gt;= #{beginMile}
             </if>
             <if test="endMile != null and endMile != ''">
-                and end_mile &lt;= #{endMile}
+                and c.end_mile &lt;= #{endMile}
             </if>
         </where>
-        ) c on b.camera_code = c.camera_code
     </select>
 
     <select id="messageMoreNum" parameterType="com.ozs.service.entity.vo.MsgAlarmVo" resultType="java.util.Map">
-        select count(id) count, SUM(CASE status WHEN '1' THEN 1 ELSE 0 end) AS 'noCount' from msg_web_push
+        select count(1) count, SUM(CASE a.status WHEN '1' THEN 1 ELSE 0 end) AS 'noCount' from msg_web_push AS a join msg_alarm AS b on a.alarm_id = b.alarm_id join base_camera_management AS c on b.camera_code = c.camera_code
         <where>
-            <if test="userIds != null and userIds != ''">
-                and receive_by in
-                <foreach item="item" collection="userIds" index="index" separator="," open="(" close=")">
-                    #{item}
-                </foreach>
+            <if test="!dsFlay">
+                and
+                <trim prefix="(" prefixOverrides="or" suffix=")">
+                    <if test="dsUserId != null and dsUserId != ''">
+                        or a.receive_by = #{dsUserId}
+                    </if>
+                    <if test="dsDeptId != null and dsDeptId != 0">
+                        or c.dept_id = #{dsDeptId}
+                    </if>
+                    <if test="dsDeptIds != null">
+                        or c.dept_id in
+                        <foreach item="item" collection="dsDeptIds" separator="," open="(" close=")" index="">
+                            #{item}
+                        </foreach>
+                    </if>
+                </trim>
             </if>
         </where>
     </select>

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

@@ -103,8 +103,8 @@ public class BaseCameraManagementController extends BaseController {
     @ApiOperation(value = "相机台账管理")
     @GetMapping("/selectCameraAll")
     public AjaxResult selectCameraAll() {
-        String userId = getUserId();
-        List<BaseCameraManagementHomeVo> baseCameraManagements = baseCameraManagementService.selectCameraAll(userId);
+        BaseCameraManagementVo baseCameraManagementVo = (BaseCameraManagementVo) dataScoreUtil.setDataScore(getUserId(), new BaseCameraManagementVo());
+        List<BaseCameraManagementHomeVo> baseCameraManagements = baseCameraManagementService.selectCameraAll(baseCameraManagementVo);
         return AjaxResult.success(baseCameraManagements);
     }
 

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

@@ -89,8 +89,8 @@ public class MsgAlarmController extends BaseController {
     @PostMapping("/messageMoreNum")
     @ApiOperation("更多消息--总数,已读数")
     public AjaxResult messageMoreNum(@RequestBody MsgAlarmVo msgAlarmVo) {
-        String userId = getUserId();
-        Map<String, Integer> messageMore = msgWebPushService.messageMoreNum(userId, msgAlarmVo);
+        MsgAlarmVo msgAlarmVo1 = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), msgAlarmVo);
+        Map<String, Integer> messageMore = msgWebPushService.messageMoreNum(msgAlarmVo1);
         return AjaxResult.success(messageMore);
     }
 
@@ -100,8 +100,8 @@ public class MsgAlarmController extends BaseController {
     @PostMapping("/messageMore")
     @ApiOperation("更多消息")
     public AjaxResult messageMore(@RequestBody MsgAlarmVo msgAlarmVo) {
-        String userId = getUserId();
-        IPage<MsgAlarm> messageMore = msgWebPushService.messageMore(userId, msgAlarmVo);
+        MsgAlarmVo msgAlarmVo1 = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), msgAlarmVo);
+        IPage<MsgAlarm> messageMore = msgWebPushService.messageMore(msgAlarmVo1);
         return AjaxResult.success(messageMore);
     }
 
@@ -111,8 +111,8 @@ public class MsgAlarmController extends BaseController {
     @GetMapping("/webAlarm")
     @ApiOperation("app报警推送次数")
     public AjaxResult webAlarmNum() {
-        String userId = getUserId();
-        Map webAlarm = msgWebPushService.webAlarm(userId);
+        MsgAlarmVo msgAlarm = (MsgAlarmVo) dataScoreUtil.setDataScore(getUserId(), new MsgAlarmVo());
+        Map webAlarm = msgWebPushService.webAlarm(msgAlarm);
         return AjaxResult.success(webAlarm);
     }