From 03d7a29c0cf0580722657273827ad737056d9e82 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com>
Date: Thu, 23 Oct 2025 11:17:07 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../admin/controller/ISysDeptController.java | 97 +++++++++++++++++++
.../admin/service/BusinessSysDeptService.java | 52 ++++++++++
.../config/mybatis/MybatisConfiguration.java | 14 +--
.../security/CustomAccessDecisionManager.java | 2 +-
.../CustomAuthenticationSuccessHandler.java | 2 +-
.../CustomSecurityMetadataSource.java | 2 +-
6 files changed, 159 insertions(+), 10 deletions(-)
create mode 100644 ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/controller/ISysDeptController.java
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/controller/ISysDeptController.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/controller/ISysDeptController.java
new file mode 100644
index 0000000..6e6a0ad
--- /dev/null
+++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/controller/ISysDeptController.java
@@ -0,0 +1,97 @@
+package cn.xluobo.business.sys.admin.controller;
+
+
+import cn.xluobo.business.sys.admin.domain.req.ReqSearchSysDept;
+import cn.xluobo.business.sys.admin.domain.resp.RespTreeSelect;
+import cn.xluobo.business.sys.admin.service.BusinessSysDeptService;
+import cn.xluobo.core.api.APIResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ *
+ * 部门表 前端控制器
+ *
+ *
+ * @author zhangby
+ * @since 2020-01-18
+ */
+@RestController
+@RequestMapping("/api/system/dept")
+public class ISysDeptController {
+
+ @Autowired
+ private BusinessSysDeptService sysDeptService;
+
+ /**
+ * 列表
+ *
+ * @param reqSearchSysDept
+ * @return
+ */
+ @GetMapping("/list/searchList")
+ public APIResponse searchList(ReqSearchSysDept reqSearchSysDept) {
+ return sysDeptService.searchList(reqSearchSysDept);
+ }
+
+ /**
+ * 详情
+ *
+ * @param deptId
+ * @return
+ */
+ @GetMapping("/info/detailById/{deptId}")
+ public APIResponse detailById(@PathVariable("deptId") Long deptId) {
+ return sysDeptService.detailById(deptId);
+ }
+
+ /**
+ * 校区列表
+ *
+ * @return
+ */
+ @GetMapping("/list/campusList")
+ public APIResponse campusList() {
+ List respTreeSelects = sysDeptService.campusList();
+ return APIResponse.toAPIResponse(respTreeSelects);
+ }
+
+ /**
+ * 校区列表
+ *
+ * @return
+ */
+ @GetMapping("/list/campusListLimitByUser")
+ public APIResponse campusListLimitByUser() {
+ List respTreeSelects = sysDeptService.campusListLimitByUser();
+ return APIResponse.toAPIResponse(respTreeSelects);
+ }
+
+ /**
+ * 可选校区类型
+ * 如果拥有全部校区权限,返回全部校区 部分校区
+ * 否二 返回 部分校区
+ *
+ * @return
+ */
+ @GetMapping("/list/campusSelect")
+ public APIResponse campusSelect() {
+ List respTreeSelects = sysDeptService.campusSelect();
+ return APIResponse.toAPIResponse(respTreeSelects);
+ }
+
+ /**
+ * 可选校区类型
+ * 如果拥有全部校区权限,返回全部校区 部分校区
+ * 否二 返回 部分校区
+ *
+ * @return
+ */
+ @GetMapping("/list/campusSelectLimitByUser")
+ public APIResponse campusSelectLimitByUser() {
+ List respTreeSelects = sysDeptService.campusSelectLimitByUser();
+ return APIResponse.toAPIResponse(respTreeSelects);
+ }
+}
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/BusinessSysDeptService.java b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/BusinessSysDeptService.java
index d21f4a1..2a2a747 100644
--- a/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/BusinessSysDeptService.java
+++ b/ruoyi-admin/src/main/java/cn/xluobo/business/sys/admin/service/BusinessSysDeptService.java
@@ -129,4 +129,56 @@ public class BusinessSysDeptService {
return respTreeSelects;
}
+ /**
+ * 前端select
+ *
+ * @return
+ */
+ public List campusListLimitByUser() {
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ List deptList = sysDeptService.selectUserCampusList(loginUser.getUserId());
+ List respTreeSelects = deptList.stream().map(RespTreeSelect::new).collect(Collectors.toList());
+ return respTreeSelects;
+ }
+
+ /**
+ * 校区选择
+ * 如果拥有全部校区权限,返回全部校区 部分校区
+ * 否二 返回 部分校区
+ *
+ * @return
+ */
+ public List campusSelect() {
+
+ List list = Lists.newArrayList();
+
+ list.add(new RespTreeSelect(9L,"全部校区",null));
+ list.add(new RespTreeSelect(0L,"部分校区",null));
+
+ return list;
+ }
+
+ /**
+ * 校区选择
+ * 如果拥有全部校区权限,返回全部校区 部分校区
+ * 否二 返回 部分校区
+ *
+ * @return
+ */
+ public List campusSelectLimitByUser() {
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+
+ List list = Lists.newArrayList();
+
+ QueryWrapper qw = new QueryWrapper();
+ qw.eq("user_id",loginUser.getUserId());
+ qw.eq("dept_id","-1");
+ SysUserDept one = userDeptService.getOne(qw);
+ if(null != one){
+ list.add(new RespTreeSelect(9L,"全部校区",null));
+ }
+ list.add(new RespTreeSelect(0L,"部分校区",null));
+
+ return list;
+ }
}
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/config/mybatis/MybatisConfiguration.java b/ruoyi-admin/src/main/java/cn/xluobo/config/mybatis/MybatisConfiguration.java
index 78b8d02..0ccddc2 100644
--- a/ruoyi-admin/src/main/java/cn/xluobo/config/mybatis/MybatisConfiguration.java
+++ b/ruoyi-admin/src/main/java/cn/xluobo/config/mybatis/MybatisConfiguration.java
@@ -30,13 +30,13 @@ public class MybatisConfiguration {
@ConditionalOnMissingBean(PaginationInterceptor.class)
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
- List sqlParserList = new ArrayList<>();
-
- TenantSqlParser tenantSqlParser = new MyTenantParser();
- tenantSqlParser.setTenantHandler(new MyTenantHandler());
- sqlParserList.add(tenantSqlParser);
-
- paginationInterceptor.setSqlParserList(sqlParserList);
+// List sqlParserList = new ArrayList<>();
+//
+// TenantSqlParser tenantSqlParser = new MyTenantParser();
+// tenantSqlParser.setTenantHandler(new MyTenantHandler());
+// sqlParserList.add(tenantSqlParser);
+//
+// paginationInterceptor.setSqlParserList(sqlParserList);
return paginationInterceptor;
}
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAccessDecisionManager.java b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAccessDecisionManager.java
index 23ef2e4..9b33a8f 100644
--- a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAccessDecisionManager.java
+++ b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAccessDecisionManager.java
@@ -14,7 +14,7 @@ import java.util.Iterator;
/**
* Created by zhangbaoyu on 18/1/9.
*/
-@Service
+//@Service
public class CustomAccessDecisionManager implements AccessDecisionManager {
// decide 方法是判定是否拥有权限的决策方法,
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAuthenticationSuccessHandler.java b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAuthenticationSuccessHandler.java
index bbbcbf3..4b560ff 100644
--- a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAuthenticationSuccessHandler.java
+++ b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomAuthenticationSuccessHandler.java
@@ -26,7 +26,7 @@ import java.io.PrintWriter;
* @author :zhangbaoyu
* @date :Created in 2020-02-27 17:41
*/
-@Component
+//@Component
public class CustomAuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {
private RequestCache requestCache = new HttpSessionRequestCache();
diff --git a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomSecurityMetadataSource.java b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomSecurityMetadataSource.java
index 957019a..8217fdf 100644
--- a/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomSecurityMetadataSource.java
+++ b/ruoyi-admin/src/main/java/cn/xluobo/config/security/CustomSecurityMetadataSource.java
@@ -16,7 +16,7 @@ import java.util.*;
/**
* Created by zhangbaoyu on 18/1/9.
*/
-@Component
+//@Component
public class CustomSecurityMetadataSource implements FilterInvocationSecurityMetadataSource {
private HashMap> map =null;