private PartialViewResult ViewDeleteOrganization(Organization organization, ConfirmDialogFormViewModel viewModel) { var canDelete = !organization.HasDependentObjects() && !organization.IsUnknown(); var confirmMessage = canDelete ? $"Are you sure you want to delete this {FieldDefinitionType.Organization.GetFieldDefinitionLabel()} '{organization.OrganizationName}'?" : ConfirmDialogFormViewData.GetStandardCannotDeleteMessage($"{FieldDefinitionType.Organization.GetFieldDefinitionLabel()}", SitkaRoute <OrganizationController> .BuildLinkFromExpression(x => x.Detail(organization), "here")); var viewData = new ConfirmDialogFormViewData(confirmMessage, canDelete); return(RazorPartialView <ConfirmDialogForm, ConfirmDialogFormViewData, ConfirmDialogFormViewModel>(viewData, viewModel)); }
public ActionResult New(EditViewModel viewModel) { if (!ModelState.IsValid) { return(ViewEdit(viewModel, true, null)); } var organization = new Organization(String.Empty, true, ModelObjectHelpers.NotYetAssignedID); viewModel.UpdateModel(organization, CurrentPerson); HttpRequestStorage.DatabaseEntities.Organizations.Add(organization); HttpRequestStorage.DatabaseEntities.SaveChanges(); SetMessageForDisplay($"Organization {organization.GetDisplayName()} succesfully created."); return(new ModalDialogFormJsonResult()); }
private static Person CreateNewFirmaPerson(KeystoneService.KeystoneUserClaims keystoneUser, Guid?organizationGuid) { Organization organization; if (organizationGuid.HasValue) { organization = HttpRequestStorage.DatabaseEntities.Organizations.GetOrganizationByOrganizationGuid(organizationGuid .Value); if (organization == null) { var keystoneClient = new KeystoneDataClient(); var keystoneOrganization = keystoneClient.GetOrganization(organizationGuid.Value); var defaultOrganizationType = HttpRequestStorage.DatabaseEntities.OrganizationTypes.GetDefaultOrganizationType(); var neptuneOrganization = new Organization(keystoneOrganization.FullName, true, defaultOrganizationType) { OrganizationGuid = keystoneOrganization.OrganizationGuid, OrganizationShortName = keystoneOrganization.ShortName, OrganizationUrl = keystoneOrganization.URL }; HttpRequestStorage.DatabaseEntities.Organizations.Add(neptuneOrganization); HttpRequestStorage.DatabaseEntities.SaveChanges(); organization = neptuneOrganization; } } else { organization = HttpRequestStorage.DatabaseEntities.Organizations.GetUnknownOrganization(); } var firmaPerson = new Person(keystoneUser.UserGuid, keystoneUser.FirstName, keystoneUser.LastName, keystoneUser.Email, Role.Unassigned, DateTime.Now, true, organization, false, keystoneUser.LoginName, false, Guid.NewGuid()); HttpRequestStorage.DatabaseEntities.People.Add(firmaPerson); return(firmaPerson); }
public ActionResult PullOrganizationFromKeystone(PullOrganizationFromKeystoneViewModel viewModel) { if (!ModelState.IsValid) { return(ViewPullOrganizationFromKeystone(viewModel)); } var keystoneClient = new KeystoneDataClient(); var organizationGuid = viewModel.OrganizationGuid.GetValueOrDefault(); // never null due to RequiredAttribute KeystoneDataService.Organization keystoneOrganization; try { keystoneOrganization = keystoneClient.GetOrganization(organizationGuid); } catch (Exception) { SetErrorForDisplay("Organization not added. Guid not found in Keystone or unable to connect to Keystone"); return(new ModalDialogFormJsonResult()); } var neptuneOrganization = HttpRequestStorage.DatabaseEntities.Organizations.SingleOrDefault(x => x.OrganizationGuid == organizationGuid); if (neptuneOrganization != null) { SetErrorForDisplay("Organization not added - it already exists in Neptune"); return(new ModalDialogFormJsonResult()); } var defaultOrganizationType = HttpRequestStorage.DatabaseEntities.OrganizationTypes.GetDefaultOrganizationType(); neptuneOrganization = new Organization(keystoneOrganization.FullName, true, defaultOrganizationType) { OrganizationGuid = keystoneOrganization.OrganizationGuid, OrganizationShortName = keystoneOrganization.ShortName, OrganizationUrl = keystoneOrganization.URL }; HttpRequestStorage.DatabaseEntities.Organizations.Add(neptuneOrganization); HttpRequestStorage.DatabaseEntities.SaveChanges(); SetMessageForDisplay($"Organization {neptuneOrganization.GetDisplayNameAsUrl()} successfully added."); return(new ModalDialogFormJsonResult()); }
public string GetDisplayName() { return ($"{FundingSourceName} ({Organization.GetOrganizationShortNameIfAvailable()}){(!IsActive ? " (Inactive)" : string.Empty)}"); }