public ActionResult SelectGroupFields(string hid1, GroupFieldsViewModel grpfiled) { Account accountObj = (Account)Session["account"]; var allFields = CCFieldRepository.CCFolderFields; var grpfields = allFields.Where(u => u.FolderID == grpfiled.FolderID & u.AccountGUID == accountObj.AccountGUID).ToList(); CCGroupField objgrpfield = new CCGroupField(); User userObj = (User)Session["user"]; var obj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(hid1); int i = 1; if (grpfiled.IsSave == false) { CCGroupFieldRepository.DeleteFieldsByGroup(grpfiled.GroupID); } foreach (var item in obj) { var res = grpfields.Find(field => field.FieldName == item); if (res != null) objgrpfield.FieldID = res.FieldID; objgrpfield.FieldOrder = i++; objgrpfield.FolderID = grpfiled.FolderID; objgrpfield.GroupID = grpfiled.GroupID; objgrpfield.AccountGUID = accountObj.AccountGUID; var aa = CCGroupFieldRepository.SaveGroupField(objgrpfield); } return RedirectToAction("ManageLayoutsAndGroups", "Folder", new { ID = grpfiled.FolderID }); }
public ActionResult SelectGroupFields(long ID) { GroupFieldsViewModel groupFields = new GroupFieldsViewModel(); Account accountObj = (Account)Session["account"]; // get folder ID var groupDetails = CCGroupRepository.CCGroups.Where(u => u.GroupID == ID & u.AccountGUID == accountObj.AccountGUID).FirstOrDefault(); long folderid = 0; if (groupDetails != null) { folderid = groupDetails.FolderID; } // get saved fields from groupfield table var savedFields = CCGroupFieldRepository.CCGroupsFields.Where(grp => grp.GroupID == ID & grp.AccountGUID == accountObj.AccountGUID).ToList(); // get field by Folder User userObj = (User)Session["user"]; var userToEdit = CCFieldRepository.CCFolderFields.Where(u => u.FolderID == folderid & u.AccountGUID == accountObj.AccountGUID).ToList(); var fieldsName = userToEdit; List<string> savedFieldsName = new List<string>(); foreach (var field in savedFields) { // add added fields name var resu = fieldsName.FirstOrDefault(x => x.FieldID == field.FieldID); if (resu != null) { savedFieldsName.Add(resu.FieldName); } // remove added fields userToEdit.RemoveAll(exist => exist.FieldID == field.FieldID); } var fieldsNameToAllFields = userToEdit.Select(f => f.FieldName).ToList(); groupFields.AllFields = fieldsNameToAllFields; groupFields.SavedFields = savedFieldsName; groupFields.FolderID = folderid; groupFields.GroupID = ID; if (savedFieldsName.Count == 0) groupFields.IsSave = true; else groupFields.IsSave = false; // return View(fieldsNameToAllFields); return View(groupFields); }