ZhuDongming
2019-11-28 70830c5b2e96cc1c76d4adb88ddced55e7476547
src/main/java/com/moral/service/impl/RoleServiceImpl.java
@@ -3,7 +3,9 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
@@ -16,9 +18,13 @@
import com.moral.common.util.ExampleUtil;
import com.moral.common.util.MyBatisBaseMapUtil;
import com.moral.entity.AccountRole;
import com.moral.entity.Menu;
import com.moral.entity.Role;
import com.moral.entity.RoleMenu;
import com.moral.mapper.AccountRoleMapper;
import com.moral.mapper.MenuMapper;
import com.moral.mapper.RoleMapper;
import com.moral.mapper.RoleMenuMapper;
import com.moral.service.RoleService;
import com.moral.util.TkMybatisUtils;
@@ -31,6 +37,12 @@
    @Resource
    RoleMapper roleMapper;
    @Resource
    RoleMenuMapper roleMenuMapper;
    @Resource
    MenuMapper menuMapper;
    @Resource
    AccountRoleMapper accountRoleMapper;
@@ -65,12 +77,6 @@
        Example example = ExampleUtil.generateExample(ENTITY_CLASS, pageBean);
        TkMybatisUtils.addDeletesToExample(example);
        return roleMapper.selectCountByExample(example);
    }
    @Override
    public List<Role> getRoleListByName(String roleName) {
        List<Role> roleList = roleMapper.getRoleListByName(roleName);
        return roleList;
    }
    @Override
@@ -124,6 +130,31 @@
    }
    @Override
    public void allotMenu(Integer roleId, Integer[] menuOrders) {
        Example example = new Example(RoleMenu.class);
        example.or().andEqualTo("roleId", roleId);
        roleMenuMapper.deleteByExample(example);
        List<Menu> menuListInfo = menuMapper.getMenuListInfo();
        Map<Integer, Integer> menuMap = new HashMap<>();
        for (Menu m : menuListInfo) {
            menuMap.put(m.getMenuOrder(), m.getId());
        }
        if (menuOrders != null && menuOrders.length > 0) {
            List<RoleMenu> roleMenuList = new ArrayList<>();
            for (Integer menuOrder : menuOrders) {
                if (menuOrder > 10) {
                    RoleMenu roleMenu = new RoleMenu();
                    roleMenu.setRoleId(roleId);
                    roleMenu.setChannelId(Integer.valueOf(menuOrder.toString().substring(0, 1)));
                    roleMenu.setMenuId(menuMap.get(menuOrder));
                    roleMenuList.add(roleMenu);
                }
            }
            roleMenuMapper.insertList(roleMenuList);
        }
    }
    @Override
    public PageBean<Role> queryByPageBean(PageBean pageBean){
        return MyBatisBaseMapUtil.queryPage(roleMapper,pageBean,ENTITY_CLASS);
    }