Преглед изворни кода

更多消息--总数,已读数

sunhh пре 2 година
родитељ
комит
eab39fbc68

+ 3 - 0
business-service/src/main/java/com/ozs/service/mapper/MsgWebPushMapper.java

@@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Author : sunhh
@@ -22,4 +23,6 @@ public interface MsgWebPushMapper extends BaseMapper<MsgWebPush> {
     List<MsgAlarm> messageMore(MsgAlarmVo msgAlarmVo);
 
     List<String> messageMoreByUserIds(List<String> userIds);
+
+    Map<String, Integer> messageMoreNum(MsgAlarmVo msgAlarmVo);
 }

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

@@ -20,4 +20,6 @@ public interface MsgWebPushService extends IService<MsgWebPush> {
     Map webAlarm(String userId);
 
     IPage messageMore(String userId, MsgAlarmVo msgAlarmVo);
+
+    Map<String, Integer> messageMoreNum(String userId, MsgAlarmVo msgAlarmVo);
 }

+ 10 - 2
business-service/src/main/java/com/ozs/service/service/impl/MsgWebPushServiceImpl.java

@@ -59,10 +59,10 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
     @Override
     public IPage messageMore(String userId, MsgAlarmVo msgAlarmVo) {
         List<String> userIds = baseCameraManagementService.getUserIds(userId);
-         msgAlarmVo.setUserIds(userIds);
+        msgAlarmVo.setUserIds(userIds);
         List<MsgAlarm> webAlarm = msgWebPushMapper.messageMore(msgAlarmVo);
         Page<MsgAlarm> page = PageUtils.getPages(msgAlarmVo.getPageNum().intValue(), msgAlarmVo.getPageSize().intValue(), webAlarm);
-        if(!ObjectUtils.isEmpty(page) && !ObjectUtils.isEmpty(page.getRecords())){
+        if (!ObjectUtils.isEmpty(page) && !ObjectUtils.isEmpty(page.getRecords())) {
             List<MsgAlarm> dto1 = page.getRecords().stream().map(o -> {
                 String[] split = o.getImageUrl().split(";");
                 ArrayList<String> objects = new ArrayList<>(Arrays.asList(split));
@@ -92,4 +92,12 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
         }
         return page;
     }
+
+    @Override
+    public Map<String, Integer> messageMoreNum(String userId, MsgAlarmVo msgAlarmVo) {
+        List<String> userIds = baseCameraManagementService.getUserIds(userId);
+        msgAlarmVo.setUserIds(userIds);
+        Map<String, Integer> map = msgWebPushMapper.messageMoreNum(msgAlarmVo);
+        return map;
+    }
 }

+ 12 - 0
business-service/src/main/resources/mapper/service/MsgWebPushMapper.xml

@@ -68,4 +68,16 @@
             </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
+        <where>
+            <if test="userIds != null and userIds != ''">
+                and receive_by in
+                <foreach item="item" collection="userIds" index="index" separator="," open="(" close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
 </mapper>

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

@@ -80,6 +80,17 @@ public class MsgAlarmController extends BaseController {
     @Autowired
     private ISysDictDataService dictDataService;
 
+    /**
+     * web更多消息-总数,已读数
+     */
+    @PostMapping("/messageMoreNum")
+    @ApiOperation("更多消息--总数,已读数")
+    public AjaxResult messageMoreNum(@RequestBody MsgAlarmVo msgAlarmVo) {
+        String userId = getUserId();
+        Map<String, Integer> messageMore = msgWebPushService.messageMoreNum(userId, msgAlarmVo);
+        return AjaxResult.success(messageMore);
+    }
+
     /**
      * web更多消息
      */

+ 1 - 1
hazard-admin/src/main/java/com/ozs/web/controller/system/SysUserController.java

@@ -263,10 +263,10 @@ public class SysUserController extends BaseController {
             user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         }
         int i = userService.updateUsersUpdate(user);
-        LoginUser loginUser = getLoginUser();
         if (i != 0) {
             // redisCache.deleteObject(CacheConstants.LOGIN_TOKEN_KEY + tokenId);
             // 删除用户缓存记录
+            LoginUser loginUser = getLoginUser();
             tokenService.delLoginUser(loginUser.getToken());
         }
         return toAjax(i);