From d0ba0324430a0010ecf47e5cc0e4df609d586cfd Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 19 六月 2024 11:31:00 +0800
Subject: [PATCH] 会议学生端查询

---
 src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 36 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java
index 137c43d..50ba3f3 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ycl.jxkg.context.WebContext;
 import com.ycl.jxkg.domain.entity.Meet;
+import com.ycl.jxkg.mapper.ClassesUserMapper;
 import com.ycl.jxkg.mapper.MeetMapper;
 import com.ycl.jxkg.service.MeetService;
 import com.ycl.jxkg.base.Result;
@@ -12,11 +13,14 @@
 import com.ycl.jxkg.domain.vo.MeetVO;
 import com.ycl.jxkg.domain.query.MeetQuery;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.core.userdetails.User;
 import org.springframework.stereotype.Service;
 import lombok.RequiredArgsConstructor;
 import com.ycl.jxkg.utils.PageUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.util.Assert;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -35,7 +39,9 @@
     private final MeetMapper meetMapper;
 
     @Autowired
-    protected WebContext webContext;
+    private WebContext webContext;
+    @Autowired
+    private ClassesUserMapper classesUserMapper;
     /**
      * 娣诲姞
      * @param form
@@ -44,7 +50,6 @@
     @Override
     public Result add(MeetForm form) {
         Meet entity = MeetForm.getEntityByForm(form, null);
-        entity.setStudentIds(JSONArray.toJSONString(form.getStudentIds()));
         entity.setCreateUser(webContext.getCurrentUser().getId());
         baseMapper.insert(entity);
         return Result.ok("娣诲姞鎴愬姛");
@@ -62,7 +67,6 @@
         // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊
         Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
         BeanUtils.copyProperties(form, entity);
-        entity.setStudentIds(JSONArray.toJSONString(form.getStudentIds()));
         baseMapper.updateById(entity);
         return Result.ok("淇敼鎴愬姛");
     }
@@ -90,13 +94,14 @@
     }
 
     /**
-     * 鍒嗛〉鏌ヨ
+     * 鏁欏笀鍒嗛〉鏌ヨ
      * @param query
      * @return
      */
     @Override
     public Result page(MeetQuery query) {
-
+        Integer id = webContext.getCurrentUser().getId();
+        query.setTeacherId(id);
         IPage<Meet> page = PageUtil.getPage(query, Meet.class);
         baseMapper.getPage(page, query);
         List<Meet> records = page.getRecords();
@@ -104,7 +109,32 @@
         for (Meet record : records) {
             MeetVO meetVO = new MeetVO();
             BeanUtils.copyProperties(record,meetVO);
-            meetVO.setStudentIds(JSONArray.parseArray(record.getStudentIds(),Integer.class));
+            vos.add(meetVO);
+        }
+        return Result.ok().data(vos).total(page.getTotal());
+    }
+
+    /**
+     * 瀛︾敓鍒嗛〉鏌ヨ
+     * @param query
+     * @return
+     */
+    @Override
+    public Result studentPage(MeetQuery query) {
+        Integer userId = webContext.getCurrentUser().getId();
+        //鏌ュ嚭瀛︾敓鎵�鍦ㄧ彮绾�
+        List<Integer> classes = classesUserMapper.getClassesByUserId(userId);
+        if(CollectionUtils.isEmpty(classes)){
+            return Result.ok("鎮ㄦ殏鏈姞鍏ョ彮绾�");
+        }
+        query.setClassesIds(classes);
+        IPage<Meet> page = PageUtil.getPage(query, Meet.class);
+        baseMapper.getPage(page, query);
+        List<Meet> records = page.getRecords();
+        List<MeetVO> vos = new ArrayList<>();
+        for (Meet record : records) {
+            MeetVO meetVO = new MeetVO();
+            BeanUtils.copyProperties(record,meetVO);
             vos.add(meetVO);
         }
         return Result.ok().data(vos).total(page.getTotal());

--
Gitblit v1.8.0