Esempio n. 1
0
        public ActionResult SubmittalStart(int organizationId, int CERSID)
        {
            var viewModel = SystemViewModelData.BuildUpSubmittalStartViewModel(CERSID);

            //Validate each submittal element before the official submit
            foreach (var submittalElement in viewModel.CurrentSubmittalElementViewModelCollection.Where(f => f.FacilitySubmitalElement != null && f.FacilitySubmitalElement.StatusID == (int)SubmittalElementStatus.Draft).Select(c => c.FacilitySubmitalElement))
            {
                var fse = Repository.FacilitySubmittalElements.GetByID(submittalElement.ID);
                fse.ValidateAndCommitResults(Repository, CallerContext.UI);
            }
            viewModel = SystemViewModelData.BuildUpSubmittalStartViewModel(CERSID);
            return(View(viewModel));
        }
Esempio n. 2
0
        public ActionResult SubmittalStart(int organizationId, int CERSID, FormCollection form)
        {
            var      viewModel             = SystemViewModelData.BuildUpSubmittalStartViewModel(CERSID);
            var      isFacilityInfoChecked = false;
            var      fseIDs        = string.Empty;
            DateTime submittedDate = DateTime.Now;

            //Create FacilitySubmittalRecord
            FacilitySubmittal facilitySubmittal = new FacilitySubmittal();

            facilitySubmittal.ReceivedOn  = DateTime.Now;
            facilitySubmittal.SubmittedOn = submittedDate;
            Repository.FacilitySubmittals.Create(facilitySubmittal);

            foreach (var submittal in viewModel.ReadyToSubmitCollection)
            {
                var FSEIDValue = form[string.Format("submittCheckBox_{0}", submittal.CurrentSubmittalElement.SubmittalElementID)];
                var comments   = form[string.Format("regulatorText_{0}", submittal.CurrentSubmittalElement.SubmittalElementID)];

                if (!string.IsNullOrWhiteSpace(FSEIDValue))
                {
                    FacilitySubmittalElement submittalElement = Repository.FacilitySubmittalElements.GetByID(submittal.CurrentSubmittalElement.FSEID.Value);

                    //We do not want to submit unless the Faciilty Info Submittal Element has been chekced.
                    if (isFacilityInfoChecked || submittalElement.SubmittalElementID == (int)CERS.SubmittalElementType.FacilityInformation)
                    {
                        submittalElement.SubmittedByComments = comments;
                        Repository.FacilitySubmittalElements.Submit(submittalElement, facilitySubmittal);
                        isFacilityInfoChecked = true;

                        fseIDs += "," + submittalElement.ID.ToString();
                        Services.BusinessLogic.SubmittalElements.SetLastFacilityInfoSubmittal(submittalElement);
                    }
                }
            }

            Facility facility = Repository.Facilities.GetByID(CERSID);

            Repository.Organizations.Save(facility.Organization);
            Services.Events.CreateFacilitySubmittalNotification(facility, facilitySubmittal);
            if (fseIDs.Length > 1)
            {
                fseIDs = fseIDs.Remove(0, 1);
            }

            return(RedirectToRoute(GetRouteName(Part.Submittal, Part.Finish), new { organizationID = organizationId, CERSID = CERSID, FSID = facilitySubmittal.ID }));
        }