From 11efc9210b47e1bc98906422ab534c9042c3e71d Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 27 五月 2024 15:53:32 +0800
Subject: [PATCH] 优化随机试卷列表

---
 src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java |   21 +++++++++++++++++----
 1 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
index 32014ce..bf9c107 100644
--- a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
+++ b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
@@ -1,6 +1,9 @@
 package com.mindskip.xzs.service.impl;
 
+import com.mindskip.xzs.context.WebContext;
 import com.mindskip.xzs.domain.Subject;
+import com.mindskip.xzs.repository.BaseMapper;
+import com.mindskip.xzs.repository.DepartmentMapper;
 import com.mindskip.xzs.repository.SubjectMapper;
 import com.mindskip.xzs.service.SubjectService;
 import com.mindskip.xzs.viewmodel.admin.education.SubjectPageRequestVM;
@@ -9,17 +12,21 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 
 @Service
 public class SubjectServiceImpl extends BaseServiceImpl<Subject> implements SubjectService {
 
     private final SubjectMapper subjectMapper;
+    private final WebContext webContext;
+    private final DepartmentMapper departmentMapper;
 
-    @Autowired
-    public SubjectServiceImpl(SubjectMapper subjectMapper) {
-        super(subjectMapper);
+    public SubjectServiceImpl(BaseMapper<Subject> baseMapper, SubjectMapper subjectMapper, WebContext webContext, DepartmentMapper departmentMapper) {
+        super(baseMapper);
         this.subjectMapper = subjectMapper;
+        this.webContext = webContext;
+        this.departmentMapper = departmentMapper;
     }
 
     @Override
@@ -39,7 +46,13 @@
 
     @Override
     public List<Subject> allSubject() {
-        return subjectMapper.allSubject();
+        // 濡傛灉鏄儴闂ㄧ鐞嗗憳锛屽彧鏌ュ叧鑱旇閮ㄩ棬鐨勮鐩�
+        boolean deptAdmin = webContext.isDeptAdmin();
+        List<Integer> deptIds = new ArrayList<>();
+        if (deptAdmin) {
+            deptIds = webContext.getAdminDeptIds();
+        }
+        return subjectMapper.allSubject(deptIds);
     }
 
     @Override

--
Gitblit v1.8.0