public void UpdateResponseGridColumnNames(FormSettingBO FormSettingBO, string FormId) { Guid Id = new Guid(FormId); try { using (var Context = DataObjectFactory.CreateContext()) { IQueryable <ResponseDisplaySetting> ColumnList = Context.ResponseDisplaySettings.Where(x => x.FormId == Id); //Delete old columns foreach (var item in ColumnList) { Context.ResponseDisplaySettings.DeleteObject(item); } Context.SaveChanges(); //insert new columns ResponseDisplaySetting ResponseDisplaySettingEntity = new ResponseDisplaySetting(); foreach (var item in FormSettingBO.ResponseGridColumnNameList) { ResponseDisplaySettingEntity = Mapper.ToColumnName(item, Id); Context.AddToResponseDisplaySettings(ResponseDisplaySettingEntity); } Context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }
public static ResponseDisplaySetting Map(string FormId, int i, string Column) { ResponseDisplaySetting ResponseDisplaySetting = new ResponseDisplaySetting(); ResponseDisplaySetting.FormId = new Guid(FormId); ResponseDisplaySetting.ColumnName = Column; ResponseDisplaySetting.SortOrder = i; return(ResponseDisplaySetting); }
public void InsertFormdefaultSettings(string FormId, bool IsSqlProject, List <string> ControlsNameList) { try { //Delete old columns using (var Context = DataObjectFactory.CreateContext()) { Guid Id = new Guid(FormId); IQueryable <ResponseDisplaySetting> ColumnList = Context.ResponseDisplaySettings.Where(x => x.FormId == Id); foreach (var item in ColumnList) { Context.ResponseDisplaySettings.Remove(item); } Context.SaveChanges(); } // Adding new columns List <string> ColumnNames = new List <string>(); if (!IsSqlProject) { ColumnNames = MetaDaTaColumnNames(); } else { ColumnNames = ControlsNameList; } int i = 1; foreach (string Column in ColumnNames) { using (var Context = DataObjectFactory.CreateContext()) { ResponseDisplaySetting SettingEntity = Mapper.Map(FormId, i, Column); Context.ResponseDisplaySettings.Add(SettingEntity); Context.SaveChanges(); } i++; } } catch (Exception ex) { throw (ex); } }
public FormSettingBO GetFormSettings(string formId, int currentOrgId, bool userAndOrgInfoOnly) { FormSettingBO formSettingBO = new FormSettingBO { FormId = formId }; Dictionary <int, string> availableUsers = new Dictionary <int, string>(); Dictionary <int, string> selectedUsers = new Dictionary <int, string>(); Dictionary <int, string> availableOrgs = new Dictionary <int, string>(); Dictionary <int, string> selectedOrgs = new Dictionary <int, string>(); try { Guid id = new Guid(formId); using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData selectedUserQuery = Context.SurveyMetaDatas.First(x => x.SurveyId == id); var selectedOrgId = currentOrgId; var query = (from user in selectedUserQuery.Users join userorg in Context.UserOrganizations on user.UserID equals userorg.UserID where userorg.Active == true && userorg.OrganizationID == selectedOrgId select user).Distinct().OrderBy(user => user.UserName); foreach (var user in query) { selectedUsers.Add(user.UserID, user.UserName); } formSettingBO.AssignedUserList = selectedUsers; // --------------------------------------------------------------------------------------------- \\ var userQuery = (from user in Context.Users join userorg in Context.UserOrganizations on user.UserID equals userorg.UserID where userorg.Active == true && userorg.OrganizationID == selectedOrgId //orderby user.UserName select user).Distinct().OrderBy(user => user.UserName); foreach (var user in userQuery) { if (!selectedUsers.ContainsValue(user.UserName) && user.UserID != selectedUserQuery.OwnerId) { availableUsers.Add(user.UserID, user.UserName); } } formSettingBO.UserList = availableUsers; // --------------------------------------------------------------------------------------------- \\ //// Select Orgnization list var OrganizationQuery = Context.Organizations.Where(c => c.SurveyMetaDatas.Any(a => a.SurveyId == id)).ToList(); foreach (var org in OrganizationQuery) { selectedOrgs.Add(org.OrganizationId, org.Organization1); } formSettingBO.SelectedOrgList = selectedOrgs; // --------------------------------------------------------------------------------------------- \\ //// Available Organization list IQueryable <Organization> OrganizationList = Context.Organizations.ToList().AsQueryable(); foreach (var Org in OrganizationList) { if (!selectedOrgs.ContainsValue(Org.Organization1) && Org.IsEnabled == true) { availableOrgs.Add(Org.OrganizationId, Org.Organization1); } } formSettingBO.AvailableOrgList = availableOrgs; // --------------------------------------------------------------------------------------------- \\ if (!userAndOrgInfoOnly) { //// Response Grid Column Name List Dictionary <int, string> ColumnNameList = new Dictionary <int, string>(); var Query = from response in Context.ResponseDisplaySettings where response.FormId == id select response; var DataRow = Query; // If there are no grid display columns currently defined // then initialize the list to the first 5 fields in the form. if (DataRow.Count() == 0) { var sortOrder = 1; var responseGridColumnNames = GetFieldDigests(formId) .Where(f => !FieldDigest.NonDataFieldTypes.Any(t => t == f.FieldType)) .Take(5) .Select(f => ResponseDisplaySetting.CreateResponseDisplaySetting(id, f.TrueCaseFieldName, sortOrder++)); foreach (var responseDisplaySetting in responseGridColumnNames) { Context.AddToResponseDisplaySettings(responseDisplaySetting); ColumnNameList.Add(responseDisplaySetting.SortOrder, responseDisplaySetting.ColumnName); } Context.SaveChanges(); } else { foreach (var Row in DataRow) { ColumnNameList.Add(Row.SortOrder, Row.ColumnName); } } formSettingBO.ResponseGridColumnNameList = ColumnNameList; // --------------------------------------------------------------------------------------------- \\ //// Selected Data Access Rule Id var MetaData = from r in Context.SurveyMetaDatas where r.SurveyId == id select new { Id = r.DataAccessRuleId }; var selectedDataAccessRuleId = int.Parse(MetaData.First().Id.ToString()); formSettingBO.SelectedDataAccessRule = selectedDataAccessRuleId; // --------------------------------------------------------------------------------------------- \\ //// Data Access Rules Dictionary <int, string> DataAccessRuleIds = new Dictionary <int, string>(); Dictionary <string, string> DataAccessRuleDescription = new Dictionary <string, string>(); DataAccessessRulesHelper.GetDataAccessRules(out DataAccessRuleIds, out DataAccessRuleDescription); formSettingBO.DataAccessRuleIds = DataAccessRuleIds; formSettingBO.DataAccessRuleDescription = DataAccessRuleDescription; //IQueryable<DataAccessRule> RuleIDs = Context.DataAccessRules.ToList().AsQueryable(); //foreach (var Rule in RuleIDs) //{ // DataAccessRuleIds.Add(Rule.RuleId, Rule.RuleName); // DataAccessRuleDescription.Add(Rule.RuleName, Rule.RuleDescription); //} // --------------------------------------------------------------------------------------------- \\ //// All Column Names From MetadataAccessor int k = 1; formSettingBO.FormControlNameList = GetAllColumnNames(formId).ToDictionary(key => k++, value => value); } } } catch (Exception ex) { throw (ex); } return(formSettingBO); }