예제 #1
0
        public ActionResult NewDeficiency(NewDeficiencyVM model, int PermitKey, FormCollection formData)
        {
            if (!ModelState.IsValid)
            {
                DeficienciesBO deficiencies = DeficiencyBLL.GetDeficiencies(model.TOCID, PermitKey);
                NewDeficiencyVM data = new NewDeficiencyVM(deficiencies, model.DeficiencyState);
                data.Description = model.Description;
                data.CheckedRules = formData.AllKeys.Where(k => k.StartsWith("rule")).ToList();
                ViewBag.RuleCount = model.CheckedRules.Count;
                return PartialView(data);
            }

            try
            {

                foreach (string key in formData.AllKeys.Where(k => k.StartsWith("rule_")))
                {
                    string section = key.Split('_')[1];
                    string subsection = key.Split('_')[2];
                    DeficiencyDO newDeficiency = new DeficiencyDO()
                    {
                        DeficiencyDate = DateTime.Now,
                        DeficiencyStateID = model.DeficiencyState,
                        DeficiencyStatusID = "Deficient",
                        DeficiencyTypeID = (model.IsCompleteness.HasValue && model.IsCompleteness.Value == true) ? "Completeness" : "Acceptability",
                        Description = model.Description,
                        PermitKey = PermitKey,
                        Section = section,
                        SubSection = subsection,
                        TOCID = model.TOCID,
                        UserToken = myCoalUser.UserToken,
                        Version = 0
                    };
                    DeficiencyBLL.Save(newDeficiency);

                }

                AjaxResult result = new AjaxResult(AjaxResult.AjaxStatus.OK, "The deficiencies have been added");
                return Json(result);

            }
            catch (Exception ex)
            {
                AjaxResult result = new AjaxResult(AjaxResult.AjaxStatus.ERROR, ex.Message);
                return Json(result);
            }
        }
예제 #2
0
        /// <summary>
        /// Gets the deficienciy data for the NoDeficiency screen
        /// </summary>
        /// <param name="PermitKey"></param>
        /// <param name="Source"></param>
        /// <returns></returns>
        private NewDeficiencyVM GetDeficienciesBySource(int PermitKey, string Source)
        {
            DeficienciesBO deficiencies;
            if (Source.StartsWith("17.24."))
            {
                deficiencies = DeficiencyBLL.GetDeficienciesBySection(PermitKey, Source);
            }
            else
            {
                string Page = Request.UrlReferrer.AbsolutePath;

                if (Page.Contains("/Timetable"))
                    Page = "ePermitAdmin/Timetable";

                string url = FormatPageUrl(Page);
                Source = url;
                deficiencies = DeficiencyBLL.GetDeficiencies(url, PermitKey);
            }
            NewDeficiencyVM model = new NewDeficiencyVM(deficiencies, "Initial") { Source = Source };
            return model;
        }
예제 #3
0
 public ActionResult NewDeficiency(string DeficiencyState, int PermitKey, string Source)
 {
     DeficienciesBO deficiencies;
     if (Source.StartsWith("17.24."))
     {
         deficiencies = DeficiencyBLL.GetDeficienciesBySection(PermitKey, Source);
     }
     else
     {
         string Page = Request.UrlReferrer.AbsolutePath;
         if (Page.Contains("/Timetable"))
             Page = "ePermitAdmin/Timetable";
         string url = FormatPageUrl(Page);
         deficiencies = DeficiencyBLL.GetDeficiencies(url, PermitKey);
     }
     NewDeficiencyVM model = new NewDeficiencyVM(deficiencies, DeficiencyState);
     return PartialView(model);
 }