ZhuDongming
2019-11-08 b284d078f196af80a105dc3bcb610d8ed37d9251
src/main/java/com/moral/service/impl/RoleServiceImpl.java
@@ -1,5 +1,6 @@
package com.moral.service.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -13,7 +14,10 @@
import com.moral.common.bean.Constants;
import com.moral.common.bean.PageBean;
import com.moral.common.util.ExampleUtil;
import com.moral.common.util.MyBatisBaseMapUtil;
import com.moral.entity.AccountRole;
import com.moral.entity.Role;
import com.moral.mapper.AccountRoleMapper;
import com.moral.mapper.RoleMapper;
import com.moral.service.RoleService;
import com.moral.util.TkMybatisUtils;
@@ -28,6 +32,9 @@
    @Resource
    RoleMapper roleMapper;
    @Resource
    AccountRoleMapper accountRoleMapper;
    @Override
    @Transactional
    public void addOrModify(Role role) {
@@ -35,7 +42,7 @@
            role.setUpdateTime(new Date());
            role.setUpdateUser(role.getUpdateUser());
            if (role.getId() != null) {
                roleMapper.updateByPrimaryKey(role);
                roleMapper.updateByPrimaryKeySelective(role);
            } else {
                Role roleQuery = new Role();
                roleQuery.setRoleCode(role.getRoleCode());
@@ -87,4 +94,38 @@
        roleMapper.updateByExampleSelective(role, example);
    }
    @Override
    public List<Integer> getRoleIds(int accountId) {
        AccountRole accountRole = new AccountRole();
        accountRole.setAccountId(accountId);
        List<AccountRole> accountRoleList = accountRoleMapper.select(accountRole);
        List<Integer> roleIds = new ArrayList<>();
        for(AccountRole accRole:accountRoleList ){
            roleIds.add(accRole.getRoleId());
        }
        return roleIds;
    }
    @Override
    public void allotRole(Integer accountId, Integer[] roleIds) {
        Example example = new Example(AccountRole.class);
        example.or().andEqualTo("accountId",accountId);
        accountRoleMapper.deleteByExample(example);
        if(roleIds!=null && roleIds.length >0){
            List<AccountRole> accountRoleList = new ArrayList<>();
            for(int roleId:roleIds){
                AccountRole accountRole = new AccountRole();
                accountRole.setAccountId(accountId);
                accountRole.setRoleId(roleId);
                accountRoleList.add(accountRole);
            }
            accountRoleMapper.insertList(accountRoleList);
        }
    }
    @Override
    public PageBean<Role> queryByPageBean(PageBean pageBean){
        return MyBatisBaseMapUtil.queryPage(roleMapper,pageBean,ENTITY_CLASS);
    }
}