public ActionResult ControlTab(string type = "users") { Session["TabAssigned"] = null; var objModel = new ManageTabModel(); try { //List<SelectListItem> TotalTerms = new List<SelectListItem>(); //TotalTerms.AddRange(new[] //{ // new SelectListItem() {Text = "Users", Value = "0"},new SelectListItem(){Text = "Roles",Value = "1"}, //}); //if (type == "users") //{ // objModel = new ManageTabModel { type = "0", typelist = TotalTerms }; //} //else if (type == "roles") //{ // objModel = new ManageTabModel { type = "1", typelist = TotalTerms }; //} objModel.Users = GetUsers(); // objModel.Roles = GetRoles(); // ViewBag.type = TotalTerms; var Tabs = db.Master_Tab.Where(x => x.IsActive == true).Select(x => new { tabid = x.TabID, tabname = x.TabName }).ToList(); ViewBag.TabList = new SelectList(Tabs, "tabid", "tabname"); var TabGrids = db.Master_Tab_Grids.Where(x => x.IsActive == true).Select(x => new { tabid = x.GridID, tabname = x.GridName }).ToList(); ViewBag.TabGridList = new SelectList(TabGrids, "tabid", "tabname"); } catch (Exception Ex) { string actionName = this.ControllerContext.RouteData.Values["action"].ToString(); string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); ExceptionHandlingController.ExceptionDetails(Ex, actionName, controllerName); } Dictionary <int, string> dict = new Dictionary <int, string>(); var getTab = db.Master_Tab.Where(x => x.IsActive == true).ToList(); foreach (var item in getTab) { dict.Add(item.TabID, item.TabName); } return(View(objModel)); }
public ActionResult ControlTab(ManageTabModel objModel) { try { Session["TabAssigned"] = null; if (ModelState.IsValid) { if (objModel.Tabs != null) { if (objModel.UserId != 0) { var newTabs = new List <Int32?>(objModel.Tabs); var oldTabs = db.ManageTabs.Where(x => x.UserID == objModel.UserId && x.IsActive == true) .Select(x => x.TabID) .ToList(); var toInsert = newTabs.Except(oldTabs).ToList(); var toDelete = oldTabs.Except(newTabs).ToList(); if (oldTabs.Count == 0) { foreach (var item in newTabs) { var insertNew = new ManageTab() { TabID = Convert.ToInt32(item), UserID = objModel.UserId, RoleID = null, UserSelected = true, IsActive = true }; db.ManageTabs.AddObject(insertNew); } } else if (toInsert.Count > 0) { foreach (var item in toInsert) { var insertChanged = new ManageTab() { TabID = Convert.ToInt32(item), UserID = objModel.UserId, RoleID = null, UserSelected = true, IsActive = true }; db.ManageTabs.AddObject(insertChanged); } } if (toDelete.Count > 0) { foreach (var item in toDelete) { var data = db.ManageTabs.Where( x => x.UserID == objModel.UserId && x.TabID == item && x.IsActive == true) .FirstOrDefault(); db.ManageTabs.DeleteObject(data); } } } /*if (objModel.RoleId != 0) * { * var newTabs = new List<Int32?>(objModel.Tabs); * var oldTabs = * db.ManageTabs.Where(x => x.RoleID == objModel.RoleId) * .Select(x => x.TabID) * .ToList(); * * var toInsert = newTabs.Except(oldTabs).ToList(); * var toDelete = oldTabs.Except(newTabs).ToList(); * * if (oldTabs.Count == 0) * { * foreach (var item in newTabs) * { * var insertNew = new ManageTab() * { * TabID = Convert.ToInt32(item), * RoleID = Convert.ToByte(objModel.RoleId), * UserID = null, * IsActive = true * }; * db.ManageTabs.AddObject(insertNew); * } * } * else if (toInsert.Count > 0) * { * foreach (var item in toInsert) * { * var insertChanged = new ManageTab() * { * TabID = Convert.ToInt32(item), * RoleID = Convert.ToByte(objModel.RoleId), * UserID = null, * IsActive = true * }; * db.ManageTabs.AddObject(insertChanged); * } * } * if (toDelete.Count > 0) * { * foreach (var item in toDelete) * { * var data = * db.ManageTabs.Where( * x => x.RoleID == objModel.RoleId && x.TabID == item) * .FirstOrDefault(); * db.ManageTabs.DeleteObject(data); * } * } * }*/ } else { if (objModel.UserId != 0) { var oldTabs = db.ManageTabs.Where(x => x.UserID == objModel.UserId && x.IsActive == true) .Select(x => x.TabID) .ToList(); if (oldTabs.Count > 0) { foreach (var item in oldTabs) { var data = db.ManageTabs.Where( x => x.UserID == objModel.UserId && x.TabID == item && x.IsActive == true) .FirstOrDefault(); db.ManageTabs.DeleteObject(data); } } } /* * if (objModel.RoleId != 0) * { * var oldTabs = * db.ManageTabs.Where(x => x.RoleID == objModel.RoleId) * .Select(x => x.TabID) * .ToList(); * * if (oldTabs.Count > 0) * { * foreach (var item in oldTabs) * { * var data = * db.ManageTabs.Where( * x => x.RoleID == objModel.RoleId && x.TabID == item) * .FirstOrDefault(); * db.ManageTabs.DeleteObject(data); * } * } * * } */ } db.SaveChanges(); if (objModel.TabGrids != null) { if (objModel.UserId != 0) { var newTabs = new List <Int32?>(objModel.TabGrids); var oldTabs = db.ManageTabGrids.Where(x => x.UserID == objModel.UserId) .Select(x => x.GridID) .ToList(); var toInsert = newTabs.Except(oldTabs).ToList(); var toDelete = oldTabs.Except(newTabs).ToList(); if (oldTabs.Count == 0) { foreach (var item in newTabs) { var insertNew = new ManageTabGrid() { GridID = Convert.ToInt32(item), UserID = objModel.UserId, RoleID = null, UserSelected = true, IsActive = true }; db.ManageTabGrids.AddObject(insertNew); } } else if (toInsert.Count > 0) { foreach (var item in toInsert) { var insertChanged = new ManageTabGrid() { GridID = Convert.ToInt32(item), UserID = objModel.UserId, RoleID = null, UserSelected = true, IsActive = true }; db.ManageTabGrids.AddObject(insertChanged); } } if (toDelete.Count > 0) { foreach (var item in toDelete) { var data = db.ManageTabGrids.Where( x => x.UserID == objModel.UserId && x.GridID == item) .FirstOrDefault(); db.ManageTabGrids.DeleteObject(data); } } } /* * if (objModel.RoleId != 0) * { * var newTabs = new List<Int32?>(objModel.TabGrids); * var oldTabs = * db.ManageTabGrids.Where(x => x.RoleID == objModel.RoleId) * .Select(x => x.GridID) * .ToList(); * * var toInsert = newTabs.Except(oldTabs).ToList(); * var toDelete = oldTabs.Except(newTabs).ToList(); * * if (oldTabs.Count == 0) * { * foreach (var item in newTabs) * { * var insertNew = new ManageTabGrid() * { * GridID = Convert.ToInt32(item), * RoleID = Convert.ToByte(objModel.RoleId), * UserID = null, * IsActive = true * }; * db.ManageTabGrids.AddObject(insertNew); * } * } * else if (toInsert.Count > 0) * { * foreach (var item in toInsert) * { * var insertChanged = new ManageTabGrid() * { * GridID = Convert.ToInt32(item), * RoleID = Convert.ToByte(objModel.RoleId), * UserID = null, * IsActive = true * }; * db.ManageTabGrids.AddObject(insertChanged); * } * } * if (toDelete.Count > 0) * { * foreach (var item in toDelete) * { * var data = * db.ManageTabGrids.Where( * x => x.RoleID == objModel.RoleId && x.GridID == item) * .FirstOrDefault(); * db.ManageTabGrids.DeleteObject(data); * } * } * }*/ } else { if (objModel.UserId != 0) { var oldTabs = db.ManageTabGrids.Where(x => x.UserID == objModel.UserId) .Select(x => x.GridID) .ToList(); if (oldTabs.Count > 0) { foreach (var item in oldTabs) { var data = db.ManageTabGrids.Where( x => x.UserID == objModel.UserId && x.GridID == item) .FirstOrDefault(); db.ManageTabGrids.DeleteObject(data); } } } /* * if (objModel.RoleId != 0) * { * var oldTabs = * db.ManageTabGrids.Where(x => x.RoleID == objModel.RoleId) * .Select(x => x.GridID) * .ToList(); * if (oldTabs.Count > 0) * { * foreach (var item in oldTabs) * { * var data = * db.ManageTabGrids.Where( * x => x.RoleID == objModel.RoleId && x.GridID == item) * .FirstOrDefault(); * db.ManageTabGrids.DeleteObject(data); * } * } * } */ } db.SaveChanges(); Session["TabAssigned"] = 1; } List <SelectListItem> TotalTerms = new List <SelectListItem>(); TotalTerms.AddRange(new[] { new SelectListItem() { Text = "Users", Value = "0" }, new SelectListItem() { Text = "Roles", Value = "1" }, }); /* * if (objModel.RoleId != 0) * { * objModel = new ManageTabModel { type = "1", typelist = TotalTerms }; * * } * else * { * objModel = new ManageTabModel { type = "0", typelist = TotalTerms }; * } * * objModel.Roles = GetRoles(); */ objModel.Users = GetUsers(); var Tabs = db.Master_Tab.Where(x => x.IsActive == true).Select(x => new { tabid = x.TabID, tabname = x.TabName }).ToList(); ViewBag.TabList = new SelectList(Tabs, "tabid", "tabname"); var TabGrids = db.Master_Tab_Grids.Where(x => x.IsActive == true).Select(x => new { tabid = x.GridID, tabname = x.GridName }).ToList(); ViewBag.TabGridList = new SelectList(TabGrids, "tabid", "tabname"); } catch (Exception Ex) { string actionName = this.ControllerContext.RouteData.Values["action"].ToString(); string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); ExceptionHandlingController.ExceptionDetails(Ex, actionName, controllerName); } return(View(objModel)); }
public ActionResult ManageTabWidget() { Session["TabAssigned"] = null; var objModel = new ManageTabModel(); //DSRCManagementSystem.Models.ManageGrid objmodel = new DSRCManagementSystem.Models.ManageGrid(); DSRCManagementSystem.Models.ManageTabWidget UserCounts = new DSRCManagementSystem.Models.ManageTabWidget(); // DSRCManagementSystem.Models.ManageTabWidget TabUserCount = new DSRCManagementSystem.Models.ManageTabWidget(); try { //objModel.Users = GetUsers(); //var Tabs = db.Master_Tab.Select(x => // new // { // tabid = x.TabID, // tabname = x.TabName // }).ToList(); //ViewBag.TabList = new SelectList(Tabs, "tabid", "tabname"); //var TabGrids = db.Master_Tab_Grids.Select(x => // new // { // tabid = x.GridID, // tabname = x.GridName // }).ToList(); //ViewBag.TabGridList = new SelectList(TabGrids, "tabid", "tabname"); UserCounts.GridUsers = (from t in db.Master_Tab_Grids where t.IsActive == true select new values { GridName = t.GridName, GridId = t.GridID }).ToList(); foreach (var item in UserCounts.GridUsers) { var GridUsers = (from t in db.ManageTabGrids join m in db.Master_Tab_Grids on t.GridID equals m.GridID where m.IsActive == true && t.GridID == item.GridId && t.UserID != null select new values { UserId = t.UserID }).ToList(); int k = GridUsers.Count(); item.NoofUsers = k; } UserCounts.TabUsers = (from t in db.Master_Tab where t.IsActive == true select new values { TabName = t.TabName, TabId = t.TabID, }).ToList(); foreach (var item in UserCounts.TabUsers) { var TabUsers = (from t in db.ManageTabs join m in db.Master_Tab on t.TabID equals m.TabID where m.IsActive == true && t.TabID == item.TabId && t.UserID != null select new values { UserId = t.UserID }).ToList(); int k1 = TabUsers.Count(); item.NoofUsers = k1; } } catch (Exception Ex) { string actionName = this.ControllerContext.RouteData.Values["action"].ToString(); string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString(); ExceptionHandlingController.ExceptionDetails(Ex, actionName, controllerName); } Dictionary <int, string> dict = new Dictionary <int, string>(); var getTab = db.Master_Tab.Where(x => x.IsActive == true).ToList(); foreach (var item in getTab) { dict.Add(item.TabID, item.TabName); } return(View(UserCounts)); }