Search in sources :

Example 6 with SysMenu

use of com.github.qinyou.system.model.SysMenu in project my_curd by qinyou.

the class SysMenuController method addAction.

// 添加 action
public void addAction() {
    SysMenu sysMenu = getBean(SysMenu.class, "");
    sysMenu.setId(IdUtils.id()).setCreater(WebUtils.getSessionUsername(this)).setCreateTime(new Date());
    if (sysMenu.save()) {
        renderSuccess(ADD_SUCCESS);
    } else {
        renderFail(ADD_FAIL);
    }
}
Also used : SysMenu(com.github.qinyou.system.model.SysMenu)

Example 7 with SysMenu

use of com.github.qinyou.system.model.SysMenu in project my_curd by qinyou.

the class SysMenuController method query.

// 表格数据
public void query() {
    List<SysMenu> sysMenus = SysMenu.dao.findAllCSort();
    // easyui 字体图标
    for (SysMenu sysMenu : sysMenus) {
        sysMenu.put("iconCls", sysMenu.getIcon());
    }
    renderJson(sysMenus);
}
Also used : SysMenu(com.github.qinyou.system.model.SysMenu)

Example 8 with SysMenu

use of com.github.qinyou.system.model.SysMenu in project my_curd by qinyou.

the class LoginController method afterLogin.

/**
 * 登录后将 用户相关信息放入到 session 中
 *
 * @param sysUser
 * @param orgId  sys_org id, 用户登录的机构
 */
private void afterLogin(SysUser sysUser, String orgId) {
    // 登录用户信息
    setSessionAttr("sysUser", sysUser);
    // druid session 监控用
    setSessionAttr("sysUserName", sysUser.getRealName());
    // 菜单
    String roleIds = SysUserRole.dao.findRoleIdsByUserId(sysUser.getId());
    List<SysMenu> sysMenus = LoginService.findUserMenus(roleIds);
    setSessionAttr("sysUserMenu", sysMenus);
    List<String> menuCodes = new ArrayList<>();
    sysMenus.forEach(item -> {
        if (item.getMenuCode() != null) {
            menuCodes.add(item.getMenuCode());
        }
    });
    setSessionAttr("menuCodes", menuCodes);
    // 按钮编码
    List<String> buttonCodes = LoginService.findUserButtons(roleIds);
    setSessionAttr("buttonCodes", buttonCodes);
    // 角色编码
    String roleCodes = SysUserRole.dao.findRoleCodesByUserId(sysUser.getId());
    if (roleCodes != null) {
        setSessionAttr("roleCodes", Arrays.asList(roleCodes.split(",")));
    } else {
        setSessionAttr("roleCodes", new ArrayList<>());
    }
    // 登录机构
    Record org = Db.findFirst("select id,orgName,pid from sys_org where id = ?", orgId);
    Optional.of(org);
    String orgName = WebUtils.buildOrgName(org.getStr("orgName"), org.getStr("pid"));
    setSessionAttr("orgName", orgName);
    setSessionAttr("orgId", orgId);
    log.info("{} 拥有角色 ids {}", sysUser.getUsername(), roleIds);
    log.info("{} 拥有菜单 {}", sysUser.getUsername(), JSON.toJSONString(sysMenus));
    log.info("{} 拥有菜单编码 {}", sysUser.getUsername(), JSON.toJSONString(menuCodes));
    log.info("{} 拥有按钮编码 {}", sysUser.getUsername(), JSON.toJSONString(buttonCodes));
    log.info("{} 拥有角色编码 {}", sysUser.getUsername(), roleCodes);
    log.info("{} 登录机构 {},{}", sysUser.getUsername(), orgId, orgName);
}
Also used : SysMenu(com.github.qinyou.system.model.SysMenu) Record(com.jfinal.plugin.activerecord.Record)

Example 9 with SysMenu

use of com.github.qinyou.system.model.SysMenu in project my_curd by qinyou.

the class LoginService method getPChain.

/**
 * 获取 所有 父祖 菜单
 *
 * @param allMenuList
 * @param menu
 * @param chainSet
 */
public static void getPChain(Collection<SysMenu> allMenuList, SysMenu menu, Set<SysMenu> chainSet) {
    for (SysMenu m : allMenuList) {
        if (Objects.equals(menu.getPid(), m.getId())) {
            chainSet.add(m);
            getPChain(allMenuList, m, chainSet);
        }
    }
}
Also used : SysMenu(com.github.qinyou.system.model.SysMenu)

Example 10 with SysMenu

use of com.github.qinyou.system.model.SysMenu in project my_curd by qinyou.

the class MainService method getCChain.

/**
 *s
 * 通过 rootId  获得 所有子菜单
 * @param allMenuList
 * @param rootId
 * @param chainSet
 */
public static void getCChain(Collection<SysMenu> allMenuList, String rootId, Set<SysMenu> chainSet) {
    for (SysMenu m : allMenuList) {
        if (Objects.equals(rootId, m.getPid())) {
            chainSet.add(m);
            getCChain(allMenuList, m.getId(), chainSet);
        }
    }
}
Also used : SysMenu(com.github.qinyou.system.model.SysMenu)

Aggregations

SysMenu (com.github.qinyou.system.model.SysMenu)10 SysButton (com.github.qinyou.system.model.SysButton)1 Before (com.jfinal.aop.Before)1 Record (com.jfinal.plugin.activerecord.Record)1