/// <summary> /// Updates a SurveyInfo. /// </summary> /// <param name="SurveyInfo">SurveyInfo.</param> public void UpdateSurveyInfo(SurveyInfoBO SurveyInfo) { try { Guid Id = new Guid(SurveyInfo.SurveyId); //Update Survey using (var Context = DataObjectFactory.CreateContext()) { //var Query = from response in Context.SurveyMetaDatas // where response.SurveyId == Id // select response; //var DataRow = Query.Single(); //DataRow = Mapper.ToEF(SurveyInfo); SurveyMetaData Row = Context.SurveyMetaDatas.First(x => x.SurveyId == Id); Row.IsSQLProject = SurveyInfo.IsSqlProject; Row.TemplateXML = SurveyInfo.XML; Row.IsDraftMode = SurveyInfo.IsDraftMode; Row.IsShareable = SurveyInfo.IsShareable; Row.DataAccessRuleId = SurveyInfo.DataAccessRuleId; Context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }
public List <CacheDependencyBO> GetCacheDependencyInfo(List <string> surveyKeys) { List <CacheDependencyBO> result = new List <CacheDependencyBO>(); if (surveyKeys.Count > 0) { try { foreach (string key in surveyKeys) { Guid guid = new Guid(key); using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData surveyMetaDatas = Context.SurveyMetaDatas.FirstOrDefault(x => x.SurveyId == guid); CacheDependencyBO cacheDependencyBO = Mapper.MapDependency(surveyMetaDatas); result.Add(cacheDependencyBO); } } } catch (Exception ex) { throw (ex); } } return(result); }
/// <summary> /// Maps SurveyMetaData entity to SurveyInfoBO business object. /// </summary> /// <param name="entity">A SurveyMetaData entity to be transformed.</param> /// <returns>A SurveyInfoBO business object.</returns> public static SurveyInfoBO Map(SurveyMetaData entity) { SurveyInfoBO result = new SurveyInfoBO(); result.SurveyId = entity.SurveyId.ToString(); result.SurveyName = entity.SurveyName; result.SurveyNumber = entity.SurveyNumber; result.IntroductionText = entity.IntroductionText; result.ExitText = entity.ExitText; result.OrganizationName = entity.OrganizationName; result.DepartmentName = entity.DepartmentName; result.ClosingDate = entity.ClosingDate; result.DateCreated = entity.DateCreated; result.IsDraftMode = entity.IsDraftMode; result.StartDate = entity.StartDate; result.IsSqlProject = (bool)entity.IsSQLProject; result.OwnerId = entity.OwnerId; if (entity.UserPublishKey != null) { // result.UserPublishKey = (Guid)entity.UserPublishKey.Value; result.UserPublishKey = entity.UserPublishKey; } result.SurveyType = entity.SurveyTypeId; result.ParentFormId = entity.ParentId.ToString(); if (entity.ViewId != null) { result.ViewId = (int)entity.ViewId; } //result. = (bool)entity.ShowAllRecords; result.IsShareable = (bool)entity.IsShareable; return(result); }
/// <summary> /// Maps SurveyInfoBO business object to SurveyMetaData entity. /// </summary> /// <param name="businessobject">A SurveyInfoBO business object.</param> /// <returns>A SurveyMetaData entity.</returns> public static SurveyMetaData Map(SurveyInfoBO businessobject) { SurveyMetaData SurveyMetaData = new SurveyMetaData(); SurveyMetaData.SurveyId = new Guid(businessobject.SurveyId); SurveyMetaData.SurveyName = businessobject.SurveyName; SurveyMetaData.SurveyNumber = businessobject.SurveyNumber; SurveyMetaData.TemplateXML = businessobject.XML; SurveyMetaData.IntroductionText = businessobject.IntroductionText; SurveyMetaData.ExitText = businessobject.ExitText; SurveyMetaData.OrganizationName = businessobject.OrganizationName; SurveyMetaData.DepartmentName = businessobject.DepartmentName; SurveyMetaData.ClosingDate = businessobject.ClosingDate; SurveyMetaData.UserPublishKey = businessobject.UserPublishKey; SurveyMetaData.SurveyTypeId = businessobject.SurveyType; SurveyMetaData.TemplateXMLSize = businessobject.TemplateXMLSize; SurveyMetaData.DateCreated = businessobject.DateCreated; SurveyMetaData.IsDraftMode = businessobject.IsDraftMode; SurveyMetaData.StartDate = businessobject.StartDate; // SurveyMetaData.OwnerId = businessobject.OwnerId; SurveyMetaData.ViewId = businessobject.ViewId; SurveyMetaData.IsSQLProject = businessobject.IsSqlProject; // SurveyMetaData.IsShareable = businessobject.IsShareable; // SurveyMetaData.DataAccessRuleId = businessobject.DataAccessRuleId; // SurveyMetaData.DataAccessRuleId = businessobject.; if (!string.IsNullOrEmpty(businessobject.ParentId)) { SurveyMetaData.ParentId = new Guid(businessobject.ParentId); } return(SurveyMetaData); }
public List <UserBO> GetOrgAdminsByFormId(string FormId) { List <UserBO> BoList = new List <UserBO>(); Dictionary <int, string> GetOrgAdmins = new Dictionary <int, string>(); Guid Id = new Guid(FormId); try { using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData Response = Context.SurveyMetaDatas.First(x => x.SurveyId == Id); var _Org = new HashSet <int>(Response.Organizations.Select(x => x.OrganizationId)); var Orgs = Context.Organizations.Where(t => _Org.Contains(t.OrganizationId)).ToList(); foreach (var Org in Orgs) { var AdminList = Context.UserOrganizations.Where(x => x.OrganizationID == Org.OrganizationId && x.RoleId == 2 && x.Active == true); foreach (var Admin in AdminList) { UserBO UserBO = new UserBO(); UserBO.EmailAddress = Admin.User.EmailAddress; UserBO.UserId = Admin.User.UserID; BoList.Add(UserBO); } } } } catch (Exception ex) { throw (ex); } return(BoList); }
private static List <KeyValuePair <int, string> > GetSharedForms(int CurrentOrgId, OSELS_EWEEntities Context) { List <KeyValuePair <int, string> > Shared = new List <KeyValuePair <int, string> >(); IQueryable <SurveyMetaData> AllForms1 = Context.SurveyMetaDatas.Where(x => x.ParentId == null && x.Organizations.Any(r => r.OrganizationId == CurrentOrgId) ).Distinct(); foreach (var form in AllForms1) { // checking if the form is shared with any organization SurveyMetaData Response = Context.SurveyMetaDatas.First(x => x.SurveyId == form.SurveyId); var _Org = new HashSet <int>(Response.Organizations.Select(x => x.OrganizationId)); var Orgs = Context.Organizations.Where(t => _Org.Contains(t.OrganizationId)).ToList(); //if form is shared if (Orgs.Count > 0) { foreach (var org in Orgs) { KeyValuePair <int, string> Item = new KeyValuePair <int, string>(org.OrganizationId, form.SurveyId.ToString()); Shared.Add(Item); } } } return(Shared); }
/// <summary> /// Maps SurveyMetaData entity to FormInfoBO business object. /// </summary> /// <param name="entity">A SurveyMetaData entity to be transformed.</param> /// <returns>A FormInfoBO business object.</returns> public static FormInfoBO MapToFormInfoBO(SurveyMetaData entity, User UserEntity) { FormInfoBO result = new FormInfoBO(); result.IsSQLProject = (entity.IsSQLProject == null) ? false : (bool)entity.IsSQLProject; result.FormId = entity.SurveyId.ToString(); result.FormName = entity.SurveyName; result.FormNumber = entity.SurveyNumber; result.OrganizationName = entity.OrganizationName; result.OrganizationId = entity.OrganizationId; result.IsDraftMode = entity.IsDraftMode; result.UserId = entity.OwnerId; if (entity.IsShareable != null) { result.IsShareable = (bool)entity.IsShareable; } if (entity.DataAccessRuleId != null) { // result. = entity.DataAccessRuleId; } result.OwnerFName = UserEntity.FirstName; result.OwnerLName = UserEntity.LastName; result.ParentFormId = entity.ParentId.ToString(); return(result); }
public void UpdateSettingsList(FormSettingBO formSettingBO, string formId, int CurrentOrg = -1) { Guid id = new Guid(formId); try { using (var context = DataObjectFactory.CreateContext()) { SurveyMetaData response = context.SurveyMetaDatas.First(x => x.SurveyId == id); //Remove old Users var userHashSet = new HashSet <string>(response.Users.Select(x => x.UserName)); var users = context.Users.Where(t => userHashSet.Contains(t.UserName)).ToList(); foreach (User user in users) { if (user.UserOrganizations.Where(x => x.OrganizationID == CurrentOrg).Count() > 0) { response.Users.Remove(user); } } context.SaveChanges(); //insert new users foreach (var item in formSettingBO.AssignedUserList) { User User = context.Users.FirstOrDefault(x => x.UserName == item.Value); response.Users.Add(User); } context.SaveChanges(); //Remove old Orgs var orgHashSet = new HashSet <int>(response.Organizations.Select(x => x.OrganizationId)); var orgs = context.Organizations.Where(t => orgHashSet.Contains(t.OrganizationId)).ToList(); foreach (Organization org in orgs) { response.Organizations.Remove(org); } context.SaveChanges(); //insert new Orgs List <User> orgAdmins = new List <User>(); foreach (var item in formSettingBO.SelectedOrgList) { int orgId = int.Parse(item.Value); Organization org = context.Organizations.FirstOrDefault(x => x.OrganizationId == orgId); response.Organizations.Add(org); } context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }
public static void Map(SurveyMetaData entity, out CacheDependencyBO cacheDependencyBO) { cacheDependencyBO = new CacheDependencyBO(); cacheDependencyBO.SurveyId = entity.SurveyId.ToString(); if (entity.LastUpdate == null) { entity.LastUpdate = entity.DateCreated; } cacheDependencyBO.LastUpdate = (DateTime)entity.LastUpdate; }
public static CacheDependencyBO MapDependency(SurveyMetaData entity) { CacheDependencyBO cacheDependencyBO = new CacheDependencyBO(); cacheDependencyBO.SurveyId = entity.SurveyId.ToString(); if (entity.LastUpdate != null) { cacheDependencyBO.LastUpdate = (DateTime)entity.LastUpdate; } return(cacheDependencyBO); }
public static FormInfoBO ToFormInfoBO(SurveyMetaData entity) { return(new FormInfoBO { FormId = entity.SurveyId.ToString(), FormNumber = entity.SurveyNumber, FormName = entity.SurveyName, OrganizationName = entity.OrganizationName, OrganizationId = entity.OrganizationId, IsDraftMode = entity.IsDraftMode, UserId = entity.OwnerId, ParentFormId = (entity.ParentId != null) ? entity.ParentId.ToString() : "" }); }
public List <UserBO> GetUserByFormId(string FormId) { Guid id = new Guid(FormId); List <UserBO> UserList = new List <UserBO>(); UserBO UserBO = new UserBO(); using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData SelectedUserQuery = Context.SurveyMetaDatas.First(x => x.SurveyId == id); IQueryable <User> Users = SelectedUserQuery.Users.AsQueryable(); foreach (User user in Users) { UserList.Add(Mapper.MapToUserBO(user)); } } return(UserList); }
internal static SurveyMetaData ToEF(SurveyInfoBO SurveyInfo) { SurveyMetaData DataRow = new SurveyMetaData(); DataRow.SurveyName = SurveyInfo.SurveyName; DataRow.SurveyNumber = SurveyInfo.SurveyNumber; DataRow.TemplateXML = SurveyInfo.XML; DataRow.IntroductionText = SurveyInfo.IntroductionText; DataRow.ExitText = SurveyInfo.ExitText; DataRow.OrganizationName = SurveyInfo.OrganizationName; DataRow.DepartmentName = SurveyInfo.DepartmentName; DataRow.ClosingDate = SurveyInfo.ClosingDate; DataRow.SurveyTypeId = SurveyInfo.SurveyType; DataRow.UserPublishKey = SurveyInfo.UserPublishKey; DataRow.TemplateXMLSize = RemoveWhitespace(SurveyInfo.XML).Length; DataRow.IsDraftMode = SurveyInfo.IsDraftMode; DataRow.StartDate = SurveyInfo.StartDate; return(DataRow); }
/// <summary> /// Maps SurveyMetaData entity to SurveyInfoBO business object. /// </summary> /// <param name="entity">A SurveyMetaData entity to be transformed.</param> /// <returns>A SurveyInfoBO business object.</returns> public static SurveyInfoBO Map(SurveyMetaData entity) { SurveyInfoBO result = new SurveyInfoBO(); result.SurveyId = entity.SurveyId.ToString(); result.SurveyName = entity.SurveyName; result.SurveyNumber = entity.SurveyNumber; result.XML = entity.TemplateXML; result.IntroductionText = entity.IntroductionText; result.ExitText = entity.ExitText; result.OrganizationName = entity.OrganizationName; result.DepartmentName = entity.DepartmentName; result.ClosingDate = entity.ClosingDate; result.TemplateXMLSize = (long)entity.TemplateXMLSize; result.DateCreated = entity.DateCreated; result.IsDraftMode = entity.IsDraftMode; result.StartDate = entity.StartDate; if (entity.IsSQLProject != null) { result.IsSqlProject = (bool)entity.IsSQLProject; } result.OrganizationId = entity.OrganizationId; try { result.OrganizationKey = Guid.Parse(Common.Security.Cryptography.Decrypt(entity.Organization.OrganizationKey.ToString())); } catch (Exception ex) {} // result.OwnerId = entity.OwnerId; if (entity.UserPublishKey != null) { // result.UserPublishKey = (Guid)entity.UserPublishKey.Value; result.UserPublishKey = entity.UserPublishKey; } result.SurveyType = entity.SurveyTypeId; result.ParentId = entity.ParentId.ToString(); if (entity.ViewId != null) { result.ViewId = (int)entity.ViewId; } //result. = (bool)entity.ShowAllRecords; // result.IsShareable = (bool)entity.IsShareable; return(result); }
public FormInfoBO GetFormByFormId(string FormId) { FormInfoBO FormInfoBO = new FormInfoBO(); try { Guid Id = new Guid(FormId); using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData SurveyMetaData = Context.SurveyMetaDatas.Single(x => x.SurveyId == Id); FormInfoBO = Mapper.ToFormInfoBO(SurveyMetaData); } } catch (Exception ex) { throw (ex); } return(FormInfoBO); }
public List <UserBO> GetOrgAdminsByFormId(string formId) { // TODO: Refactor to remove dependency on SurveyMetadatas List <UserBO> boList = new List <UserBO>(); Dictionary <int, string> orgAdmins = new Dictionary <int, string>(); Guid id = new Guid(formId); try { using (var context = DataObjectFactory.CreateContext()) { SurveyMetaData Response = context.SurveyMetaDatas.First(x => x.SurveyId == id); var orgHashSet = new HashSet <int>(Response.Organizations.Select(x => x.OrganizationId)); var orgs = context.Organizations.Where(t => orgHashSet.Contains(t.OrganizationId)).ToList(); foreach (var org in orgs) { var adminList = context.UserOrganizations.Where(x => x.OrganizationID == org.OrganizationId && x.RoleId == Roles.Administrator && x.Active == true); foreach (var admin in adminList) { UserBO userBO = new UserBO(); userBO.EmailAddress = admin.User.EmailAddress; userBO.UserId = admin.User.UserID; boList.Add(userBO); } } } } catch (Exception ex) { throw (ex); } return(boList); }
public FormSettingBO GetFormSettings(string FormId, int CurrentOrgId, bool FormInfoOnly) { FormSettingBO FormSettingBO = new FormSettingBO(); Dictionary <int, string> ColumnNameList = new Dictionary <int, string>(); 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>(); Dictionary <int, string> DataAccessRuleIds = new Dictionary <int, string>(); Dictionary <string, string> DataAccessRuleDescription = new Dictionary <string, string>(); int selectedDataAccessRuleId; try { Guid id = new Guid(FormId); using (var Context = DataObjectFactory.CreateContext()) { var Query = from response in Context.ResponseDisplaySettings where response.FormId == id select response; var DataRow = Query; foreach (var Row in DataRow) { ColumnNameList.Add(Row.SortOrder, Row.ColumnName); } if (!FormInfoOnly) { //var SelectedUserQuery = from FormInfo in Context.SurveyMetaDatas // join UserInfo in Context.Users // on FormInfo.OwnerId equals UserInfo.UserID // into temp // from UserInfo in temp.DefaultIfEmpty() // where FormInfo.SurveyId == id // select new { FormInfo, UserInfo }; SurveyMetaData SelectedUserQuery = Context.SurveyMetaDatas.First(x => x.SurveyId == id); // var SelectedOrgId = SelectedUserQuery.OrganizationId; 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 // orderby user.UserName select user).Distinct().OrderBy(user => user.UserName); // IEnumerable<User> Users = SelectedUserQuery.Users; foreach (var user in query) { SelectedUsers.Add(user.UserID, user.UserName); } //foreach (var Selecteduser in SelectedUserQuery) // { // SelectedUsers.Add(Selecteduser.UserInfo.UserID, Selecteduser.UserInfo.UserName); // } 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); } } //// 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); } //// Available Orgnization 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); } } } //// Select DataAccess Rule Ids list // var MetaData = Context.SurveyMetaDatas.Where(a => a.SurveyId == id).Select(u => u.DataAccessRuleId); ; var MetaData = from r in Context.SurveyMetaDatas where r.SurveyId == id select new { Id = r.DataAccessRuleId, }; selectedDataAccessRuleId = int.Parse(MetaData.First().Id.ToString()); //// Available DataAccess Rule Ids list IQueryable <DataAccessRule> RuleIDs = Context.DataAccessRules.ToList().AsQueryable(); foreach (var Rule in RuleIDs) { DataAccessRuleIds.Add(Rule.RuleId, Rule.RuleName); DataAccessRuleDescription.Add(Rule.RuleName, Rule.RuleDescription); } FormSettingBO.ColumnNameList = ColumnNameList; FormSettingBO.UserList = AvailableUsers; FormSettingBO.AssignedUserList = SelectedUsers; FormSettingBO.AvailableOrgList = AvailableOrgs; FormSettingBO.SelectedOrgList = SelectedOrgs; FormSettingBO.DataAccessRuleIds = DataAccessRuleIds; FormSettingBO.SelectedDataAccessRule = selectedDataAccessRuleId; FormSettingBO.DataAccessRuleDescription = DataAccessRuleDescription; } } catch (Exception ex) { throw (ex); } return(FormSettingBO); }
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); }
public void UpDateSettingsList(FormSettingBO FormSettingBO, string FormId, int CurrentOrg = -1) { Guid Id = new Guid(FormId); try { using (var Context = DataObjectFactory.CreateContext()) { SurveyMetaData Response = Context.SurveyMetaDatas.First(x => x.SurveyId == Id); //Remove old Users var _User = new HashSet <string>(Response.Users.Select(x => x.UserName)); var Users = Context.Users.Where(t => _User.Contains(t.UserName)).ToList(); foreach (User user in Users) { if (user.UserOrganizations.Where(x => x.OrganizationID == CurrentOrg).Count() > 0) { Response.Users.Remove(user); } } Context.SaveChanges(); //insert new users foreach (var item in FormSettingBO.AssignedUserList) { User User = Context.Users.FirstOrDefault(x => x.UserName == item.Value); Response.Users.Add(User); } Context.SaveChanges(); //Remove old Orgs var _Org = new HashSet <int>(Response.Organizations.Select(x => x.OrganizationId)); var Orgs = Context.Organizations.Where(t => _Org.Contains(t.OrganizationId)).ToList(); foreach (Organization org in Orgs) { Response.Organizations.Remove(org); } Context.SaveChanges(); //insert new Orgs List <User> OrgAdmis = new List <User>(); foreach (var item in FormSettingBO.SelectedOrgList) { int OrgId = int.Parse(item.Value); Organization Org = Context.Organizations.FirstOrDefault(x => x.OrganizationId == OrgId); Response.Organizations.Add(Org); } Context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }