private void InventorySummaryButton_Click(object sender, RoutedEventArgs e) { ICERSSystemServiceManager services = ServiceLocator.GetSystemServiceManager(DataRepository); try { int fsid = 0; fsid = Convert.ToInt32(ISFsidTB.Text); services.BusinessLogic.SubmittalElements.HazardousMaterialsInventory.InventorySummary.Summary(Convert.ToInt32(fsid)); // all this was done in Summary but we need the information to get the output FacilitySubmittal fs = (from fsRec in DataRepository.DataModel.FacilitySubmittals where fsRec.ID == fsid select fsRec).FirstOrDefault(); FacilitySubmittalElement fse = (from fseRec in DataRepository.DataModel.FacilitySubmittalElements where fseRec.FacilitySubmittal.ID == fs.ID && fseRec.Voided == false && fseRec.SubmittalElementID == (int)SubmittalElementType.HazardousMaterialsInventory select fseRec).FirstOrDefault(); FacilitySubmittalElementResource fser = (from fserRec in DataRepository.DataModel.FacilitySubmittalElementResources where fserRec.FacilitySubmittalElementID == fse.ID && fserRec.Voided == false && fserRec.ResourceTypeID == (int)ResourceType.HazardousMaterialInventory select fserRec).FirstOrDefault(); InventorySummary inventory = DataRepository.InventorySummaries.GetByFSERID(fser.ID); StringBuilder results = new StringBuilder(); results.Append("Inventory Summary FSE: " + fse.ID + " CERSID: " + fse.CERSID + "\n"); results.Append(" Solid Material Count: " + inventory.SolidMaterialCount + " EHS Count: " + inventory.SolidEHSCount + " Maximum Daily Value: " + inventory.SolidMaximumDailyValue + " pounds\n"); results.Append(" Liquid Material Count: " + inventory.LiquidMaterialCount + " EHS Count: " + inventory.LiquidEHSCount + " Maximum Daily Value: " + inventory.LiquidMaximumDailyValue + " gallons\n"); results.Append(" Gas Material Count: " + inventory.GasMaterialCount + " EHS Count: " + inventory.GasEHSCount + " Maximum Daily Value: " + inventory.GasMaximumDailyValue + " cubic feet\n"); results.Append(" Unique Location Count: " + inventory.UniqueLocationCount + "\n"); this.OutputTB.Text = results.ToString(); } catch (Exception ex) { this.OutputTB.Text = "Error: " + ex.Message; } }
public ActionResult OrganizationFacilitySubmittalEvent(int organizationID, int FSID) { FacilitySubmittalViewModel viewModel = SystemViewModelData.BuildUpFacilitySubmittalViewModel(FSID, organizationID); viewModel.FacilitySubmittalElements = viewModel.FacilitySubmittalElements.OrderBy(f => f.SubmittalElementID); //plug in HMI report FacilitySubmittalElement HMIFse = viewModel.FacilitySubmittalElements.Where(p => p.SubmittalElementID == (int)(SubmittalElementType.HazardousMaterialsInventory)).FirstOrDefault(); if (HMIFse != null) { FacilitySubmittalElementResource HMIFser = HMIFse.Resources.Where(r => r.ResourceTypeID == (int)ResourceType.HazardousMaterialInventory && !r.Voided).FirstOrDefault(); if (HMIFser != null) { HazardousMaterialsInventoryController hmiController = new HazardousMaterialsInventoryController(); viewModel.HMISReport = hmiController.PopulateHMIMatrixViewModel(organizationID, HMIFse.CERSID, HMIFse.ID, HMIFser.ID); } } return(View(viewModel)); }
public virtual ActionResult Handle_LandingPageGet(int organizationId, int CERSID, SubmittalElementType submittalElementType, ResourceType resourceType, string instructions, IEnumerable <WhatsNextItem> whatsNext, int?fseID = null, int?fserID = null) { LandingPageViewModel viewModel = new LandingPageViewModel(); FacilitySubmittalElement fse = null; if (fseID != null) { //since we have an fseID parameter this means we are pulling up an existing submittal //which could also mean, we also need to check the status of this FacilitySubmittalElement to see whether editing is allowed. // fse = Services.BusinessLogic.SubmittalElements.GetFacilitySubmittalElement(fseID.Value); if (fse.CERSID != CERSID) { throw new Exception("The CERSID and the FacilitySubmittalElementID do not belong to one another. This is probably an attempt to breach security."); } //When the submittal element is in draft, editing is allowed, but not in ANY other status. } else { //in this particlar case, we ALWAYS bring back a Draft submittal element. The method below locates an existing draft is there is one OR creates on, if there //is no active draft for the submittal element. fse = Services.BusinessLogic.SubmittalElements.GetFacilitySubmittalElement(CERSID, submittalElementType, SubmittalElementStatus.Draft, true); } //at this point, we should have a FacilitySubmittalElement to work against, if not (should not happen) lets blow up. if (fse == null) { throw new Exception("Unable to find a usable FacilitySubmittalElement."); } viewModel.FacilitySubmittalElement = fse; // Get Resource FacilitySubmittalElementResource resource = new FacilitySubmittalElementResource(); if (fserID == null) { // If fserID is not specified, retrieve the first resource for this FSE and ResourceType resource = fse.Resources.FirstOrDefault(p => p.ResourceTypeID == (int)resourceType && !p.Voided); } else { // If fserID *is* specified, resource ID must match the specified value // Use "SingleOrDefault" - specifying by fserID should never return more than one record resource = fse.Resources.SingleOrDefault(p => p.ResourceTypeID == (int)resourceType && p.ID == fserID && !p.Voided); } // Set ViewModel Resource viewModel.FacilitySubmittalElementResource = resource; //Get current submittal element view model var currentSubmittalElement = Repository.FacilityRegulatorSubmittalElements.GetCurrentFacilitySubmittalElements(CERSID, (int)submittalElementType).FirstOrDefault(); CurrentSubmittalElementViewModel viewModelcurrSub = new CurrentSubmittalElementViewModel() { CurrentSubmittalElement = currentSubmittalElement, OrganizationID = organizationId, isFirstElement = true }; //Set current submittal element view model viewModel.CurrentSEViewModel = viewModelcurrSub; //Get guidance. var guidance = Repository.GuidanceMessages.Search(facilitySubmittalElementResourceID: viewModel.FacilitySubmittalElementResource.ID).ToList(); if (guidance == null) { guidance = new List <GuidanceMessage>(); } //Set Guidance Messages viewModel.GuidanceMessages = guidance; //Set Instructions viewModel.Instructions = instructions; //Set WhatsNext viewModel.WhatsNext = whatsNext; return(View(viewModel)); }