whyczh
2021-05-12 2b37b4ce8e0d3d156468ff873de1ecaf15c25a27
用户角色权限接口更新
7个文件已修改
127 ■■■■ 已修改文件
src/main/java/com/whyc/controller/RoleController.java 37 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/UserController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/mapper/UserRoleMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/User.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/RoleService.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/UserService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/UserRoleMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/RoleController.java
@@ -71,9 +71,31 @@
    }
    @GetMapping("getUserByRoleId")
    @ApiOperation(value = "通过角色id获取用户信息")
    @ApiOperation(value = "通过角色id获取用户信息",notes = "点击权限人员时触发获取")
    public Response<PageInfo<User>> getUserByRoleId(@RequestParam int roleId){
        return roleService.getUserByRoleId(roleId);
    }
    @GetMapping("getUsersByRoleId")
    @ApiOperation(value = "获取角色用户信息",notes = "点击添加人员是触发获取")
    public Response getUsersByRoleId(@RequestParam int roleId){
        return roleService.getUsersByRoleId(roleId);
    }
    public void updateRoleUser(@RequestParam int roleId,@RequestBody List<User> users){
        roleService.updateRoleUser(roleId,users);
    }
    @PostMapping
    @ApiOperation(value = "新增角色")
    public Response add(@RequestBody Role role){
        return roleService.add(role);
    }
    @PutMapping("updateRole")
    @ApiOperation(value = "更新角色")
    public Response updateRole(@RequestBody Role role){
        return roleService.updateRole(role);
    }
    @PutMapping("updateRoleState")
@@ -82,13 +104,16 @@
        return roleService.updateRoleState(roleId,state);
    }
    @PostMapping
    @ApiOperation(value = "新增角色")
    public Response add(@RequestBody Role role){
        return roleService.add(role);
    public Response deleteRole(@RequestParam int roleId){
        return roleService.deleteRole(roleId);
    }
//    @PostMapping("batch")
//    @ApiOperation(value = "批量新增角色")
    public boolean addBatch(@RequestBody List<Role> roles){
src/main/java/com/whyc/controller/UserController.java
@@ -14,6 +14,7 @@
import com.whyc.service.JobService;
import com.whyc.service.LoginService;
import com.whyc.service.UserService;
import com.whyc.util.DigestsUtil;
import com.whyc.util.UserExcelVerify;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
@@ -57,7 +58,7 @@
    @GetMapping
    @ApiOperation(value = "查询用户byId")
    @RequiresPermissions(value = {"user:get"})
    //@RequiresPermissions(value = {"user:get"})
    public Response getById(@RequestParam int id){
        User user = userService.getById(id);
        if (user==null){
@@ -88,9 +89,16 @@
    }
    @GetMapping("validatePassword")
    @ApiOperation(value = "验证密码")
    public boolean validatePassword(@RequestParam String userName, @RequestParam String password){
        return userService.validatePassword(userName,password);
    }
    @GetMapping("getSaltPassword")
    @ApiOperation(value = "获取加密密码")
    public String getSaltPassword(@RequestParam String password,@RequestParam String salt){
        return DigestsUtil.sha1(password,salt);
    }
    @PutMapping
    @ApiOperation(value = "编辑用户")
src/main/java/com/whyc/mapper/UserRoleMapper.java
@@ -17,4 +17,6 @@
    List<UserRole> getUserWithRoleMap();
    List<String> findRolesByUserId(@Param("userId") int userId);
    List<User> getUsersByRoleId(@Param("roleId") int roleId);
}
src/main/java/com/whyc/pojo/User.java
@@ -12,6 +12,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.apache.ibatis.type.Alias;
import org.apache.poi.ss.formula.functions.T;
import java.io.Serializable;
import java.util.Date;
@@ -54,7 +55,7 @@
    private String job;
    @ApiModelProperty("加密因子")
    private String salt;
    @ApiModelProperty("状态:0正常,1冻结,2删除")
    @ApiModelProperty("状态:0正常,1冻结")
    //@Excel(name = "状态",width = 25,orderNum = "9",isImportField = "true_st")
    private Integer state;
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@@ -62,7 +63,9 @@
    @ApiModelProperty("模糊查询信息")
    @TableField(exist = false)
    private String search;
    @ApiModelProperty("是否被选中")
    @TableField(exist = false)
    private boolean selected;
    public User() {
    }
src/main/java/com/whyc/service/RoleService.java
@@ -10,10 +10,7 @@
import com.whyc.mapper.RoleMapper;
import com.whyc.mapper.UserMapper;
import com.whyc.mapper.UserRoleMapper;
import com.whyc.pojo.OperationLog;
import com.whyc.pojo.Role;
import com.whyc.pojo.User;
import com.whyc.pojo.UserRole;
import com.whyc.pojo.*;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -67,6 +64,47 @@
        mapper.insert(role);
        return new Response().set(1,role,"添加成功");
    }
    public Response updateRole(Role role){
        if(mapper.updateById(role)>0){
            return new Response().setMsg(1,"更新成功");
        }else {
            return new Response().setMsg(0,"更新失败");
        }
    }
    //绑定用户
    public Response getUsersByRoleId(int roleId){
        List<User> userList = userMapper.selectList(null);
        QueryWrapper<UserRole> queryWrapper= new QueryWrapper();
        queryWrapper.eq("role_id",roleId);
        List<UserRole> userRoleList = userRoleMapper.selectList(queryWrapper);
        for (UserRole ur:userRoleList) {
            for (User u:userList) {
                if(ur.getUserId().equals(u.getId())){
                    u.setSelected(true);
                    break;
                }
            }
        }
        return new Response().set(1,userList);
    }
    public void updateRoleUser(int roleId,List<User> users){
        QueryWrapper<UserRole> queryWrapper = new QueryWrapper<UserRole>().eq("role_id",roleId);
        userRoleMapper.delete(queryWrapper);
        for (User user:users) {
            if(user.isSelected()){
                UserRole userRole = new UserRole();
                userRole.setUserId(user.getId());
                userRole.setRoleId(roleId);
                userRoleMapper.insert(userRole);
            }
        }
    }
    public boolean addBatch(List<Role> roles) {
        return mapper.insertBatchSomeColumn(roles)==roles.size();
@@ -100,4 +138,13 @@
        }
    }
    public Response deleteRole(int roleId){
        if(mapper.deleteById(roleId)>0){
            return new Response().setMsg(1, "删除成功");
        }else{
            return new Response().setMsg(0, "删除失败");
        }
    }
}
src/main/java/com/whyc/service/UserService.java
@@ -102,11 +102,10 @@
    }
    public Response update(User user) {
        Map<String, String> encryptMap = DigestsUtil.encryptPassword(user.getPassword());
        user.setPassword(encryptMap.get("password"));
        user.setSalt(encryptMap.get("salt"));
        if(StringUtils.isNotEmpty(user.getPassword())){
            String password = DigestsUtil.sha1(user.getPassword(),user.getSalt());
            user.setPassword(password);
        }
        if (userMapper.updateById(user) > 0) {
            return new Response().setMsg(1, "更新成功");
        } else {
src/main/resources/mapper/UserRoleMapper.xml
@@ -34,4 +34,11 @@
    <select id="findRolesByUserId" resultType="string">
        select r.name from tb_user_role ur,tb_role r where ur.role_id=r.id and ur.user_id=#{userId};
    </select>
    <select id="getUsersByRoleId" resultType="User">
        select u.* from tb_user_role ur,tb_role r,tb_user u
        where ur.role_id = r.id
          and ur.user_id = u.id
          and r.id=#{roleId}
    </select>
</mapper>