src/main/java/org/springblade/modules/dispatcher/entity/Dispatcher.java
@@ -98,4 +98,11 @@ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date endTime; /** * 保安公司(组织机构)id */ @TableField("dept_id") private Long deptId; } src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml
@@ -26,6 +26,9 @@ <if test="dispatcher.dispatcherUnitId!=null"> and sd.dispatcher_unit_id = #{dispatcher.dispatcherUnitId} </if> <if test="dispatcher.deptId!=null"> and sd.dept_id = #{dispatcher.deptId} </if> <if test="dispatcher.name!=null and dispatcher.name!=''"> and sd.name like concat('%', #{dispatcher.name},'%') </if> src/main/java/org/springblade/modules/dispatcher/vo/DispatcherVO.java
@@ -33,6 +33,14 @@ public class DispatcherVO extends Dispatcher { private static final long serialVersionUID = 1L; /** * 派遣单位名称 */ private String dispatcherCompany; /** * 保安单位名称 */ private String deptName; } src/main/java/org/springblade/modules/jurisdiction/entity/Jurisdiction.java
@@ -16,10 +16,7 @@ */ package org.springblade.modules.jurisdiction.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; src/main/java/org/springblade/modules/recruitment/mapper/RecruitmentMapper.xml
@@ -14,40 +14,40 @@ sr.dept_id = bt.id WHERE 1=1 <if test="trainingRegistration.tenantName!=null and trainingRegistration.tenantName!=''"> and bt.dept_name like concat('%', #{trainingRegistration.tenantName},'%') <if test="recruitment.tenantName!=null and recruitment.tenantName!=''"> and bt.dept_name like concat('%', #{recruitment.tenantName},'%') </if> <if test="trainingRegistration.province!=null"> and sr.province = #{trainingRegistration.province} <if test="recruitment.province!=null"> and sr.province = #{recruitment.province} </if> <if test="trainingRegistration.city!=null"> and sr.city = #{trainingRegistration.city} <if test="recruitment.city!=null"> and sr.city = #{recruitment.city} </if> <if test="trainingRegistration.district!=null"> and sr.district = #{trainingRegistration.district} <if test="recruitment.district!=null"> and sr.district = #{recruitment.district} </if> <if test="trainingRegistration.permit!=null"> and sr.permit = #{trainingRegistration.permit} <if test="recruitment.permit!=null"> and sr.permit = #{recruitment.permit} </if> <if test="trainingRegistration.education!=null and trainingRegistration.education!=''"> and sr.education = #{trainingRegistration.education} <if test="recruitment.education!=null and recruitment.education!=''"> and sr.education = #{recruitment.education} </if> <if test="trainingRegistration.startTime!=null and trainingRegistration.startTime!=''"> and sr.start_time >= #{trainingRegistration.startTime} <if test="recruitment.startTime!=null and recruitment.startTime!=''"> and sr.start_time >= #{recruitment.startTime} </if> <if test="trainingRegistration.endTime!=null and trainingRegistration.endTime!=''"> and sr.end_time <= #{trainingRegistration.endTime} <if test="recruitment.endTime!=null and recruitment.endTime!=''"> and sr.end_time <= #{recruitment.endTime} </if> <if test="trainingRegistration.minSalary!=null or trainingRegistration.maxSalary!=null"> <if test="trainingRegistration.minSalary==null and trainingRegistration.maxSalary!=null"> and sr.min_salary <= #{trainingRegistration.maxSalary} and sr.max_salary >= #{trainingRegistration.maxSalary} <if test="recruitment.minSalary!=null or recruitment.maxSalary!=null"> <if test="recruitment.minSalary==null and recruitment.maxSalary!=null"> and sr.min_salary <= #{recruitment.maxSalary} and sr.max_salary >= #{recruitment.maxSalary} </if> <if test="trainingRegistration.maxSalary==null and trainingRegistration.minSalary!=null"> and sr.min_salary <= #{trainingRegistration.minSalary} and sr.max_salary >= #{trainingRegistration.minSalary} <if test="recruitment.maxSalary==null and recruitment.minSalary!=null"> and sr.min_salary <= #{recruitment.minSalary} and sr.max_salary >= #{recruitment.minSalary} </if> <if test="trainingRegistration.maxSalary!=null and trainingRegistration.minSalary!=null"> and sr.max_salary <= #{trainingRegistration.maxSalary} and sr.max_salary >= #{trainingRegistration.minSalary} or ( sr.min_salary <= #{trainingRegistration.maxSalary} and sr.min_salary >= #{trainingRegistration.minSalary}) <if test="recruitment.maxSalary!=null and recruitment.minSalary!=null"> and sr.max_salary <= #{recruitment.maxSalary} and sr.max_salary >= #{recruitment.minSalary} or ( sr.min_salary <= #{recruitment.maxSalary} and sr.min_salary >= #{recruitment.minSalary}) </if> </if> @@ -66,8 +66,8 @@ sr.dept_id = bt.id WHERE 1=1 <if test="trainingRegistration.id!=null"> and sr.id = #{trainingRegistration.id} <if test="recruitment.id!=null"> and sr.id = #{recruitment.id} </if> </select> </mapper> src/main/java/org/springblade/modules/system/controller/RoleController.java
@@ -94,8 +94,8 @@ @GetMapping("/tree") @ApiOperationSupport(order = 3) @ApiOperation(value = "树形结构", notes = "树形结构") public R<List<RoleVO>> tree(String tenantId, BladeUser bladeUser) { List<RoleVO> tree = roleService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId())); public R<List<RoleVO>> tree(String tenantId,Long deptId,BladeUser bladeUser) { List<RoleVO> tree = roleService.tree(Func.toStrWithEmpty(tenantId,bladeUser.getTenantId()),deptId); return R.data(tree); } @@ -105,9 +105,9 @@ @GetMapping("/tree-by-id") @ApiOperationSupport(order = 4) @ApiOperation(value = "树形结构", notes = "树形结构") public R<List<RoleVO>> treeById(Long roleId, BladeUser bladeUser) { public R<List<RoleVO>> treeById(Long roleId,Long deptId, BladeUser bladeUser) { Role role = SysCache.getRole(roleId); List<RoleVO> tree = roleService.tree(Func.notNull(role) ? role.getTenantId() : bladeUser.getTenantId()); List<RoleVO> tree = roleService.tree(Func.notNull(role) ? role.getTenantId() : bladeUser.getTenantId(),deptId); return R.data(tree); } src/main/java/org/springblade/modules/system/entity/Role.java
@@ -16,10 +16,7 @@ */ package org.springblade.modules.system.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; @@ -86,5 +83,11 @@ @ApiModelProperty(value = "是否已删除") private Integer isDeleted; /** * 组织机构id */ @TableField("dept_id") private Integer deptId; } src/main/java/org/springblade/modules/system/mapper/RoleMapper.java
@@ -46,7 +46,7 @@ * @param excludeRole * @return */ List<RoleVO> tree(String tenantId, String excludeRole); List<RoleVO> tree(String tenantId,Long deptId,String excludeRole); /** * 获取角色名 src/main/java/org/springblade/modules/system/mapper/RoleMapper.xml
@@ -30,7 +30,10 @@ and tenant_id = #{param1} </if> <if test="param2!=null"> and role_alias <> #{param2} and dept_id = #{param2} </if> <if test="param3!=null"> and role_alias <> #{param3} </if> </select> src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -40,30 +40,43 @@ </resultMap> <select id="selectUserPage" resultMap="userResultMap"> select * from blade_user where is_deleted = 0 select bu.* from blade_user bu left join blade_dept bd on bu.dept_id = bd.id where bu.is_deleted = 0 <if test="tenantId!=null and tenantId != ''"> and tenant_id = #{tenantId} and bu.tenant_id = #{tenantId} </if> <if test="user.tenantId!=null and user.tenantId != ''"> and tenant_id = #{user.tenantId} and bu.tenant_id = #{user.tenantId} </if> <if test="user.account!=null and user.account != ''"> and account = #{user.account} and bu.account = #{user.account} </if> <if test="user.hold!=null and user.hold != ''"> and bu.hold = #{user.hold} </if> <if test="user.deptId!=null and user.deptId != ''"> and dept_id = #{user.deptId} and (bd.parent_id = #{user.deptId} or bd.id = #{user.deptId}) </if> <if test="user.roleId!=null and user.roleId != ''"> and bu.role_id = #{user.roleId} </if> <if test="user.status!=null and user.status != ''"> and status = #{user.status} and bu.status = #{user.status} </if> <if test="user.realName!=null and user.realName != ''"> and real_name like concat('%', #{user.realName},'%') and bu.real_name like concat('%', #{user.realName},'%') </if> <if test="user.userType!=null and user.userType != ''"> and user_type = #{user.userType} and bu.user_type = #{user.userType} </if> <if test="deptIdList!=null and deptIdList.size>0"> and id in ( and bu.id in ( SELECT user_id FROM @@ -75,7 +88,7 @@ </foreach> ) </if> ORDER BY id ORDER BY bu.id </select> <select id="getUser" resultMap="userResultMap"> src/main/java/org/springblade/modules/system/service/IRoleService.java
@@ -46,7 +46,7 @@ * @param tenantId * @return */ List<RoleVO> tree(String tenantId); List<RoleVO> tree(String tenantId,Long deptId); /** * 权限配置 src/main/java/org/springblade/modules/system/service/impl/RoleServiceImpl.java
@@ -69,13 +69,13 @@ } @Override public List<RoleVO> tree(String tenantId) { public List<RoleVO> tree(String tenantId,Long deptId) { String userRole = AuthUtil.getUserRole(); String excludeRole = null; if (!CollectionUtil.contains(Func.toStrArray(userRole), RoleConstant.ADMIN) && !CollectionUtil.contains(Func.toStrArray(userRole), RoleConstant.ADMINISTRATOR)) { excludeRole = RoleConstant.ADMIN; } return ForestNodeMerger.merge(baseMapper.tree(tenantId, excludeRole)); return ForestNodeMerger.merge(baseMapper.tree(tenantId,deptId, excludeRole)); } @Override