☣我的项目介绍:通过对依社区为单位进行人群的治理,以及疫苗的状况,包含小区情况,通过RBAC进行角色与用户之间的权限治理。

☣我的项目:环境-IDEA、Mysql数据库,Tomcat服务器,SpringMVC,SpringBoot,AOP,拦截器,过滤器,全局异样,RBAC权限管制等。

1、登录模块(注册)



外围代码:service层

@Servicepublic class UserService extends BaseService<User,Integer> {    @Resource    //引入dao层    private UserMapper userMapper;    @Resource    private UserRoleMapper userRoleMapper;    @Resource    private CommunityMapper communityMapper;    //用户登录    public UserModel userLogin(String userName,String userPwd){        //对输出的账号密码进行判断,是否合乎格局        checkUserLoginParam(userName,userPwd);        //通过对数据库的查问,查看用户是否存在        User temp =  userMapper.queryUserByUserName(userName);        AssertUtil.isTrue(temp == null,"用户不存在");        //判断用户的明码是否正确,拿数据库查问到的用户明码和用户输出的用户明码进行equest比拟        checkUserPwd(userPwd,temp.getUserPwd());        //返回指标对象  对明码进行加密        return builderUserInfo(temp);    }    /**     * //对输出的账号密码进行判断  是否合乎格局     * @param userName   账号     * @param userPwd    明码     */    //对输出的账号密码进行判断,是否合乎格局    private void checkUserLoginParam(String userName, String userPwd) {        //用户非空        AssertUtil.isTrue(StringUtils.isBlank(userName),"用户名不能为空");        //明码非空        AssertUtil.isTrue(StringUtils.isBlank(userPwd),"明码不能为空");    }    /**     * //判断明码是否正确     * @param userPwd   用户输出的明码     * @param userPwd1  数据库查出来的明码     */    //判断用户的明码是否正确,拿数据库查问到的用户明码和用户输出的用户明码进行equest比拟    private void checkUserPwd(String userPwd, String userPwd1) {        //对用户输出的明码进行加密        userPwd = Md5Util.encode(userPwd);        AssertUtil.isTrue(!(userPwd.equals(userPwd1)),"明码不正确");    }    /**     *     * @param temp 以后登录对象     * @return     */    //对明码进行加密  返回指标对象    private UserModel builderUserInfo(User temp) {        UserModel userModel = new UserModel();        //为用户明码进行加密        userModel.setUserIdStr(UserIDBase64.encoderUserID(temp.getId()));        userModel.setUserName(temp.getUserName());        userModel.setTrueName(temp.getTrueName());        return userModel;    }    /**     *     * @param userId                 以后Cookie存储的用户dId     * @param oldPassword           旧明码     * @param newPassword           新密码     * @param confirmPassword            确认明码     */    //批改明码    @Transactional(propagation = Propagation.REQUIRED)    public void updateUserPassword(Integer userId, String oldPassword, String newPassword, String confirmPassword) {        //通过Id获取user对象        User user = userMapper.selectByPrimaryKey(userId);        //参数校验 (用户,旧明码,新密码,确认明码)        checkPasswordParams(user,oldPassword,newPassword,confirmPassword);        //默认参数设置,把用户输出的新密码  加密 增加进去        user.setUserPwd(Md5Util.encode(newPassword));        //执行更新操作        AssertUtil.isTrue(userMapper.updateByPrimaryKeySelective(user)<1,"批改明码失败");    }    //批改明码的参数校验    private void checkPasswordParams(User user, String oldPassword, String newPassword, String confirmPwd) {        //用户不能为空  (不存在)        AssertUtil.isTrue(null == user,"用户不存在");        //原始明码  非空        System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");        AssertUtil.isTrue(StringUtils.isBlank(oldPassword),"原始明码不能为空");        //原始明码是否和数据库查问到的明码统一        AssertUtil.isTrue(!(Md5Util.encode(oldPassword).equals(user.getUserPwd())),"原始明码不正确");        //新密码不能为空        AssertUtil.isTrue(StringUtils.isBlank(newPassword),"新密码不能为空");        //新密码和原始明码不能雷同        AssertUtil.isTrue(oldPassword.equals(newPassword),"新密码不能和原始明码雷同");        //确认明码非空        AssertUtil.isTrue(StringUtils.isBlank(confirmPwd),"确认明码不能为空");        //确认明码须要和新密码统一        AssertUtil.isTrue(!(newPassword.equals(confirmPwd)),"新密码和确认明码不统一");    }    /**     * 多条件分页查问用户数据     * @param query     * @return     */    public Map<String, Object> queryUserByParams (UserQuery query) {        Map<String, Object> map = new HashMap<>();        PageHelper.startPage(query.getPage(), query.getLimit());        PageInfo<User> pageInfo = new PageInfo<>(userMapper.selectByParams(query));        map.put("code",0);        map.put("msg", "");        map.put("count", pageInfo.getTotal());        map.put("data", pageInfo.getList());        System.out.println("执行结束");        return map;    }    /**     * 增加用户     * @param user     */    @Transactional(propagation = Propagation.REQUIRED)    public void saveUser(User user){        //参数校验        checkParams(user.getUserName(),user.getComId(),user.getVc());        //设置默认参数        user.setCreateDate(new Date());        user.setUpdateDate(new Date());        user.setUserPwd(Md5Util.encode("123456"));        //执行增加,判断后果        AssertUtil.isTrue(userMapper.insertSelective(user)==null,"用户增加失败!");        relaionUserRole(user.getId(),user.getRoleIds());        AssertUtil.isTrue(communityMapper.addNumByComId(user.getComId())<1, "社区用户增加失败");    }    /**     * 用户更新,批改     * @param user     */    @Transactional(propagation = Propagation.REQUIRED)    public void updateUser(User user){        //1.参数校验        //通过用户id获取用户对象        User temp=userMapper.selectByPrimaryKey(user.getId());        //判断对象是否存在        AssertUtil.isTrue(temp==null,"待更新记录不存在");        //验证参数        checkParams1(user.getUserName(),user.getComId(),user.getVc());        //2.设置默认参数        user.setUpdateDate(new Date());        //3.执行更新,返回后果        AssertUtil.isTrue(userMapper.updateByPrimaryKeySelective(user)<1,"用户更新失败!");        relaionUserRole(user.getId(),user.getRoleIds());    }    private void checkParams(String userName, Integer comId, Integer vc) {        AssertUtil.isTrue(StringUtils.isBlank(userName),"用户名不能为空");        //验证用户是否存在        User temp=userMapper.queryUserByUserName(userName);        AssertUtil.isTrue(temp!=null,"用户名已存在");        AssertUtil.isTrue(comId==null,"请输出所在社区");        AssertUtil.isTrue(vc==null,"请抉择疫苗接种情况");    }    private void checkParams1(String userName, Integer comId, Integer vc) {        AssertUtil.isTrue(StringUtils.isBlank(userName),"用户名不能为空");        //验证用户是否存在        AssertUtil.isTrue(comId==null,"请输出所在社区");        AssertUtil.isTrue(vc==null,"请抉择疫苗接种情况");    }    @Transactional(propagation = Propagation.REQUIRED)    public void deleteUser(Integer[] ids){        AssertUtil.isTrue(ids==null||ids.length==0,"请抉择您要删除的记录");        for (int id:ids){            User user=userMapper.selectByPrimaryKey(id);            AssertUtil.isTrue(communityMapper.subNumByComId(user.getComId())!=ids.length, "社区用户删除失败");        }        AssertUtil.isTrue(deleteBatch(ids) != ids.length,"用户角色删除失败");    }    /*SZC*/    /**     * 用户注册     * @param userName     * @param password1     * @param password2     * @param icon     */    public void registerUser(String userName, String password1, String password2, String icon) {        // 参数校验        checkRegister(userName, password1, password2, icon);        // 实例化user        User user = new User();        //设置默认参数        user.setUserName(userName);        user.setUserPwd(Md5Util.encode(password1));        user.setUserPhone(icon);        user.setCreateDate(new Date());        user.setUpdateDate(new Date());        // 执行办法        AssertUtil.isTrue(userMapper.insertSelective(user)<1, "用户增加失败");    }    /**     * 用户注册的参数校验     * @param userName     * @param password1     * @param password2     * @param icon     */    private void checkRegister(String userName, String password1, String password2, String icon) {        // 用户名不为空        AssertUtil.isTrue(StringUtils.isBlank(userName), "请输出用户名");        // 判断用户名是否存在        User user1 = userMapper.selectByName(userName);        AssertUtil.isTrue(user1!=null, "该用户已存在");        // 判断手机号是否存在        User user2 = userMapper.selectByPhone(icon);        AssertUtil.isTrue(user2!=null, "该手机号已注册过账号");        // 明码不为空        AssertUtil.isTrue(StringUtils.isBlank(password1), "请输出明码");        // 确认明码不为空        AssertUtil.isTrue(StringUtils.isBlank(password2), "请输出确认明码");        // 明码长度校验        AssertUtil.isTrue(password1.length()<6 || password1.length()>12, "明码长度为6-12位");        // 明码和确认明码相等        AssertUtil.isTrue(!password1.equals(password2), "确认明码与明码不统一");        // 手机号非法        AssertUtil.isTrue(!PhoneUtil.isMobile(icon), "请输出正确的手机号");    }    /**     * 删除用户原先的角色,并从新赋予新的角色     * @param userId     * @param roleIds     */    private void relaionUserRole(int userId, String roleIds) {        // 通过id获取用户的角色数量        int count = userRoleMapper.countUserRoleByUserId(userId);        // count>0  阐明用户原先有角色  先删除所有的角色        if (count>0) {            AssertUtil.isTrue(userRoleMapper.deleteUserRoleByUserId(userId)!=count, "用户角色删除失败");        }        // 传入的角色信息不为空 增加新的角色        if (StringUtils.isNoneBlank(roleIds)) {            // 将传入的roleIds转成字符串数组            String[] roleStrIds = roleIds.split(",");            // 用来寄存用户的角色信息            List<UserRole> roleList = new ArrayList<>();            // 遍历roleIds            for (String rid : roleStrIds) {                // 筹备对象                UserRole userRole = new UserRole();                userRole.setUserId(userId);                userRole.setRoleId(Integer.parseInt(rid));                userRole.setCreateDate(new Date());                userRole.setUpdateDate(new Date());                roleList.add(userRole);            }            AssertUtil.isTrue(userRoleMapper.insertBatch(roleList) != roleList.size(), "用户角色调配失败");        }    }}


2、今日疫情模块



戳这里→Java进阶学习材料收费支付(329页面经、大厂面试题、学习笔记PDF)

外围代码Service

@Servicepublic class ConfirmedService extends BaseService<Confirmed,Integer> {    @Resource    //引入ConfirmedMapper    private ConfirmedMapper confirmedMapper;    @Resource    //引入user表    private UserMapper userMapper;    @Resource    //引入user表    private CommunityMapper  communityMapper;    //角色的条件查问以及 分页    public Map<String,Object> findRoleByParam(ConfirmedQuery confirmedQuery){        //实例化对象        Map<String,Object> map = new HashMap<>();        //实例化分页单位        PageHelper.startPage(confirmedQuery.getPage(), confirmedQuery.getLimit());        //开始分页        PageInfo<Confirmed> rlist = new PageInfo<>(selectByParams(confirmedQuery));        map.put("code",0);        map.put("msg","success");        map.put("count",rlist.getTotal());        map.put("data",rlist.getList());        //返回Map        return map;    }    @Transactional(propagation = Propagation.REQUIRED)           //波及到事务   就须要此注解    //用户模块的增加    public void addUser(Confirmed user) {        //1、参数校验        checkConfirmed(user.getTrueName(),user.getState());        if (user.getComId().equals("浦东区")){            user.setComId(1);        }        if (user.getComId().equals("黄浦区")){            user.setComId(2);        }        if (user.getComId().equals("松江区")){            user.setComId(3);        }        if (user.getComId().equals("徐汇区")){            user.setComId(4);        }        if (user.getComId().equals("虹口区")){            user.setComId(5);        }        //查问user表中是否存在此人  不存在   增加下来  设置默认值        User temp =  userMapper.selectByPhone(user.getTcPhone());       //   手机号查问用户        if (temp != null){            //衰弱状态改成2    如果user表外面曾经有了的状况下            userMapper.updateUserHealthById(temp.getUserPhone());            //默认值  确诊表中的userId字段            user.setUserId(temp.getId());        }else {          //表里没有这个人的时候  增加 这个用户  新建一个user对象            User u = new User();            //实在姓名            u.setTrueName(user.getTrueName());            //名字            u.setUserName(user.getTrueName());            //设置明码  默认值  :123456            u.setUserPwd(Md5Util.encode("123456"));            //设置社区ID            u.setComId(user.getComId());            //手机号  惟一            u.setUserPhone(user.getTcPhone());            u.setEcPhone(user.getTcPhone());            u.setHealth("2");            //创立工夫            u.setCreateDate(new Date());            //批改工夫            u.setUpdateDate(new Date());            //增加用户是否胜利            AssertUtil.isTrue(userMapper.insertSelective(u)<1,"插入用户失败");            //给确诊人员增加其  userId            Integer userId =  userMapper.selectById(user.getTcPhone());            user.setUserId(userId);        }        //2、默认值设置        //确诊日期        user.setCreateDate(new Date());        //增加是否胜利        AssertUtil.isTrue(insertSelective(user)<1,"增加失败");        //relaionUserRole(user.getId(),user.getComId());    }    @Transactional(propagation = Propagation.REQUIRED)           //波及到事务   就须要此注解    //用户模块的批改    public void changeUser(Confirmed user) {        //通过id获取用户信息        Confirmed temp = confirmedMapper.selectByPrimaryKey(user.getId());        //判断用户信息是否存在        AssertUtil.isTrue(temp == null,"以后用户不存在");        //校验参数        changeConfirmed(user.getTrueName(),user.getTcPhone(),user.getState());        //批改是否胜利  完整版        //AssertUtil.isTrue(updateByPrimaryKeySelective(user)<1,"批改失败了");        //批改是否胜利  完整版        AssertUtil.isTrue(confirmedMapper.uBPKS(user)<1,"批改失败了");    }    //批改的参数校验    private void changeConfirmed(String trueName, String tcPhone, Integer state) {        //1、用户名不能为空        AssertUtil.isTrue(StringUtils.isBlank(trueName),"姓名不能为空");        //2、以后状态不能为空        AssertUtil.isTrue(StringUtils.isBlank(tcPhone),"请输出手机号");        //3、以后状态不能为空        AssertUtil.isTrue(state<1 || state>4,"请抉择正确的状态码");    }    //用户模块的增加的参数校验    private void checkConfirmed(String trueName, Integer state) {        //1、用户名不能为空        AssertUtil.isTrue(StringUtils.isBlank(trueName),"姓名不能为空");        //2、以后状态不能为空        AssertUtil.isTrue(state<1 || state>3,"请抉择正确的状态码");    }    //增加社区时的校验    private void relaionUserRole(Integer id, Integer comId) {        //筹备汇合  存储对象        List<Community> urlist = new ArrayList<>();        //userId,roleId        //判断是否抉择了角色信息        //只能抉择一个社区        AssertUtil.isTrue(comId>1 || comId<1,"只能抉择一个社区");        //通过社区表的 com_id    查问到社区表的对应社区名        communityMapper.selectaddresComId(comId);        //增加    }    @Transactional(propagation = Propagation.REQUIRED)           //波及到事务   就须要此注解    //确诊人员的批量删除    public void deleteUserByIds(Integer[] ids) {        //要删除记录不能为空        AssertUtil.isTrue(ids == null || ids.length==0,"请抉择要删除的记录");        //批改user表的状态码        for(Integer id: ids){            Confirmed confirmed = confirmedMapper.selectId(id);            System.out.println(id+ " -----------------" );            System.out.println(confirmed.getTrueName());            AssertUtil.isTrue(userMapper.updateById(confirmed.getUserId())<1,"批改失败");        }        //删除确诊表的个人信息记录        AssertUtil.isTrue(deleteBatch(ids)!=ids.length,"删除失败");    }    //查问所有社区    public List<Map<String, Object>> queryComs() {        return confirmedMapper.selectComs();    }   }

3、防疫治理模块



外围代码Service:

@Servicepublic class CommunityService extends BaseService<Community,Integer> {    @Resource    private CommunityMapper communityMapper;    /**     * 多条件分页查问     * @param query     * @return     */    public Map<String,Object> queryComByParams(CommunityQuery query){        Map<String,Object> map=new HashMap<>();        //初始化分页        PageHelper.startPage(query.getPage(), query.getLimit());        //开始分页        PageInfo<Community> pageInfo=new PageInfo<>(communityMapper.selectByParams(query));        //筹备数据        map.put("code",0);        map.put("msg","");        map.put("count",pageInfo.getTotal());        map.put("data",pageInfo.getList());        return map;    }    //查问所有角色信息    public List<Map<String, Object>> findRoles(Integer userId) {        return communityMapper.selectRoles(userId);    }}//============================================================@Servicepublic class VaccinationService {    @Resource    VaccinationMapper vaccinationMapper;    /*多条件查问*/    public Map<String,Object> selectAll(VaccinationQuery vaccinationQuery) {        //创立map        Map<String,Object> map =new HashMap<String,Object>();        //查数据并分页        PageHelper.startPage(vaccinationQuery.getPage(),vaccinationQuery.getLimit());        PageInfo<Vaccination> pageInfo=new PageInfo<>(vaccinationMapper.selectByParams(vaccinationQuery));        map.put("code",0);        map.put("msg","success");        map.put("data",pageInfo.getList());        map.put("count",pageInfo.getTotal());        return map;    }    /*通过ID获取对象*/    public Vaccination selectId(Integer id) {        return vaccinationMapper.selectById(id);    }    /*增加*/    @Transactional(propagation = Propagation.REQUIRED)    public void insertVaccination(Vaccination vaccination) {        //审核        checkOK(vaccination);        vaccination.setFirstDate(new Date());        vaccination.setSecondDate(new Date());        //插入        AssertUtil.isTrue(vaccinationMapper.insertSelective(vaccination)<1,"插入失败");    }    private void checkOK(Vaccination vaccinatio){        AssertUtil.isTrue(vaccinatio==null,"请输出增加的角色");        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getTrueName()),"用户名不能为空");        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getFirst()),"请填写(是/否)");        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getSecond()),"请填写(是/否)");    }    /*删除*/    public void delete(Integer[] ids) {        AssertUtil.isTrue(ids==null||ids.length==0,"请抉择要删除的用户");        AssertUtil.isTrue(vaccinationMapper.deleteVa(ids)!=ids.length,"删除失败~~~");    }    /*编辑*/    public void updateVa(Vaccination vaccination) {        checkOK(vaccination);        if(vaccination.getFirst()==null||"否".equals(vaccination.getFirst())){            vaccination.setFirstDate(null);        }        if(vaccination.getSecond()==null||"否".equals(vaccination.getSecond())){            vaccination.setSecondDate(null);        }        if("是".equals(vaccination.getFirst())){            vaccination.setFirstDate(new Date());        }        if("是".equals(vaccination.getSecond())){            vaccination.setSecondDate(new Date());        }        AssertUtil.isTrue(vaccinationMapper.updateByPrimaryKeySelective(vaccination)<1,"批改失败~");    }}

4、系统管理模块



外围代码:Service:

@Servicepublic class RoleService extends BaseService<Role,Integer> {    @Autowired(required = false)    RoleMapper roleMapper;    @Autowired(required = false)    RoleQuery roleQuery;    @Resource    private ModuleMapper moduleMapper;    @Resource    private PermissionMapper permissionMapper;    /*多条件查问*/    public Map<String,Object> selectRole(RoleQuery roleQuery){        //创立map        Map<String,Object> map =new HashMap<String,Object>();        //查数据并分页        PageHelper.startPage(roleQuery.getPage(),roleQuery.getLimit());        PageInfo<Role> pageInfo=new PageInfo<>(roleMapper.selectByParams(roleQuery));        map.put("code",0);        map.put("msg","success");        map.put("data",pageInfo.getList());        map.put("count",pageInfo.getTotal());        return map;    }    /*增加角色*/    @Transactional(propagation = Propagation.REQUIRED)    public void insertRole(Role role) {        //审核        checkRole(role);        //增加        role.setCreateDate(new Date());        role.setUpdateDate(new Date());        System.out.println("就差一点!!!!");        AssertUtil.isTrue(insertSelective(role)<1,"增加失败了呢~");    }    private void checkRole(Role role) {        //是否为空        AssertUtil.isTrue(role==null,"请输出角色信息~");        //判断是否曾经反复        System.out.println("判断");        Role role1= roleMapper.selectByName(role.getRoleName());        System.out.println("判断完结");        System.out.println(role1!=null);        AssertUtil.isTrue(role1!=null,"已增加过啦~");        System.out.println("退出@");    }    /*编辑角色*/    @Transactional(propagation = Propagation.REQUIRED)    public void updateRole(Role role) {        role.setUpdateDate(new Date());        AssertUtil.isTrue(updateByPrimaryKeySelective(role)<1,"编辑失败啦~");    }    /**     * 删除角色信息     * @param role     */    @Transactional(propagation = Propagation.REQUIRED)    public void deleteRole(Role role) {        // 验证        AssertUtil.isTrue(role.getId()==null || selectByPrimaryKey(role.getId())==null, "待删除角色不存在");        // 设定默认值        role.setUpdateDate(new Date());        // 删除角色绑定的权限资源        int count = roleMapper.countPermissionByRoleId(role.getId());        if (count>0) {            int i = roleMapper.deletePermissionsByRoleId(role.getId());            AssertUtil.isTrue(i!=count, "角色绑定的权限资源删除失败");        }        // 判断是否胜利        AssertUtil.isTrue(roleMapper.updateRoleById(role.getId())<1, "角色删除失败");    }    /**     * 查问所有角色     * @return     */    public List<Map<String, Object>> seleceAllRole(Integer userId) {        return roleMapper.seleceAllRole(userId);    }    /**     * 给角色增加权限     * @param mids     * @param roleId     */    @Transactional(propagation = Propagation.REQUIRED)    public void addGrant(Integer[] mids, Integer roleId) {        // 判断roleId是否存在        AssertUtil.isTrue(roleId==null || roleMapper.selectByPrimaryKey(roleId)==null, "待受权的角色不存在");        // 统计以后角色的权限资源数量        int count = roleMapper.countPermissionByRoleId(roleId);        if (count>0) {            // 如果角色存在权限资源,就全副删除            int num = roleMapper.deletePermissionsByRoleId(roleId);            AssertUtil.isTrue(count!=num, "资源删除失败");        }        List<Permission> plist = new ArrayList<>();        if (mids!=null && mids.length!=0) {            // 遍历mids            for (Integer mid : mids) {                // 实例化对象                Permission permission = new Permission();                // 设置数据                permission.setRoleId(roleId);                permission.setModuleId(mid);                // 权限码                permission.setAclValue(moduleMapper.selectByPrimaryKey(mid).getOptValue());                permission.setCreateDate(new Date());                permission.setUpdateDate(new Date());                // 增加到list                plist.add(permission);            }        }        AssertUtil.isTrue(permissionMapper.insertBatch(plist)!=plist.size(), "角色权限更新失败");    }}

5、用户模块



外围代码Service:

@Servicepublic class RoleService extends BaseService<Role,Integer> {    @Autowired(required = false)    RoleMapper roleMapper;    @Autowired(required = false)    RoleQuery roleQuery;    @Resource    private ModuleMapper moduleMapper;    @Resource    private PermissionMapper permissionMapper;    /*多条件查问*/    public Map<String,Object> selectRole(RoleQuery roleQuery){        //创立map        Map<String,Object> map =new HashMap<String,Object>();        //查数据并分页        PageHelper.startPage(roleQuery.getPage(),roleQuery.getLimit());        PageInfo<Role> pageInfo=new PageInfo<>(roleMapper.selectByParams(roleQuery));        map.put("code",0);        map.put("msg","success");        map.put("data",pageInfo.getList());        map.put("count",pageInfo.getTotal());        return map;    }    /*增加角色*/    @Transactional(propagation = Propagation.REQUIRED)    public void insertRole(Role role) {        //审核        checkRole(role);        //增加        role.setCreateDate(new Date());        role.setUpdateDate(new Date());        System.out.println("就差一点!!!!");        AssertUtil.isTrue(insertSelective(role)<1,"增加失败了呢~");    }    private void checkRole(Role role) {        //是否为空        AssertUtil.isTrue(role==null,"请输出角色信息~");        //判断是否曾经反复        System.out.println("判断");        Role role1= roleMapper.selectByName(role.getRoleName());        System.out.println("判断完结");        System.out.println(role1!=null);        AssertUtil.isTrue(role1!=null,"已增加过啦~");        System.out.println("退出@");    }    /*编辑角色*/    @Transactional(propagation = Propagation.REQUIRED)    public void updateRole(Role role) {        role.setUpdateDate(new Date());        AssertUtil.isTrue(updateByPrimaryKeySelective(role)<1,"编辑失败啦~");    }    /**     * 删除角色信息     * @param role     */    @Transactional(propagation = Propagation.REQUIRED)    public void deleteRole(Role role) {        // 验证        AssertUtil.isTrue(role.getId()==null || selectByPrimaryKey(role.getId())==null, "待删除角色不存在");        // 设定默认值        role.setUpdateDate(new Date());        // 删除角色绑定的权限资源        int count = roleMapper.countPermissionByRoleId(role.getId());        if (count>0) {            int i = roleMapper.deletePermissionsByRoleId(role.getId());            AssertUtil.isTrue(i!=count, "角色绑定的权限资源删除失败");        }        // 判断是否胜利        AssertUtil.isTrue(roleMapper.updateRoleById(role.getId())<1, "角色删除失败");    }    /**     * 查问所有角色     * @return     */    public List<Map<String, Object>> seleceAllRole(Integer userId) {        return roleMapper.seleceAllRole(userId);    }    /**     * 给角色增加权限     * @param mids     * @param roleId     */    @Transactional(propagation = Propagation.REQUIRED)    public void addGrant(Integer[] mids, Integer roleId) {        // 判断roleId是否存在        AssertUtil.isTrue(roleId==null || roleMapper.selectByPrimaryKey(roleId)==null, "待受权的角色不存在");        // 统计以后角色的权限资源数量        int count = roleMapper.countPermissionByRoleId(roleId);        if (count>0) {            // 如果角色存在权限资源,就全副删除            int num = roleMapper.deletePermissionsByRoleId(roleId);            AssertUtil.isTrue(count!=num, "资源删除失败");        }        List<Permission> plist = new ArrayList<>();        if (mids!=null && mids.length!=0) {            // 遍历mids            for (Integer mid : mids) {                // 实例化对象                Permission permission = new Permission();                // 设置数据                permission.setRoleId(roleId);                permission.setModuleId(mid);                // 权限码                permission.setAclValue(moduleMapper.selectByPrimaryKey(mid).getOptValue());                permission.setCreateDate(new Date());                permission.setUpdateDate(new Date());                // 增加到list                plist.add(permission);            }        }        AssertUtil.isTrue(permissionMapper.insertBatch(plist)!=plist.size(), "角色权限更新失败");    }}

戳这里→Java进阶学习材料收费支付(329页面经、大厂面试题、学习笔记PDF)