From b129977dbaff2501459009577667ab11ed0163ab Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 28 十月 2024 18:31:07 +0800
Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/jxkg-new

---
 src/main/java/com/ycl/jxkg/service/ClassesUserService.java                              |    8 ++++++++
 src/main/java/com/ycl/jxkg/config/spring/security/RestAuthenticationSuccessHandler.java |    3 +++
 src/main/java/com/ycl/jxkg/domain/vo/admin/user/UserResponseVO.java                     |    4 ++++
 src/main/java/com/ycl/jxkg/controller/admin/UserController.java                         |   22 +++++++++++++++-------
 src/main/java/com/ycl/jxkg/service/impl/ClassesUserServiceImpl.java                     |   11 +++++++++++
 5 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/ycl/jxkg/config/spring/security/RestAuthenticationSuccessHandler.java b/src/main/java/com/ycl/jxkg/config/spring/security/RestAuthenticationSuccessHandler.java
index 7cae4c2..a4f55de 100644
--- a/src/main/java/com/ycl/jxkg/config/spring/security/RestAuthenticationSuccessHandler.java
+++ b/src/main/java/com/ycl/jxkg/config/spring/security/RestAuthenticationSuccessHandler.java
@@ -87,6 +87,9 @@
                 UserEventLog userEventLog = new UserEventLog(user.getId(), user.getUserName(), user.getRealName(), new Date());
                 userEventLog.setContent(user.getUserName() + " 鐧诲綍浜嗘睙瑗胯闊宠棰戝煿璁郴缁�");
                 eventPublisher.publishEvent(new UserEvent(userEventLog));
+                // 淇敼鐢ㄦ埛鐨勬渶鍚庣櫥褰曟椂闂�
+                user.setLastActiveTime(new Date());
+                userService.updateUser(user);
                 UserLoginVO userLoginVO = new UserLoginVO();
                 BeanUtils.copyProperties(user,userLoginVO);
                 List<String> classesNames = classesUserMapper.getClassesNameByUserId(user.getId());
diff --git a/src/main/java/com/ycl/jxkg/controller/admin/UserController.java b/src/main/java/com/ycl/jxkg/controller/admin/UserController.java
index 9f6bf0e..03fe41d 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/UserController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/UserController.java
@@ -1,12 +1,12 @@
 package com.ycl.jxkg.controller.admin;
 
 import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
-import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
 import com.github.pagehelper.PageInfo;
 import com.ycl.jxkg.base.BaseApiController;
 import com.ycl.jxkg.base.Result;
 import com.ycl.jxkg.base.SystemCode;
 import com.ycl.jxkg.context.WebContext;
+import com.ycl.jxkg.domain.entity.Classes;
 import com.ycl.jxkg.domain.entity.User;
 import com.ycl.jxkg.domain.entity.UserEventLog;
 import com.ycl.jxkg.domain.other.KeyValue;
@@ -14,9 +14,7 @@
 import com.ycl.jxkg.domain.vo.admin.user.*;
 import com.ycl.jxkg.enums.RoleEnum;
 import com.ycl.jxkg.enums.UserStatusEnum;
-import com.ycl.jxkg.service.AuthenticationService;
-import com.ycl.jxkg.service.UserEventLogService;
-import com.ycl.jxkg.service.UserService;
+import com.ycl.jxkg.service.*;
 import com.ycl.jxkg.utils.DateTimeUtil;
 import com.ycl.jxkg.utils.PageInfoHelper;
 import lombok.RequiredArgsConstructor;
@@ -27,11 +25,8 @@
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
-import java.util.Objects;
 import java.util.UUID;
 import java.util.stream.Collectors;
 
@@ -44,6 +39,8 @@
     private final UserEventLogService userEventLogService;
     private final AuthenticationService authenticationService;
     private final WebContext webContext;
+    private final ClassesUserService classesUserService;
+    private final ClassesService classesService;
     private final Integer teacher = 2;
     private final Integer student = 1;
 
@@ -57,6 +54,17 @@
         }
         PageInfo<User> pageInfo = userService.userPage(model);
         PageInfo<UserResponseVO> page = PageInfoHelper.copyMap(pageInfo, d -> UserResponseVO.from(d));
+        // 鎵惧埌姣忎釜鐢ㄦ埛瀵瑰簲鐨勭彮绾�
+        List<UserResponseVO> list = page.getList();
+        list.stream().peek(item -> {
+            List<Integer> classesIds = classesUserService.getByUserId(item.getId());
+            List<String> classNames = classesIds.stream().map(classesId -> {
+                Classes classes = classesService.getById(classesId);
+                return classes.getClassName();
+            }).collect(Collectors.toList());
+            item.setClassName(classNames);
+        }).collect(Collectors.toList());
+        page.setList(list);
         return Result.ok(page);
     }
 
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/user/UserResponseVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/user/UserResponseVO.java
index b3fb606..0004f28 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/user/UserResponseVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/user/UserResponseVO.java
@@ -5,6 +5,8 @@
 import lombok.Data;
 import org.springframework.beans.BeanUtils;
 
+import java.util.List;
+
 @Data
 public class UserResponseVO {
 
@@ -38,6 +40,8 @@
 
     private String imagePath;
 
+    private List<String> className;
+
     public static UserResponseVO from(User user) {
         UserResponseVO vo = new UserResponseVO();
         BeanUtils.copyProperties(user, vo);
diff --git a/src/main/java/com/ycl/jxkg/service/ClassesUserService.java b/src/main/java/com/ycl/jxkg/service/ClassesUserService.java
index a9e8fe9..5bbf767 100644
--- a/src/main/java/com/ycl/jxkg/service/ClassesUserService.java
+++ b/src/main/java/com/ycl/jxkg/service/ClassesUserService.java
@@ -81,4 +81,12 @@
      * @return
      */
     List<StudentVO> getTeacherListByClassesId(Integer id);
+
+    /**
+     * 鏌ヨ鐢ㄦ埛瀵瑰簲鐝骇
+     *
+     * @param userId
+     * @return
+     */
+    List<Integer> getByUserId(Integer userId);
 }
diff --git a/src/main/java/com/ycl/jxkg/service/impl/ClassesUserServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/ClassesUserServiceImpl.java
index 8daf2ef..89de8b7 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/ClassesUserServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/ClassesUserServiceImpl.java
@@ -136,6 +136,17 @@
     }
 
     /**
+     * 鏍规嵁鐢ㄦ埛id鑾峰彇鐢ㄦ埛鐝骇淇℃伅
+     *
+     * @param userId
+     * @return
+     */
+    @Override
+    public List<Integer> getByUserId(Integer userId) {
+        return classesUserMapper.getClassesByUserId(userId);
+    }
+
+    /**
      * 淇敼
      *
      * @param form

--
Gitblit v1.8.0