@ -1,21 +1,22 @@
package com.ruoyi.web.controller.system.count ;
package com.ruoyi.web.controller.system.count ;
import cn.hutool.core.collection.CollectionUtil ;
import cn.hutool.core.convert.Convert ;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper ;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper ;
import com.ruoyi.common.annotation.Log ;
import com.ruoyi.common.annotation.Log ;
import com.ruoyi.common.core.controller.BaseController ;
import com.ruoyi.common.core.controller.BaseController ;
import com.ruoyi.common.core.domain.AjaxResult ;
import com.ruoyi.common.core.domain.AjaxResult ;
import com.ruoyi.common.core.domain.entity.SysDept ;
import com.ruoyi.common.core.domain.entity.SysDept ;
import com.ruoyi.common.core.domain.entity.SysPostVO ;
import com.ruoyi.common.core.domain.entity.SysRole ;
import com.ruoyi.common.core.domain.entity.SysRole ;
import com.ruoyi.common.core.domain.entity.SysUser ;
import com.ruoyi.common.core.domain.entity.SysUser ;
import com.ruoyi.common.core.page.TableDataInfo ;
import com.ruoyi.common.core.page.TableDataInfo ;
import com.ruoyi.common.enums.BusinessType ;
import com.ruoyi.common.enums.BusinessType ;
import com.ruoyi.common.utils.poi.ExcelUtil ;
import com.ruoyi.common.utils.poi.ExcelUtil ;
import com.ruoyi.system.domain.SysPost ;
import com.ruoyi.system.domain.SysPost ;
import com.ruoyi.system.domain.SysUserPost ;
import com.ruoyi.system.domain.SysUserRole ;
import com.ruoyi.system.domain.SysUserRole ;
import com.ruoyi.system.service.ISysDeptService ;
import com.ruoyi.system.service.* ;
import com.ruoyi.system.service.ISysPostService ;
import com.ruoyi.system.service.ISysRoleService ;
import com.ruoyi.system.service.ISysUserService ;
import org.apache.shiro.authz.annotation.RequiresPermissions ;
import org.apache.shiro.authz.annotation.RequiresPermissions ;
import org.springframework.beans.factory.annotation.Autowired ;
import org.springframework.beans.factory.annotation.Autowired ;
import org.springframework.stereotype.Controller ;
import org.springframework.stereotype.Controller ;
@ -23,7 +24,9 @@ import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.* ;
import org.springframework.web.bind.annotation.* ;
import java.util.ArrayList ;
import java.util.ArrayList ;
import java.util.Collections ;
import java.util.List ;
import java.util.List ;
import java.util.stream.Collectors ;
/ * *
/ * *
* 涉 密 人 员 统 计
* 涉 密 人 员 统 计
@ -43,6 +46,9 @@ public class SysUsernumController extends BaseController {
@Autowired
@Autowired
private ISysDeptService deptService ;
private ISysDeptService deptService ;
@Autowired
private SysUserPostService sysUserPostService ;
@RequiresPermissions ( "system:usernum:view" )
@RequiresPermissions ( "system:usernum:view" )
@GetMapping ( )
@GetMapping ( )
public String user ( )
public String user ( )
@ -96,22 +102,20 @@ public class SysUsernumController extends BaseController {
@RequiresPermissions ( "system:usernum:detail" )
@RequiresPermissions ( "system:usernum:detail" )
@GetMapping ( "/print/{deptId}" )
@GetMapping ( "/print/{deptId}" )
public String print ( @PathVariable ( "deptId" ) Long deptId , SysUser user , ModelMap mmap )
public String print ( @PathVariable ( "deptId" ) Long deptId , SysUser user , ModelMap mmap )
{
List < SysUser > sysUsers = userService . selectUserList ( user ) ;
List < SysUser > list = new ArrayList < > ( ) ;
List < SysRole > sysRoles = new ArrayList < > ( ) ;
for ( SysUser User : sysUsers ) {
List < SysUserRole > sysUserRoles = userService . selectUserRoleByUserId ( User . getUserId ( ) ) ;
for ( SysUserRole UserRole : sysUserRoles ) {
SysRole sysRole = roleService . selectRoleById ( UserRole . getRoleId ( ) ) ;
sysRoles . add ( sysRole ) ;
}
User . setRoles ( sysRoles ) ;
if ( User . getDeptId ( ) . equals ( deptId ) ) {
list . add ( User ) ;
{
List < SysUser > list = userService . lambdaQuery ( ) . eq ( SysUser : : getDeptId , deptId )
. eq ( SysUser : : getDelFlag , 0 )
. list ( ) ;
list . forEach ( sysuser - > {
List < SysUserPost > postList = sysUserPostService . lambdaQuery ( ) .
eq ( SysUserPost : : getUserId , sysuser . getUserId ( ) ) . list ( ) ;
List < Long > postIds = postList . stream ( ) . map ( SysUserPost : : getPostId ) . collect ( Collectors . toList ( ) ) ;
if ( CollectionUtil . isNotEmpty ( postIds ) ) {
List < SysPost > sysPostList = postService . lambdaQuery ( ) . in ( SysPost : : getPostId , postIds ) . list ( ) ;
sysuser . setPosts ( Convert . toList ( SysPostVO . class , sysPostList ) ) ;
}
}
}
} ) ;
mmap . put ( "list" , list ) ;
mmap . put ( "list" , list ) ;
mmap . put ( "dept" , deptService . selectDeptById ( deptId ) ) ;
mmap . put ( "dept" , deptService . selectDeptById ( deptId ) ) ;
mmap . put ( "sysuser" , getSysUser ( ) ) ;
mmap . put ( "sysuser" , getSysUser ( ) ) ;