|
|
@@ -0,0 +1,69 @@
|
|
|
+package com.ydtech.modules.admin.utils;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.ydtech.modules.admin.dao.KztDataPermissionMapper;
|
|
|
+import com.ydtech.modules.admin.dao.SysUserDeptRelationshipMapper;
|
|
|
+import com.ydtech.modules.admin.model.po.KztDataPermission;
|
|
|
+import com.ydtech.modules.admin.model.po.SysUserDeptRelationship;
|
|
|
+import com.ydtech.modules.base.controller.BaseController;
|
|
|
+import com.ydtech.utils.StringUtils;
|
|
|
+import org.apache.commons.lang3.ObjectUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.context.ApplicationContext;
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+
|
|
|
+import java.net.URI;
|
|
|
+import java.net.URISyntaxException;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+@Component
|
|
|
+public class KztGetDeptUtils {
|
|
|
+
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUserDeptRelationshipMapper sysUserDeptRelationshipMapper;
|
|
|
+ @Autowired
|
|
|
+ private KztDataPermissionMapper kztDataPermissionMapper;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ public List<String> KztGetDeptIds(String requestURL) {
|
|
|
+ try {
|
|
|
+ ApplicationContext applicationContext = SpringContextUtil.getApplicationContext();
|
|
|
+ SysUserDeptRelationshipMapper bean = applicationContext.getBean(SysUserDeptRelationshipMapper.class);
|
|
|
+ ApplicationContext applicationContext2 = SpringContextUtil.getApplicationContext();
|
|
|
+ KztDataPermissionMapper bean1 = applicationContext2.getBean(KztDataPermissionMapper.class);
|
|
|
+
|
|
|
+
|
|
|
+ URI uri = new URI(requestURL);
|
|
|
+ String path = uri.getPath();
|
|
|
+ QueryWrapper<KztDataPermission> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("url", path);
|
|
|
+
|
|
|
+ KztDataPermission kztDataPermissions = bean1.selectOne(queryWrapper);
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
+ if (ObjectUtils.isNotEmpty(kztDataPermissions)) {
|
|
|
+ QueryWrapper<SysUserDeptRelationship> relationshipQueryWrapper = new QueryWrapper<>();//用户权限关系表
|
|
|
+ relationshipQueryWrapper.eq("user_id", userId);
|
|
|
+ List<SysUserDeptRelationship> sysUserDeptRelationships = bean.selectList(relationshipQueryWrapper);
|
|
|
+ if (sysUserDeptRelationships.isEmpty()) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ String dataPermissionId = kztDataPermissions.getDataPermissionId();
|
|
|
+ if (StringUtils.isNotEmpty(dataPermissionId)) {
|
|
|
+ if ("1".equals(dataPermissionId)) {
|
|
|
+ List<String> collect = sysUserDeptRelationships.stream().map(SysUserDeptRelationship::getDeptId).collect(Collectors.toList());
|
|
|
+ return collect;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } catch (URISyntaxException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+}
|