public void UpdateFormMode(FormInfoBO formInfoBO, FormSettingBO formSettingBO = null) { try { Guid id = new Guid(formInfoBO.FormId); //Update Form Mode using (var context = DataObjectFactory.CreateContext()) { var query = from response in context.SurveyMetaDatas where response.SurveyId == id select response; var dataRow = query.Single(); dataRow.IsDraftMode = formInfoBO.IsDraftMode; dataRow.IsShareable = formInfoBO.IsShareable; dataRow.DataAccessRuleId = formInfoBO.DataAccesRuleId; context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }
public void UpdateColumnNames(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.ColumnNameList) { ResponseDisplaySettingEntity = Mapper.ToColumnName(item, Id); context.AddToResponseDisplaySettings(ResponseDisplaySettingEntity); } context.SaveChanges(); } } catch (Exception ex) { throw (ex); } }
public FormSettingBO GetFormSettings() { FormSettingBO formSettingBO = new FormSettingBO(); Dictionary <int, string> dataAccessRuleIds = new Dictionary <int, string>(); Dictionary <string, string> dataAccessRuleDescription = new Dictionary <string, string>(); int selectedDataAccessRuleId = -1;; try { using (var context = DataObjectFactory.CreateContext()) { //// 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.SelectedDataAccessRule = selectedDataAccessRuleId; formSettingBO.DataAccessRuleDescription = dataAccessRuleDescription; formSettingBO.DataAccessRuleIds = dataAccessRuleIds; } } 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 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 FormSettingBO GetDataAccessRules(FormSettingBO formSettingBO) { Dictionary <int, string> dataAccessRuleIds = new Dictionary <int, string>(); Dictionary <string, string> dataAccessRuleDescriptions = new Dictionary <string, string>(); GetDataAccessRules(out dataAccessRuleIds, out dataAccessRuleDescriptions); formSettingBO.DataAccessRuleDescription = dataAccessRuleDescriptions; formSettingBO.DataAccessRuleIds = dataAccessRuleIds; return(formSettingBO); }
public void UpdateResponseGridColumnNames(FormSettingBO formSettingBO, string formId) { var responseGridColumnSettingsList = formSettingBO.ResponseGridColumnNameList .Select(n => new ResponseGridColumnSettings { ColumnName = n.Value, SortOrder = n.Key, FormId = formId }) .ToList(); UpdateResponseDisplaySettings(formId, responseGridColumnSettingsList); }
public static FormSettingBO ToFormSettingBO(this FormSettings formSettings, FormSettingBO formSettingBO = null) { if (formSettingBO == null) { formSettingBO = new FormSettingBO(); } formSettingBO.FormId = formSettings.FormId; formSettingBO.SelectedDataAccessRule = formSettings.DataAccessRuleId; formSettingBO.IsDisabled = formSettings.IsDisabled; formSettingBO.IsShareable = formSettings.IsShareable; formSettingBO.ResponseGridColumnNameList = formSettings.ResponseDisplaySettings.ToDictionary(k => k.SortOrder, v => v.ColumnName); return(formSettingBO); }
// public string SaveSettings(bool IsDraftMode, Dictionary<int, string> ColumnNameList, Dictionary<int, string> AssignedUserList, string FormId, Dictionary<int, string> SelectedOrgList, bool IsShareable) public string SaveSettings(bool IsDraftMode, FormSettingDTO FormSettingDTO, int CurrentOrg = -1) { string Message = ""; FormSettingBO FormSettingBO = new FormSettingBO { FormId = FormSettingDTO.FormId }; // FormSettingBO.ColumnNameList = FormSettingDTO.ColumnNameList; FormSettingBO.AssignedUserList = FormSettingDTO.AssignedUserList; FormSettingBO.SelectedOrgList = FormSettingDTO.SelectedOrgList; FormSettingBO.DeleteDraftData = FormSettingDTO.DeleteDraftData; //FormInfoBO FormInfoBO = new FormInfoBO(); //FormInfoBO.FormId = FormSettingDTO.FormId; //FormInfoBO.IsDraftMode =IsDraftMode; //FormInfoBO.IsShareable = FormSettingDTO.IsShareable; try { List <UserBO> FormCurrentUsersList = _userDao.GetUserByFormId(FormSettingDTO.FormId); //FormSettingDao.UpDateColumnNames(FormSettingBO, FormSettingDTO.FormId); // FormSettingDao.UpDateFormMode(FormInfoBO); Dictionary <int, string> AssignedOrgAdminList = _formSettingDao.GetOrgAdmins(FormSettingDTO.SelectedOrgList); // about to share with List <UserBO> CurrentOrgAdminList = _formSettingDao.GetOrgAdminsByFormId(FormSettingDTO.FormId); // shared with _formSettingDao.UpDateSettingsList(FormSettingBO, FormSettingDTO.FormId, CurrentOrg); // Clear all Draft records if (FormSettingDTO.DeleteDraftData) { _formSettingDao.DeleteDraftRecords(FormSettingDTO.FormId); } List <UserBO> AdminList = _userDao.GetAdminsBySelectedOrgs(FormSettingBO, FormSettingDTO.FormId); if (ConfigurationManager.AppSettings["SEND_EMAIL_TO_ASSIGNED_USERS"].ToUpper() == "TRUE" && FormSettingDTO.AssignedUserList.Count() > 0) { SendEmail(FormSettingDTO.AssignedUserList, FormSettingDTO.FormId, FormCurrentUsersList); } // Send Email to organization admin when a form is shared with that organization SendEmail(AssignedOrgAdminList, FormSettingDTO.FormId, CurrentOrgAdminList, true); Message = "Success"; } catch (Exception Ex) { Message = "Error"; throw Ex; } return(Message); }
public void UpdateFormMode(FormInfoBO formInfoBO, FormSettingBO formSettingBO = null) { var formId = formInfoBO.FormId; if (string.IsNullOrEmpty(formInfoBO.FormName)) { formInfoBO.FormName = _metadataAccessor.GetFormDigest(formId).FormName; } var formSettings = formInfoBO.ToFormSettings(); if (formSettingBO != null) { formSettings.ResponseDisplaySettings = formSettingBO.ResponseGridColumnNameList.OrderBy(k => k.Key) .Select(kvp => new ResponseGridColumnSettings { FormId = formId, ColumnName = kvp.Value, SortOrder = kvp.Key }) .ToList(); } _formResponseCRUD.UpdateFormSettings(formSettings); // Temporarily update WebEnter tables too _formSettingDao_EF.UpdateFormMode(formInfoBO); #if false try { Guid id = new Guid(formInfoBO.FormId); //Update Form Mode using (var context = DataObjectFactory.CreateContext()) { var query = from response in context.SurveyMetaDatas where response.SurveyId == id select response; var dataRow = query.Single(); dataRow.IsDraftMode = formInfoBO.IsDraftMode; dataRow.IsShareable = formInfoBO.IsShareable; dataRow.DataAccessRuleId = formInfoBO.DataAccesRuleId; context.SaveChanges(); } } catch (Exception ex) { throw (ex); } #endif }
public FormSettingBO GetFormSettings() { FormSettingBO formSettingBO = new FormSettingBO(); try { formSettingBO = DataAccessessRulesHelper.GetDataAccessRules(formSettingBO); } catch (Exception ex) { throw (ex); } return(formSettingBO); }
public string SaveSettings(bool isDraftMode, FormSettingDTO formSettingDTO, int CurrentOrg = -1) { var formId = formSettingDTO.FormId; var isShareable = formSettingDTO.IsShareable; var dataAccessRuleId = formSettingDTO.SelectedDataAccessRule; string message = ""; FormSettingBO formSettingBO = new FormSettingBO { FormId = formId }; formSettingBO.AssignedUserList = formSettingDTO.AssignedUserList; formSettingBO.SelectedOrgList = formSettingDTO.SelectedOrgList; formSettingBO.DeleteDraftData = formSettingDTO.DeleteDraftData; try { List <UserBO> formCurrentUsersList = _userDao.GetUserByFormId(formSettingDTO.FormId); Dictionary <int, string> assignedOrgAdminList = _formSettingFacade.GetOrgAdmins(formSettingDTO.SelectedOrgList); // about to share with List <UserBO> CurrentOrgAdminList = _formSettingFacade.GetOrgAdminsByFormId(formSettingDTO.FormId); // shared with _formSettingFacade.UpdateSettingsList(formSettingBO, formSettingDTO.FormId, CurrentOrg); // Clear all Draft records if (formSettingDTO.DeleteDraftData) { _formSettingFacade.DeleteDraftRecords(formSettingDTO.FormId); } List <UserBO> AdminList = _userDao.GetAdminsBySelectedOrgs(formSettingBO, formSettingDTO.FormId); if (formSettingDTO.AssignedUserList.Count() > 0 && AppSettings.Key.SendEmailToAssignedUsers.GetBoolValue()) { SendEmail(formSettingDTO.AssignedUserList, formSettingDTO.FormId, formCurrentUsersList); } // Send Email to organization admin when a form is shared with that organization SendEmail(assignedOrgAdminList, formSettingDTO.FormId, CurrentOrgAdminList, true); message = "Success"; UpdateMetadataIfNecessary(formId, isDraftMode, isShareable, dataAccessRuleId); } catch (Exception Ex) { message = "Error"; throw Ex; } return(message); }
public static FormSettingDTO ToDataTransferObject(FormSettingBO pBO) { return(new FormSettingDTO { ColumnNameList = pBO.ColumnNameList, FormControlNameList = pBO.FormControlNameList, AssignedUserList = pBO.AssignedUserList, UserList = pBO.UserList, IsShareable = pBO.IsShareable, AvailableOrgList = pBO.AvailableOrgList, SelectedOrgList = pBO.SelectedOrgList, IsDisabled = pBO.IsDisabled, DataAccessRuleIds = pBO.DataAccessRuleIds, SelectedDataAccessRule = pBO.SelectedDataAccessRule, DataAccessRuleDescription = pBO.DataAccessRuleDescription, DeleteDraftData = pBO.DeleteDraftData }); }
public void UpDateColumnNames(bool IsDraftMode, FormSettingDTO FormSettingDTO) { FormSettingBO FormSettingBO = new FormSettingBO(); FormSettingBO.ColumnNameList = FormSettingDTO.ColumnNameList; FormInfoBO FormInfoBO = new FormInfoBO(); FormInfoBO.FormId = FormSettingDTO.FormId; FormInfoBO.IsDraftMode = IsDraftMode; FormInfoBO.IsShareable = FormSettingDTO.IsShareable; FormInfoBO.DataAccesRuleId = FormSettingDTO.SelectedDataAccessRule; this.FormSettingDao.UpDateColumnNames(FormSettingBO, FormSettingDTO.FormId); this.FormSettingDao.UpDateFormMode(FormInfoBO); if (FormSettingDTO.IsDisabled) { this.FormSettingDao.SoftDeleteForm(FormSettingDTO.FormId); } }
public FormSettingBO GetFormSettings(string formId, int currentOrgId, bool userAndOrgInfoOnly) { FormSettingBO formSettingBO = new FormSettingBO { FormId = formId }; Dictionary <int, string> columnNameList = new Dictionary <int, string>(); try { formSettingBO = _formSettingDao_EF.GetFormSettings(formId, currentOrgId, userAndOrgInfoOnly); int i = 1; formSettingBO.FormControlNameList = _metadataAccessor.GetAllColumnNames(formId).ToDictionary(k => i++, v => v); formSettingBO = GetDataAccessRules(formSettingBO); } catch (Exception ex) { throw (ex); } return(formSettingBO); }
public FormSettingBO GetFormSettings(string FormId, string Xml, int CurrentOrgId = -1, bool FormInfoOnly = false) { FormSettingBO result = this.FormSettingDao.GetFormSettings(FormId, CurrentOrgId, FormInfoOnly); if (!string.IsNullOrEmpty(Xml)) { result.FormControlNameList = GetFormColumnNames(Xml, result.ColumnNameList); } else { result.FormControlNameList = new Dictionary <int, string>(); var Columns = GetAllColumns(FormId); for (int i = 0; i < Columns.Count; i++) { result.FormControlNameList.Add(i, Columns[i]); } } return(result); }
public List <UserBO> GetAdminsBySelectedOrgs(FormSettingBO FormSettingBO, string formId) { List <UserBO> AdminList = new List <UserBO>(); using (var Context = DataObjectFactory.CreateContext()) { foreach (var item in FormSettingBO.SelectedOrgList) { int OrgId = int.Parse(item.Value); var users = Context.UserOrganizations.Where(x => x.RoleId == 2 && x.OrganizationID == OrgId && x.Active == true); foreach (var user in users) { AdminList.Add(Mapper.MapToUserBO(user.User, user.RoleId)); } } } return(AdminList); }
public static FormSettingDTO ToFormSettingDTO(this FormSettingBO formSettingBO) { return(new FormSettingDTO { UserList = formSettingBO.UserList, AssignedUserList = formSettingBO.AssignedUserList, AvailableOrgList = formSettingBO.AvailableOrgList, SelectedOrgList = formSettingBO.SelectedOrgList, ColumnNameList = formSettingBO.ResponseGridColumnNameList, FormControlNameList = formSettingBO.FormControlNameList, SelectedDataAccessRule = formSettingBO.SelectedDataAccessRule, DataAccessRuleIds = formSettingBO.DataAccessRuleIds, DataAccessRuleDescription = formSettingBO.DataAccessRuleDescription, IsShareable = formSettingBO.IsShareable, IsDisabled = formSettingBO.IsDisabled, DeleteDraftData = formSettingBO.DeleteDraftData }); }
public void UpdateFormSettings(bool isDraftMode, FormSettingDTO formSettingDTO) { var formId = formSettingDTO.FormId; var isShareable = formSettingDTO.IsShareable; var dataAccessRuleId = formSettingDTO.SelectedDataAccessRule; FormSettingBO formSettingBO = new FormSettingBO { FormId = formSettingDTO.FormId }; formSettingBO.ResponseGridColumnNameList = formSettingDTO.ColumnNameList; FormInfoBO formInfoBO = new FormInfoBO(); formInfoBO.FormId = formId; formInfoBO.IsDraftMode = isDraftMode; formInfoBO.IsShareable = isShareable; formInfoBO.DataAccesRuleId = dataAccessRuleId; _formSettingFacade.UpdateResponseGridColumnNames(formSettingBO, formSettingDTO.FormId); _formSettingFacade.UpdateFormMode(formInfoBO, formSettingBO); if (formSettingDTO.IsDisabled) { _formSettingFacade.SoftDeleteForm(formSettingDTO.FormId); } }
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 FormSettingBO GetFormSettings() { FormSettingBO result = this.FormSettingDao.GetFormSettings(); return(result); }
public void UpdateResponseGridColumnNames(FormSettingBO formSettingBO, string formId) { _formSettingDao.UpdateResponseGridColumnNames(formSettingBO, formId); }
public FormSettingBO GetFormSettings(string FormId, int CurrentOrgId) { 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); } //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).Single(); selectedDataAccessRuleId = int.Parse(MetaData.DataAccessRuleId.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) { 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); } 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); } 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 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).Single(); selectedDataAccessRuleId = int.Parse(MetaData.DataAccessRuleId.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 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); } }
public void UpdateSettingsList(FormSettingBO formSettingBO, string formId, int CurrentOrg = -1) { _formSettingDao_EF.UpdateSettingsList(formSettingBO, formId, CurrentOrg); }
public void UpdateFormMode(FormInfoBO formInfoBO, FormSettingBO formSettingBO = null) { _formSettingDao_CosmosDB.UpdateFormMode(formInfoBO, formSettingBO); }
private FormSettingResponse CreateFormSettingResponse(string formId, int userId, FormSettingBO formSettingBO) { FormSettingResponse response = new FormSettingResponse(); var formInfoImplementation = new FormInfo(_formInfoDao); var formInfoBO = formInfoImplementation.GetFormInfoByFormId(formId, userId); response.FormInfo = formInfoBO.ToFormInfoDTO(); response.FormSetting = formSettingBO.ToFormSettingDTO(); return(response); }
public FormSettingBO GetFormSettings(string formId, int currentOrgId = -1) { FormSettingBO result = _formSettingFacade.GetFormSettings(formId, currentOrgId); return(result); }