| | |
| | | .orderByDesc(Log::getLoginTime)); |
| | | return ServerResponse.createBySuccess(pageList); |
| | | } |
| | | |
| | | @GetMapping("/addMark") |
| | | public ServerResponse addMark(@RequestParam(value = "favorites") String favorites, |
| | | HttpServletRequest request) { |
| | | String token = request.getHeader("token"); |
| | | User user = JwtUtil.verify(token); |
| | | |
| | | if (user == null) { |
| | | // 处理用户验证失败的情况,例如返回未授权错误 |
| | | return ServerResponse.createByErrorMsg("标记失败"); |
| | | } |
| | | |
| | | String mark = RedisUtil.get(user.getId() + "_mark"); |
| | | |
| | | if (StringUtils.isNotEmpty(mark)) { |
| | | // 使用 StringJoiner 或者 StringBuilder 来拼接字符串 |
| | | mark += "," + favorites; |
| | | } else { |
| | | mark = favorites; |
| | | } |
| | | |
| | | // 更新 Redis 中的标记 |
| | | RedisUtil.set(user.getId() + "_mark", mark); |
| | | |
| | | // 返回操作成功的响应 |
| | | return ServerResponse.createBySuccess("标记成功"); |
| | | } |
| | | |
| | | @GetMapping("/deleteMark") |
| | | public ServerResponse deleteMark(@RequestParam(value = "favorites") String favorites, |
| | | HttpServletRequest request) { |
| | | String token = request.getHeader("token"); |
| | | User user = JwtUtil.verify(token); |
| | | |
| | | String mark = RedisUtil.get(user.getId() + "_mark"); |
| | | |
| | | if (StringUtils.isNotEmpty(mark)) { |
| | | // 使用逗号分隔符将标记分割成数组 |
| | | String[] marks = mark.split(","); |
| | | |
| | | // 创建一个新的标记列表,用于存储没有要删除的标记 |
| | | List<String> updatedMarks = new ArrayList<>(); |
| | | |
| | | // 遍历现有的标记,将不等于要删除的标记加入新列表 |
| | | for (String m : marks) { |
| | | if (!m.equals(favorites)) { |
| | | updatedMarks.add(m); |
| | | } |
| | | } |
| | | |
| | | // 将新的标记列表转换为逗号分隔的字符串 |
| | | mark = String.join(",", updatedMarks); |
| | | |
| | | // 更新 Redis 中的标记 |
| | | RedisUtil.set(user.getId() + "_mark", mark); |
| | | |
| | | |
| | | } |
| | | // 返回操作成功的响应 |
| | | return ServerResponse.createBySuccess("取消标记成功"); |
| | | } |
| | | |
| | | } |