From dbb87ec8c0e98db7d7fc7a04bc887f6b108eb81a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Wed, 8 Nov 2023 18:08:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=85=E9=83=A8=E5=B7=A5=E4=BD=9C=E7=BB=84?= =?UTF-8?q?=E5=B7=A6=E4=BE=A7=E5=B1=9E=E6=80=A7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LawsWorkingGroupUserController.java | 3 -- .../impl/LawsWorkingGroupUserServiceImpl.java | 36 +++++++++++++++---- 2 files changed, 30 insertions(+), 9 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/sys/controller/LawsWorkingGroupUserController.java b/laws-modules/src/main/java/com/jero/modules/sys/controller/LawsWorkingGroupUserController.java index d72d9cfa..d3286818 100644 --- a/laws-modules/src/main/java/com/jero/modules/sys/controller/LawsWorkingGroupUserController.java +++ b/laws-modules/src/main/java/com/jero/modules/sys/controller/LawsWorkingGroupUserController.java @@ -7,11 +7,9 @@ import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.constant.CommonConstant; import com.jero.common.exception.JeroBootException; import com.jero.common.system.base.controller.JeroController; -import com.jero.common.system.vo.LoginUser; import com.jero.common.util.ImportExcelUtil; import com.jero.common.util.MessageUtils; import com.jero.modules.laws.common.constant.ResultCommon; -import com.jero.modules.sys.entity.LawsWorkingGroup; import com.jero.modules.sys.entity.LawsWorkingGroupUser; import com.jero.modules.sys.entity.LawsWorkingGroupUserImport; import com.jero.modules.sys.service.ILawsWorkingGroupUserService; @@ -23,7 +21,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.formula.functions.T; -import org.apache.shiro.SecurityUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; diff --git a/laws-modules/src/main/java/com/jero/modules/sys/service/impl/LawsWorkingGroupUserServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/sys/service/impl/LawsWorkingGroupUserServiceImpl.java index 05caa9cb..d1a3c6a5 100644 --- a/laws-modules/src/main/java/com/jero/modules/sys/service/impl/LawsWorkingGroupUserServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/sys/service/impl/LawsWorkingGroupUserServiceImpl.java @@ -22,6 +22,7 @@ import com.jero.modules.system.entity.SysUserRole; import com.jero.modules.system.service.ISysRoleService; import com.jero.modules.system.service.ISysUserRoleService; import com.jero.modules.system.service.ISysUserService; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -67,20 +68,43 @@ public class LawsWorkingGroupUserServiceImpl extends ServiceImpl workingGroupIds = new ArrayList<>(); + if(!StringUtils.isBlank(workingGroupId)){ + LawsWorkingGroup lawsWorkingGroup = lawsWorkingGroupService.queryById(workingGroupId); + if(Objects.isNull(lawsWorkingGroup)){ + throw new JeroBootException(ResultCommon.NO_CORRESPONDING_DATA_FOUND); + } + // 层级二查看分会下所有工作组数据 + if(Objects.equals(lawsWorkingGroup.getLevel(),2)){ + LambdaQueryWrapper queryLawsWorkingGroup = new LambdaQueryWrapper<>(); + queryLawsWorkingGroup.eq(LawsWorkingGroup::getPid,lawsWorkingGroup.getId()); + List listLawsWorkingGroup = lawsWorkingGroupService.list(queryLawsWorkingGroup); + if(!CollectionUtils.isEmpty(listLawsWorkingGroup)){ + workingGroupIds.addAll(listLawsWorkingGroup.stream().map(LawsWorkingGroup::getId).collect(Collectors.toList())); + } + } + // 层级3 直接查工作组数据 + if(Objects.equals(lawsWorkingGroup.getLevel(),3)){ + workingGroupIds.add(workingGroupId); + } + } + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + if(!CollectionUtils.isEmpty(workingGroupIds)){ + wrapper.in(LawsWorkingGroupUser::getWorkingGroupId, workingGroupIds); + } + if (!StringUtils.isAllBlank(realname, userName, userRoleName, userPostName)){ List ids = lawsWorkingGroupUserSearch(realname, userName, userRoleName, userPostName); if (ids.isEmpty()){ return new Page<>(); } - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(workingGroupId), LawsWorkingGroupUser::getWorkingGroupId, workingGroupId); wrapper.eq(LawsWorkingGroupUser::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); wrapper.in(LawsWorkingGroupUser::getUserId, ids); return page(page, wrapper); } - //没选上面四个筛选条件时 - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsWorkingGroupUser, req.getParameterMap()); - return page(page, queryWrapper); + // 没选上面四个筛选条件时 + return page(page, wrapper); } /** @@ -225,7 +249,7 @@ public class LawsWorkingGroupUserServiceImpl extends ServiceImpl wrapper = Wrappers.lambdaQuery(); wrapper.eq(SysUserRole::getUserId, user.getUserId()); List sysUserRoles = sysUserRoleService.list(wrapper); - if (sysUserRoles.size() > 0){ + if (!CollectionUtils.isEmpty(sysUserRoles)){ List roles = sysRoleService.listByIds(sysUserRoles.stream().map(SysUserRole::getRoleId).distinct().collect(Collectors.toList())); String roleNames = roles.stream().map(SysRole::getRoleName).collect(Collectors.joining(",")); user.setUserRoleName(roleNames);