public ActionResult SelectLayoutGroups(string groups, LayoutGroupsViewModel objLayoutField) { Account accountObj = (Account)Session["account"]; // get Groups by Folder var layoutGroup = CCGroupRepository.CCGroups .Where(u => u.FolderID == objLayoutField.FolderID & u.AccountGUID == accountObj.AccountGUID).ToList(); CCLayoutGroup objLayoutGroup = new CCLayoutGroup(); User userObj = (User)Session["user"]; var objgroups = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(groups); int i = 1; if (objLayoutField.IsSave == false) { CCLayoutGroupRepository.DeleteLayoutGroupsByLayoutID(objLayoutField.LayoutID); } foreach (var item in objgroups) { // objLayoutGroup.AccountID = userObj.AccountID; var res = layoutGroup.Find(field => field.GroupName == item); if (res != null) objLayoutGroup.GroupID = res.GroupID; objLayoutGroup.GroupOrder = i++; objLayoutGroup.FolderID = objLayoutField.FolderID; objLayoutGroup.LayoutID = objLayoutField.LayoutID; objLayoutGroup.AccountGUID = accountObj.AccountGUID; var aa = CCLayoutGroupRepository.SavelayoutGroup(objLayoutGroup); } return RedirectToAction("ManageLayoutsAndGroups", "Folder", new { ID = objLayoutField.FolderID }); }
public ActionResult SelectLayoutGroups(long ID) { LayoutGroupsViewModel _vl = new LayoutGroupsViewModel(); Account accountObj = (Account)Session["account"]; // get folder ID var alllayouts = CCLayoutRepository.CCLayouts; var layoutdetails = alllayouts.FirstOrDefault(u => u.LayoutID == ID & u.AccountGUID == accountObj.AccountGUID); long folderid = 0; if (layoutdetails != null) { folderid = layoutdetails.FolderID; } // get saved Groups from layoutgroup table var allGroupsByLayout = CCLayoutGroupRepository.CCLayoutGroups; var savedGroups = allGroupsByLayout.Where(layout => layout.LayoutID == ID & layout.AccountGUID == accountObj.AccountGUID).ToList(); // get Groups by Folder var allGroups = CCGroupRepository.CCGroups; var userToEdit = allGroups.Where(u => u.FolderID == folderid & u.AccountGUID == accountObj.AccountGUID).ToList(); var groupname = userToEdit; List<string> savedgroupssname = new List<string>(); foreach (var group in savedGroups) { // add added fields name var resu = groupname.FirstOrDefault(x => x.GroupID == group.GroupID); if (resu != null) { savedgroupssname.Add(resu.GroupName); } // remove added fields userToEdit.RemoveAll(exist => exist.GroupID == group.GroupID); } var groupNamesToAllGroups = userToEdit.Select(f => f.GroupName).ToList(); _vl.FolderID = folderid; _vl.LayoutID = ID; _vl.AllGroups = groupNamesToAllGroups; _vl.SavedGroups = savedgroupssname; if (savedgroupssname.Count == 0) _vl.IsSave = true; else _vl.IsSave = false; return View(_vl); }