コード例 #1
0
ファイル: RoleController.cs プロジェクト: zxgdll/UMember
        public ActionResult Edit(RoleView rolevView)
        {
            if (ModelState.IsValid)
            {
                tbRole role = db.tbRole.Find(rolevView.Role_ID);
                role.Role_Name       = rolevView.Role_Name;
                role.Is_Delete       = rolevView.Is_Delete;
                role.Is_Hide         = rolevView.Is_Hide;
                db.Entry(role).State = EntityState.Modified;

                var query = from s in db.tbRoleMenu
                            where s.Role_ID == role.Role_ID
                            select s;

                foreach (tbRoleMenu m in query.ToList())
                {
                    db.tbRoleMenu.Remove(m);
                }

                foreach (string s in rolevView.Menu_Name)
                {
                    tbRoleMenu roleMenu = new tbRoleMenu();
                    roleMenu.Role_ID   = role.Role_ID;
                    roleMenu.Menu_Name = s;
                    db.tbRoleMenu.Add(roleMenu);
                }
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(rolevView));
        }
コード例 #2
0
        public static void SetParentNode(AchieveDBEntities myDbContext, int MenuId, int roleId, List <int> addlist)
        {
            tbMenu temp = myDbContext.tbMenu.Where(p => p.Id == MenuId).FirstOrDefault();

            if (temp != null)
            {
                int DataCount = myDbContext.tbRoleMenu.Where(p => p.MenuId == MenuId && p.RoleId == roleId).Count <tbRoleMenu>();
                int addCount  = 1;
                if (addlist != null)
                {
                    foreach (int st in addlist)
                    {
                        if (MenuId == st)
                        {
                            addCount = 0;
                            break;
                        }
                    }
                }
                if (DataCount <= 0 && addCount == 1)
                {
                    tbRoleMenu tbnew = new tbRoleMenu()
                    {
                        MenuId = MenuId,
                        RoleId = roleId
                    };
                    myDbContext.tbRoleMenu.Add(tbnew);
                    addlist.Add(MenuId);
                    if (temp.ParentId == null)
                    {
                    }
                    else
                    {
                        SetParentNode(myDbContext, Convert.ToInt32(temp.ParentId), roleId, addlist);
                    }
                }
            }
        }
コード例 #3
0
ファイル: RoleController.cs プロジェクト: zxgdll/UMember
        public ActionResult Create(RoleView rolevView)
        {
            if (ModelState.IsValid)
            {
                tbRole role = new tbRole();
                role.Role_Name = rolevView.Role_Name;
                role.Is_Delete = rolevView.Is_Delete;
                role.Is_Hide   = rolevView.Is_Hide;
                db.tbRole.Add(role);

                foreach (string s in rolevView.Menu_Name)
                {
                    tbRoleMenu roleMenu = new tbRoleMenu();
                    roleMenu.Role_ID   = role.Role_ID;
                    roleMenu.Menu_Name = s;
                    db.tbRoleMenu.Add(roleMenu);
                }
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(rolevView));
        }
コード例 #4
0
        public static string SetButtonByMenuIdRoleId(int menuId, int roleId, string buttonStr)
        {
            string str = string.Empty;

            try
            {
                string[]                list        = buttonStr.Split(',');
                AchieveDBEntities       myDbContext = new AchieveDBEntities();
                List <tbRoleMenuButton> tblist      = myDbContext.tbRoleMenuButton.Where(p => p.MenuId == menuId && p.RoleId == roleId).ToList();
                foreach (tbRoleMenuButton st in tblist)
                {
                    bool findbj = false;
                    if (list.Length > 0)
                    {
                        foreach (string st1 in list)
                        {
                            if (st.Id.ToString() == st1)
                            {
                                findbj = true;
                                break;
                            }
                        }
                    }
                    if (!findbj)
                    {
                        myDbContext.tbRoleMenuButton.Remove(st);
                    }
                }

                if (list.Length > 0)
                {
                    foreach (string st1 in list)
                    {
                        if (string.IsNullOrEmpty(st1))
                        {
                            continue;
                        }
                        bool findbj = false;
                        foreach (tbRoleMenuButton st in tblist)
                        {
                            if (st.Id.ToString() == st1)
                            {
                                findbj = true;
                                break;
                            }
                        }
                        if (!findbj)
                        {
                            tbRoleMenuButton newtb = new tbRoleMenuButton()
                            {
                                ButtonId = Convert.ToInt32(st1),
                                MenuId   = menuId,
                                RoleId   = roleId
                            };
                            myDbContext.tbRoleMenuButton.Add(newtb);
                        }
                    }
                }
                int DataCount = myDbContext.tbRoleMenu.Where(p => p.MenuId == menuId && p.RoleId == roleId).Count <tbRoleMenu>();
                if (DataCount <= 0)
                {
                    tbRoleMenu temp = new tbRoleMenu()
                    {
                        MenuId = menuId,
                        RoleId = roleId
                    };
                    myDbContext.tbRoleMenu.Add(temp);
                }

                myDbContext.SaveChanges();
                str = ResponseHelper.ResponseMsg("1", "更新成功", "");
            }
            catch (Exception ex)
            {
                str = ResponseHelper.ResponseMsg("-1", ex.Message, "");
            }

            return(str);
        }