|
|
@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
import org.springblade.core.log.exception.ServiceException;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
@@ -31,6 +32,8 @@ import org.springblade.system.cache.SysCache;
|
|
|
import org.springblade.system.entity.Dept;
|
|
|
import org.springblade.system.mapper.DeptMapper;
|
|
|
import org.springblade.system.service.IDeptService;
|
|
|
+import org.springblade.system.user.entity.User;
|
|
|
+import org.springblade.system.user.feign.IUserClient;
|
|
|
import org.springblade.system.vo.DeptVO;
|
|
|
import org.springblade.system.wrapper.DeptWrapper;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -47,11 +50,14 @@ import java.util.stream.Collectors;
|
|
|
* @author Chill
|
|
|
*/
|
|
|
@Service
|
|
|
+@AllArgsConstructor
|
|
|
public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements IDeptService {
|
|
|
|
|
|
private static final String TENANT_ID = "tenantId";
|
|
|
private static final String PARENT_ID = "parentId";
|
|
|
|
|
|
+ private final IUserClient userClient;
|
|
|
+
|
|
|
@Override
|
|
|
public List<DeptVO> lazyList(String tenantId, Long parentId, Map<String, Object> param) {
|
|
|
// 设置租户ID
|
|
|
@@ -86,8 +92,15 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements ID
|
|
|
public List<DeptVO> tree(String tenantId) {
|
|
|
List<DeptVO> tree = null;
|
|
|
if (!AuthUtil.getUserRole().contains("admin")) {
|
|
|
- if (ObjectUtils.isNotNull(AuthUtil.getDeptId())) {
|
|
|
- tree = baseMapper.tree(tenantId, Long.parseLong(AuthUtil.getDeptId()));
|
|
|
+ R<User> r = userClient.userInfoById(AuthUtil.getUserId());
|
|
|
+ if (r.isSuccess()) {
|
|
|
+ tree = baseMapper.tree(tenantId, Long.parseLong(r.getData().getDeptPid().split(",")[0]));
|
|
|
+ } else {
|
|
|
+ if (ObjectUtils.isNotNull(AuthUtil.getDeptId())) {
|
|
|
+ tree = baseMapper.tree(tenantId, Long.parseLong(AuthUtil.getDeptId().split(",")[0]));
|
|
|
+ } else {
|
|
|
+ tree = new ArrayList<>();
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
tree = baseMapper.tree(tenantId, null);
|
|
|
@@ -102,8 +115,15 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements ID
|
|
|
}
|
|
|
List<DeptVO> tree = null;
|
|
|
if (!AuthUtil.getUserRole().contains("admin")) {
|
|
|
- if (ObjectUtils.isNotNull(AuthUtil.getDeptId())) {
|
|
|
- tree = baseMapper.lazyTree(tenantId, parentId, Long.parseLong(AuthUtil.getDeptId()));
|
|
|
+ R<User> r = userClient.userInfoById(AuthUtil.getUserId());
|
|
|
+ if (r.isSuccess()) {
|
|
|
+ tree = baseMapper.lazyTree(tenantId, parentId, Long.parseLong(r.getData().getDeptPid().split(",")[0]));
|
|
|
+ } else {
|
|
|
+ if (ObjectUtils.isNotNull(AuthUtil.getDeptId())) {
|
|
|
+ tree = baseMapper.lazyTree(tenantId, parentId, Long.parseLong(AuthUtil.getDeptId().split(",")[0]));
|
|
|
+ } else {
|
|
|
+ tree = new ArrayList<>();
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
tree = baseMapper.lazyTree(tenantId, parentId, null);
|