Search in sources :

Example 1 with SysUserRole

use of com.hxkj.system.model.SysUserRole in project my_curd by qinyou.

the class SysUserController method giveRole.

/**
 * 用户赋予角色
 */
@Before(Tx.class)
public void giveRole() {
    String userId = getPara("userId");
    String roleIdstr = getPara("roleIds");
    try {
        String deleteSql = "delete from  sys_user_role where user_id = ?";
        Db.update(deleteSql, userId);
        String[] roleIds = roleIdstr.split(";");
        for (int i = 0; i < roleIds.length; i++) {
            SysUserRole sysUserRole = new SysUserRole();
            sysUserRole.setUserId(userId);
            sysUserRole.setRoleId(Integer.parseInt(roleIds[i]));
            sysUserRole.save();
        }
        renderText("赋予角色成功");
    } catch (ActiveRecordException e) {
        e.printStackTrace();
        renderText("赋予角色失败");
    }
}
Also used : ActiveRecordException(com.jfinal.plugin.activerecord.ActiveRecordException) SysUserRole(com.hxkj.system.model.SysUserRole) Before(com.jfinal.aop.Before)

Example 2 with SysUserRole

use of com.hxkj.system.model.SysUserRole in project my_curd by qinyou.

the class LoginController method action.

/**
 * 登录Action
 */
@Before(Tx.class)
public void action() {
    String username = getPara("username");
    String password = getPara("password");
    if (StrKit.isBlank(username)) {
        setAttr("errMsg", "请填写用户名。");
        render("login.html");
        return;
    }
    if (StrKit.isBlank(password)) {
        setAttr("errMsg", "请填写密码。");
        render("login.html");
        return;
    }
    SysUser sysUser = SysUser.dao.findByUsername(username);
    if (sysUser == null) {
        setAttr("errMsg", username + " 用户不存在。");
        render("login.html");
        return;
    }
    password = HashKit.sha1(password);
    if (!sysUser.getPassword().equals(password)) {
        setAttr("username", username);
        setAttr("errMsg", " 密码错误。");
        render("login.html");
        return;
    }
    if (sysUser.getDisabled().equals("1")) {
        setAttr("errMsg", username + " 用户被禁用,请联系管理员。");
        render("login.html");
        return;
    }
    String remember = getPara("remember");
    // 记住密码 && cookie 不存在
    if ("on".equals(remember) && getCookie(usernameKey) == null) {
        // 1天
        setCookie(usernameKey, username, 60 * 60 * 24 * 1);
        setCookie(passwordKey, password, 60 * 60 * 24 * 1);
    }
    // 登录用户信息
    setSessionAttr(Constant.SYSTEM_USER, sysUser);
    // 为了 druid session 监控用
    setSessionAttr(Constant.SYSTEM_USER_NAME, sysUser.getName());
    // 用户角色
    SysUserRole sysUserRole = SysUserRole.dao.findRolesByUserId(sysUser.getId());
    if (sysUserRole != null) {
        // 角色名称(显示用)
        setSessionAttr(Constant.SYSTEM_USER_ROLES, sysUserRole.get("roleNames"));
        LoginService loginService = Duang.duang(LoginService.class);
        List<SysMenu> userMenus = loginService.getUserMenu(sysUserRole.get("roleIds"));
        setSessionAttr(Constant.OWN_MENU, userMenus);
    }
    addOpLog("登录");
    redirect("/main");
}
Also used : SysUser(com.hxkj.system.model.SysUser) SysMenu(com.hxkj.system.model.SysMenu) SysUserRole(com.hxkj.system.model.SysUserRole) Before(com.jfinal.aop.Before)

Example 3 with SysUserRole

use of com.hxkj.system.model.SysUserRole in project my_curd by qinyou.

the class LoginController method index.

/**
 * 登录页面
 */
public void index() {
    String username = getCookie(usernameKey);
    String password = getCookie(passwordKey);
    LOG.debug("username from cookie: " + username);
    LOG.debug("password from cookie:+" + password);
    if (username != null && password != null) {
        SysUser sysUser = SysUser.dao.findByUsernameAndPassword(username, password);
        // 用户名密码正确且未被禁用
        if (sysUser != null && !sysUser.getDisabled().equals("1")) {
            setSessionAttr(Constant.SYSTEM_USER, sysUser);
            setSessionAttr(Constant.SYSTEM_USER_NAME, sysUser.getName());
            SysUserRole sysUserRole = SysUserRole.dao.findRolesByUserId(sysUser.getId());
            if (sysUserRole != null) {
                setSessionAttr(Constant.SYSTEM_USER_ROLES, sysUserRole.get("roleNames"));
                setSessionAttr(Constant.SYSTEM_USER_ROLES, sysUserRole.get("roleNames"));
                LoginService loginService = Duang.duang(LoginService.class);
                List<SysMenu> userMenus = loginService.getUserMenu(sysUserRole.get("roleIds"));
                setSessionAttr(Constant.OWN_MENU, userMenus);
            }
            addOpLog("通过 cookie 登录");
            redirect("/main");
            return;
        }
    }
    render("login.html");
}
Also used : SysUser(com.hxkj.system.model.SysUser) SysMenu(com.hxkj.system.model.SysMenu) SysUserRole(com.hxkj.system.model.SysUserRole)

Example 4 with SysUserRole

use of com.hxkj.system.model.SysUserRole in project my_curd by qinyou.

the class SysUserController method roleListChecked.

/**
 * 全部菜单树,并根据角色选中
 */
public void roleListChecked() {
    String id = getPara(0);
    List<SysUserRole> sysUserRoles = SysUserRole.dao.findUserRolesByUserId(id);
    List<SysRole> sysRoles = SysRole.dao.findAll();
    List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
    for (SysRole sysRole : sysRoles) {
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("id", sysRole.getId());
        map.put("text", sysRole.getRoleName());
        map.put("state", "open");
        // 不显示图标
        map.put("iconCls", "icon-blank");
        for (SysUserRole sysUserRole : sysUserRoles) {
            if (sysUserRole.getRoleId() == sysRole.getId()) {
                map.put("checked", true);
                break;
            }
        }
        maps.add(map);
    }
    renderJson(maps);
}
Also used : HashMap(java.util.HashMap) SysRole(com.hxkj.system.model.SysRole) ArrayList(java.util.ArrayList) HashMap(java.util.HashMap) Map(java.util.Map) SysUserRole(com.hxkj.system.model.SysUserRole)

Aggregations

SysUserRole (com.hxkj.system.model.SysUserRole)4 SysMenu (com.hxkj.system.model.SysMenu)2 SysUser (com.hxkj.system.model.SysUser)2 Before (com.jfinal.aop.Before)2 SysRole (com.hxkj.system.model.SysRole)1 ActiveRecordException (com.jfinal.plugin.activerecord.ActiveRecordException)1 ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1