修改权限改造引起的bug

This commit is contained in:
xuwenbo
2020-05-16 09:54:49 +08:00
parent 9594d2b04e
commit c161cb8523
9 changed files with 71 additions and 48 deletions

View File

@ -40,6 +40,8 @@ public class Job implements Serializable {
//@NotNull //@NotNull
private Boolean enabled; private Boolean enabled;
@TableField(exist = false)
private Dept dept;
/** 岗位排序 */ /** 岗位排序 */
//@NotNull //@NotNull

View File

@ -36,4 +36,8 @@ public class DeptDto implements Serializable {
/** 创建日期 */ /** 创建日期 */
private Timestamp createTime; private Timestamp createTime;
public String getLabel() {
return name;
}
} }

View File

@ -19,21 +19,22 @@ import java.io.Serializable;
@Data @Data
public class JobDto implements Serializable { public class JobDto implements Serializable {
/** 岗位ID */
private Long id; private Long id;
/** 岗位名称 */
private String name;
/** 岗位状态 */
private Boolean enabled;
/** 岗位排序 */
private Long sort; private Long sort;
/** 部门ID */ private String name;
private Long deptId;
private Boolean enabled;
private DeptDto dept;
private String deptSuperiorName;
/** 创建日期 */
private Timestamp createTime; private Timestamp createTime;
// public JobDto(String name, Boolean enabled) {
// this.name = name;
// this.enabled = enabled;
// }
} }

View File

@ -8,9 +8,13 @@
*/ */
package co.yixiang.modules.system.service.dto; package co.yixiang.modules.system.service.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.sql.Timestamp; import java.sql.Timestamp;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
import java.util.Set;
/** /**
* @author hupeng * @author hupeng
@ -19,48 +23,38 @@ import java.io.Serializable;
@Data @Data
public class UserDto implements Serializable { public class UserDto implements Serializable {
/** ID */
@ApiModelProperty(hidden = true)
private Long id; private Long id;
/** 头像 */ private String username;
private Long avatarId;
private String nickName;
private String sex;
private String avatar; private String avatar;
/** 邮箱 */
private String email; private String email;
/** 状态1启用、0禁用 */
private Boolean enabled;
/** 密码 */
private String password;
/** 用户名 */
private String username;
/** 部门名称 */
private Long deptId;
/** 手机号码 */
private String phone; private String phone;
/** 岗位名称 */ private Boolean enabled;
private Long jobId;
/** 创建日期 */ @JsonIgnore
private Timestamp createTime; private String password;
/** 最后修改密码的日期 */ private Date lastPasswordResetTime;
private Timestamp lastPasswordResetTime;
/** 昵称 */ @ApiModelProperty(hidden = true)
private String nickName; private Set<RoleSmallDto> roles;
@ApiModelProperty(hidden = true)
private JobSmallDto job;
private DeptSmallDto dept; private DeptSmallDto dept;
private JobSmallDto job; private Long deptId;
/** 性别 */ private Timestamp createTime;
private String sex;
} }

View File

