Example #1
0
        public ActionResult GetUserDepAndRole()
        {
            int        userid   = Convert.ToInt32(Request.Form["UserId"]);
            List <int> userRole = new P_UserRoleBLL().GetListBy(ur => ur.UserID == userid).Select(ur => ur.RoleID).ToList();
            P_User     userInfo = new P_UserBLL().GetModelWithOutTrace(u => u.ID == userid);
            string     Depid    = "";

            if (userInfo != null)
            {
                Depid = userInfo.DepID.ToString();
            }
            string uRole = "";

            foreach (int item in userRole)
            {
                uRole = uRole + "," + item;
            }
            string reUR = "";

            if (uRole != "")
            {
                reUR = uRole.Substring(1);
            }
            return(Json(new { UserRole = reUR, Dep = Depid }, "appliction/json", JsonRequestBehavior.AllowGet));
        }
Example #2
0
        public ActionResult SetUserRole()
        {
            try
            {
                //获取要修改部门的用户id
                int usrId = int.Parse(Request.Form["uId"]);
                //获取部门id
                int depId = int.Parse(Request.Form["depId"]);
                //获取角色ids
                string[] strRoleIds = Request.Form["rIds"].Split(new string[1] {
                    ","
                }, StringSplitOptions.RemoveEmptyEntries);                                                                     //1,2,3,4,
                //先跟新用户的部门id
                new P_UserBLL().Modify(new Model.P_User()
                {
                    ID = usrId, DepID = depId
                }, "DepID");


                //查当前用户的 角色id
                var listOldRole = new P_UserRoleBLL().GetListBy(r => r.UserID == usrId).Select(r => r.RoleID).ToList();
                //查新的 角色id
                var listNewRole = strRoleIds.ToList();
                //两个集合比较,去掉重复元素
                for (int i = listOldRole.Count() - 1; i >= 0; i--)
                {
                    int oldRoleId = listOldRole[i];
                    if (listNewRole.Contains(oldRoleId.ToString()))
                    {
                        listOldRole.Remove(oldRoleId);
                        listNewRole.Remove(oldRoleId.ToString());
                    }
                }
                //新增新角色
                listNewRole.ForEach(newR =>
                {
                    new P_UserRoleBLL().Add(new Model.P_UserRole()
                    {
                        UserID = usrId, RoleID = int.Parse(newR), IsActive = true
                    });
                });

                //删除旧角色
                listOldRole.ForEach(oldR =>
                {
                    new P_UserRoleBLL().DelBy(ur => ur.UserID == usrId && ur.RoleID == oldR);
                });
            }
            catch (Exception ex)
            {
                return(this.JsonResult(Utility.E_JsonResult.Error, "设置权限失败!" + ex.Message, null, null));
            }
            return(this.JsonResult(Utility.E_JsonResult.OK, "设置权限成功!", null, null));
        }
        public ActionResult SetUserRole()
        {
            try
            {
                //获取要修改部门的用户id
                int usrId = int.Parse(Request.Form["uId"]);
                //获取部门id
                int depId = int.Parse(Request.Form["depId"]);
                //获取角色ids
                string[] strRoleIds = Request.Form["rIds"].Split(new string[1] { "," }, StringSplitOptions.RemoveEmptyEntries);//1,2,3,4,
                //先跟新用户的部门id
                new P_UserBLL().Modify(new Model.P_User() { ID = usrId, DepID = depId }, "DepID");

                //查当前用户的 角色id
                var listOldRole = new P_UserRoleBLL().GetListBy(r => r.UserID == usrId).Select(r => r.RoleID).ToList();
                //查新的 角色id
                var listNewRole = strRoleIds.ToList();
                //两个集合比较,去掉重复元素
                for (int i = listOldRole.Count() - 1; i >= 0; i--)
                {
                    int oldRoleId = listOldRole[i];
                    if (listNewRole.Contains(oldRoleId.ToString()))
                    {
                        listOldRole.Remove(oldRoleId);
                        listNewRole.Remove(oldRoleId.ToString());
                    }
                }
                //新增新角色
                listNewRole.ForEach(newR =>
                {
                    new P_UserRoleBLL().Add(new Model.P_UserRole() { UserID = usrId, RoleID = int.Parse(newR), IsActive = true });
                });

                //删除旧角色
                listOldRole.ForEach(oldR =>
                {
                    new P_UserRoleBLL().DelBy(ur => ur.UserID == usrId && ur.RoleID == oldR);
                });

            }
            catch (Exception ex)
            {
                return this.JsonResult(Utility.E_JsonResult.Error, "设置权限失败!" + ex.Message, null, null);
            }
            return this.JsonResult(Utility.E_JsonResult.OK, "设置权限成功!", null, null);
        }