@ -55,6 +55,8 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, Dept> implement
private final IGenerator generator; private final IGenerator generator;
private final DeptMapper deptMapper;
@Override @Override
//@Cacheable //@Cacheable
public Map<String, Object> queryAll(DeptQueryCriteria criteria, Pageable pageable) { public Map<String, Object> queryAll(DeptQueryCriteria criteria, Pageable pageable) {
@ -95,7 +97,7 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, Dept> implement
* @return / * @return /
*/ */
@Override @Override
@Cacheable(key = "#p0") // @Cacheable(key = "#p0")
public List<Dept> findByPid(long pid) { public List<Dept> findByPid(long pid) {
DeptQueryCriteria criteria = new DeptQueryCriteria(); DeptQueryCriteria criteria = new DeptQueryCriteria();
criteria.setPid(pid); criteria.setPid(pid);
@ -180,7 +182,6 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, Dept> implement
*/ */
@Override @Override
public Set<Dept> findByRoleIds(Long id) { public Set<Dept> findByRoleIds(Long id) {
//todo return deptMapper.findDeptByRoleId(id);
return null;
} }
} }

View File

@ -10,6 +10,7 @@ package co.yixiang.modules.system.service.impl;
import co.yixiang.modules.system.domain.Job; import co.yixiang.modules.system.domain.Job;
import co.yixiang.common.service.impl.BaseServiceImpl; import co.yixiang.common.service.impl.BaseServiceImpl;
import co.yixiang.modules.system.service.DeptService;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import co.yixiang.dozer.service.IGenerator; import co.yixiang.dozer.service.IGenerator;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
@ -51,6 +52,8 @@ public class JobServiceImpl extends BaseServiceImpl<JobMapper, Job> implements J
private final IGenerator generator; private final IGenerator generator;
private final DeptService deptService;
@Override @Override
//@Cacheable //@Cacheable
public Map<String, Object> queryAll(JobQueryCriteria criteria, Pageable pageable) { public Map<String, Object> queryAll(JobQueryCriteria criteria, Pageable pageable) {
@ -66,7 +69,25 @@ public class JobServiceImpl extends BaseServiceImpl<JobMapper, Job> implements J
@Override @Override
//@Cacheable //@Cacheable
public List<Job> queryAll(JobQueryCriteria criteria){ public List<Job> queryAll(JobQueryCriteria criteria){
return baseMapper.selectList(QueryHelpPlus.getPredicate(Job.class, criteria)); List<Job> jobList = baseMapper.selectList(QueryHelpPlus.getPredicate(Job.class, criteria));
List<Job> jobScopeList = new ArrayList<>();
if(criteria.getDeptIds().size()==0){
for (Job job : jobList) {
job.setDept(deptService.getById(job.getDeptId()));
jobScopeList.add(job);
}
}else {
//断权限范围
for (Long deptId : criteria.getDeptIds()) {
for (Job job : jobList) {
if(deptId ==job.getDeptId()){
job.setDept(deptService.getById(job.getDeptId()));
jobScopeList.add(job);
}
}
}
}
return jobScopeList;
} }
@ -78,7 +99,6 @@ public class JobServiceImpl extends BaseServiceImpl<JobMapper, Job> implements J
map.put("岗位名称", job.getName()); map.put("岗位名称", job.getName());
map.put("岗位状态", job.getEnabled()); map.put("岗位状态", job.getEnabled());
map.put("岗位排序", job.getSort()); map.put("岗位排序", job.getSort());
map.put("部门ID", job.getDeptId());
map.put("创建日期", job.getCreateTime()); map.put("创建日期", job.getCreateTime());
list.add(map); list.add(map);
} }

View File

@ -90,14 +90,12 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, User> imp
List<Map<String, Object>> list = new ArrayList<>(); List<Map<String, Object>> list = new ArrayList<>();
for (UserDto user : all) { for (UserDto user : all) {
Map<String,Object> map = new LinkedHashMap<>(); Map<String,Object> map = new LinkedHashMap<>();
map.put("头像", user.getAvatarId());
map.put("邮箱", user.getEmail()); map.put("邮箱", user.getEmail());
map.put("状态1启用、0禁用", user.getEnabled()); map.put("状态1启用、0禁用", user.getEnabled());
map.put("密码", user.getPassword()); map.put("密码", user.getPassword());
map.put("用户名", user.getUsername()); map.put("用户名", user.getUsername());
map.put("部门名称", user.getDeptId()); map.put("部门名称", user.getDeptId());
map.put("手机号码", user.getPhone()); map.put("手机号码", user.getPhone());
map.put("岗位名称", user.getJobId());
map.put("创建日期", user.getCreateTime()); map.put("创建日期", user.getCreateTime());
map.put("最后修改密码的日期", user.getLastPasswordResetTime()); map.put("最后修改密码的日期", user.getLastPasswordResetTime());
map.put("昵称", user.getNickName()); map.put("昵称", user.getNickName());

View File

@ -26,6 +26,9 @@ import java.util.Set;
@Mapper @Mapper
public interface DeptMapper extends CoreMapper<Dept> { public interface DeptMapper extends CoreMapper<Dept> {
@Select("select * from dept m LEFT JOIN roles_depts t on m.id= t.dept_id LEFT JOIN role r on r.id = t.role_id where r.id = #{roleId}") @Select("select m.* from dept m LEFT JOIN roles_depts t on m.id= t.dept_id LEFT JOIN role r on r.id = t.role_id where r.id = ${roleId}")
Set<Dept> findDeptByRoleId(@Param("roleId") Long roleId); Set<Dept> findDeptByRoleId(@Param("roleId") Long roleId);
@Select("select * from dept m LEFT JOIN roles_depts t on m.id= t.dept_id LEFT JOIN role r on r.id = t.role_id where r.id = #{roleId}")
Set<Dept> findDeptByRoleId(@Param("roleIds") Set<Long> roleId);
} }

View File

@ -26,6 +26,6 @@ import java.util.List;
@Mapper @Mapper
public interface DictDetailMapper extends CoreMapper<DictDetail> { public interface DictDetailMapper extends CoreMapper<DictDetail> {
@Select("<script>SELECT t.* from dict_detail d LEFT JOIN dict t on d.dict_id = t.id where 1=1 <if test = \"label !=null\" > and d.label LIKE concat('%', #{label}, '%') </if> <if test = \"dictName != ''||dictName !=null\" > AND t.name = #{dictName} order by t.sort asc</if></script>") @Select("<script>SELECT d.* from dict_detail d LEFT JOIN dict t on d.dict_id = t.id where 1=1 <if test = \"label !=null\" > and d.label LIKE concat('%', #{label}, '%') </if> <if test = \"dictName != ''||dictName !=null\" > AND t.name = #{dictName} order by t.sort asc</if></script>")
List<DictDetail> selectDictDetailList(@Param("label") String label,@Param("dictName") String dictName); List<DictDetail> selectDictDetailList(@Param("label") String label,@Param("dictName") String dictName);
} }