Example #1
0
        //public ActionResult GetFacilityDashboardPieChart(DataSourceRequest request, QualityGoalsViewModel model)
        //{
        //    var isFacilityAdmin = User.IsInRole(UserRoles.FacilityAdmin.ToDescription());
        //    var result = _facilityPIService.GetFacilityDashboardPieChart(model, isFacilityAdmin ? User.Identity.GetUserId() : null, request);
        //    var _result = result.Data;
        //    return Json(_result, JsonRequestBehavior.AllowGet);
        //}
        #endregion
        public ActionResult GetFacilityDashboardGraph(DataSourceRequest request, QualityGoalsViewModel model, string status)
        {
            try
            {
                if (model.Facilities != null && model.Facilities.Count > 0)
                {
                    Guid guid = new Guid("00000000-0000-0000-0000-000000000000");
                    if (model.Facilities[0] == guid)
                    {
                        model.Facilities.RemoveAt(0);
                    }
                }
                if (model.QPS != null && model.QPS.Count > 0)
                {
                    if (model.QPS[0] == null)
                    {
                        model.QPS.RemoveAt(0);
                    }
                }
                if (model.System != null && model.System.Count > 0)
                {
                    if (model.System[0] == null)
                    {
                        model.System.RemoveAt(0);
                    }
                }
                if (model.Regional != null && model.Regional.Count > 0)
                {
                    if (model.Regional[0] == null)
                    {
                        model.Regional.RemoveAt(0);
                    }
                }
                if (model.States != null && model.States.Count > 0)
                {
                    if (model.States[0] == null)
                    {
                        model.States.RemoveAt(0);
                    }
                }

                var isFacilityAdmin = User.IsInRole(UserRoles.FacilityAdmin.ToDescription());
                var result          = _facilityPIService.GetFacilityDashboardGraph(request, model, isFacilityAdmin ? User.Identity.GetUserId() : null, status);
                var _result         = result.Data;
                return(JsonMax(_result, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
                return(JsonMax(new { success = false }, JsonRequestBehavior.AllowGet));
            }
        }
Example #2
0
        public ActionResult GetSpreadSheetReport(DataSourceRequest request, QualityGoalsViewModel model)
        {
            try
            {
                if (model.ReportType != null)
                {
                    if (model.qag_time_frame == null)
                    {
                        DataSourceResult result = new DataSourceResult();
                        result.Data = new List <string>();
                        return(JsonMax(result, JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        quality_goals QualityGoals = new quality_goals();
                        if (model.Facilities != null && model.Facilities.Count > 0)
                        {
                            var date = Convert.ToDateTime(model.qag_time_frame);
                            QualityGoals = _qualityGoalsService.GetQualityGoalsByFacility(model.Facilities[0], date.Year.ToString());

                            if (QualityGoals == null)
                            {
                                DataSourceResult rsult = new DataSourceResult();
                                rsult.Data = new List <string>();
                                return(JsonMax(rsult, JsonRequestBehavior.AllowGet));
                            }
                        }
                        var isFacilityAdmin = User.IsInRole(UserRoles.FacilityAdmin.ToDescription());
                        var result          = _facilityPIService.GetSpreadSheetReport(request, model, isFacilityAdmin ? User.Identity.GetUserId() : null, QualityGoals);

                        return(JsonMax(result, JsonRequestBehavior.AllowGet));
                    }
                }
                else
                {
                    DataSourceResult result = new DataSourceResult();
                    result.Data = new List <string>();
                    return(JsonMax(result, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
                return(JsonMax(new { success = false }, JsonRequestBehavior.AllowGet));
            }
        }
Example #3
0
        public ActionResult GetFacilityDashboardAllCharts(DataSourceRequest request, QualityGoalsViewModel model)
        {
            if (model.Facilities != null && model.Facilities.Count > 0)
            {
                Guid guid = new Guid("00000000-0000-0000-0000-000000000000");
                if (model.Facilities[0] == guid)
                {
                    model.Facilities.RemoveAt(0);
                }
            }
            if (model.QPS != null && model.QPS.Count > 0)
            {
                if (model.QPS[0] == null)
                {
                    model.QPS.RemoveAt(0);
                }
            }
            if (model.System != null && model.System.Count > 0)
            {
                if (model.System[0] == null)
                {
                    model.System.RemoveAt(0);
                }
            }
            if (model.Regional != null && model.Regional.Count > 0)
            {
                if (model.Regional[0] == null)
                {
                    model.Regional.RemoveAt(0);
                }
            }
            if (model.States != null && model.States.Count > 0)
            {
                if (model.States[0] == null)
                {
                    model.States.RemoveAt(0);
                }
            }
            var isFacilityAdmin = User.IsInRole(UserRoles.FacilityAdmin.ToDescription());
            var result          = _facilityPIService.GetFacilityDashboardAllGraph(request, model, isFacilityAdmin ? User.Identity.GetUserId() : null);
            var _result         = result.Data;

            return(Json(_result, JsonRequestBehavior.AllowGet));
        }
Example #4
0
 public ActionResult GetStrokeAlertCases(DataSourceRequest request, QualityGoalsViewModel model)
 {
     try
     {
         if (model.qag_time_frame == null)
         {
             DataSourceResult result = new DataSourceResult();
             result.Data = new List <string>();
             return(JsonMax(result, JsonRequestBehavior.AllowGet));
         }
         else
         {
             var isFacilityAdmin = User.IsInRole(UserRoles.FacilityAdmin.ToDescription());
             var result          = _facilityPIService.GetStrokeAlertCases(request, model, isFacilityAdmin ? User.Identity.GetUserId() : null);
             return(JsonMax(result, JsonRequestBehavior.AllowGet));
         }
     }
     catch (Exception ex)
     {
         Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
         return(JsonMax(new { success = false }, JsonRequestBehavior.AllowGet));
     }
 }
Example #5
0
        public ActionResult Save(QualityGoalsViewModel model)
        {
            if (ModelState.IsValid)
            {
                var isExist = _qualityGoalsService.GetGoalDataById(model.obj.gd_key);
                if (isExist == null)
                {
                    for (var i = 0; i < model.Facilities.Count; i++)
                    {
                        var CheckData = _qualityGoalsService.GetDetailByYear(model.Facilities[i], model.qag_time_frame);
                        if (CheckData == null)
                        {
                            quality_goals Goals = new quality_goals();
                            Goals.qag_fac_key    = model.Facilities[i];
                            Goals.qag_time_frame = model.qag_time_frame;
                            _qualityGoalsService.Create(Goals);
                            var GetDetail = _qualityGoalsService.GetQualityGoalsByFacility(model.Facilities[i], model.qag_time_frame);
                            for (var j = 0; j < model.obj.qag_door_to_TS_notification_ave_minutes.Count; j++)
                            {
                                goals_data data = new goals_data();
                                data.gd_qag_key = GetDetail.qag_key;
                                data.gd_quater  = model.obj.Quater;
                                data.qag_door_to_TS_notification_ave_minutes    = model.obj.qag_door_to_TS_notification_ave_minutes[j];
                                data.qag_door_to_TS_notification_median_minutes = model.obj.qag_door_to_TS_notification_median_minutes[j];
                                data.qag_percent10_min_or_less_activation_EMS   = model.obj.qag_percent10_min_or_less_activation_EMS[j];
                                data.qag_percent10_min_or_less_activation_PV    = model.obj.qag_percent10_min_or_less_activation_PV[j];
                                //data.qag_percent10_min_or_less_activation_Inpt = model.obj.qag_percent10_min_or_less_activation_Inpt[j];
                                data.qag_TS_notification_to_response_average_minute = model.obj.qag_TS_notification_to_response_average_minute[j];
                                data.qag_TS_notification_to_response_median_minute  = model.obj.qag_TS_notification_to_response_median_minute[j];
                                data.qag_percent_TS_at_bedside_grterthan10_minutes  = model.obj.qag_percent_TS_at_bedside_grterthan10_minutes[j];
                                //data.qag_alteplase_administered = model.obj.qag_alteplase_administered[j];
                                data.qag_door_to_needle_average = model.obj.qag_door_to_needle_average[j];
                                data.qag_door_to_needle_median  = model.obj.qag_door_to_needle_median[j];
                                data.qag_verbal_order_to_administration_average_minutes             = model.obj.qag_verbal_order_to_administration_average_minutes[j];
                                data.qag_DTN_grter_or_equal_30minutes_percent                       = model.obj.qag_DTN_grter_or_equal_30minutes_percent[j];
                                data.qag_DTN_grter_or_equal_45minutes_percent                       = model.obj.qag_DTN_grter_or_equal_45minutes_percent[j];
                                data.qag_DTN_grter_or_equal_60minutes_percent                       = model.obj.qag_DTN_grter_or_equal_60minutes_percent[j];
                                data.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent[j];
                                data.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent[j];
                                data.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent[j];
                                _qualityGoalsService.CreateGoalData(data);
                            }
                        }
                        else
                        {
                            var issExist = CheckData.goals_data.Where(x => x.gd_qag_key == CheckData.qag_key && x.gd_quater == model.obj.Quater).ToList();
                            if (issExist.Count > 0)
                            {
                                for (var j = 0; j < issExist.Count; j++)
                                {
                                    issExist[j].qag_door_to_TS_notification_ave_minutes    = model.obj.qag_door_to_TS_notification_ave_minutes[j];
                                    issExist[j].qag_door_to_TS_notification_median_minutes = model.obj.qag_door_to_TS_notification_median_minutes[j];
                                    issExist[j].qag_percent10_min_or_less_activation_EMS   = model.obj.qag_percent10_min_or_less_activation_EMS[j];
                                    issExist[j].qag_percent10_min_or_less_activation_PV    = model.obj.qag_percent10_min_or_less_activation_PV[j];
                                    //issExist[j].qag_percent10_min_or_less_activation_Inpt = model.obj.qag_percent10_min_or_less_activation_Inpt[j];
                                    issExist[j].qag_TS_notification_to_response_average_minute = model.obj.qag_TS_notification_to_response_average_minute[j];
                                    issExist[j].qag_TS_notification_to_response_median_minute  = model.obj.qag_TS_notification_to_response_median_minute[j];
                                    issExist[j].qag_percent_TS_at_bedside_grterthan10_minutes  = model.obj.qag_percent_TS_at_bedside_grterthan10_minutes[j];
                                    //issExist[j].qag_alteplase_administered = model.obj.qag_alteplase_administered[j];
                                    issExist[j].qag_door_to_needle_average = model.obj.qag_door_to_needle_average[j];
                                    issExist[j].qag_door_to_needle_median  = model.obj.qag_door_to_needle_median[j];
                                    issExist[j].qag_verbal_order_to_administration_average_minutes             = model.obj.qag_verbal_order_to_administration_average_minutes[j];
                                    issExist[j].qag_DTN_grter_or_equal_30minutes_percent                       = model.obj.qag_DTN_grter_or_equal_30minutes_percent[j];
                                    issExist[j].qag_DTN_grter_or_equal_45minutes_percent                       = model.obj.qag_DTN_grter_or_equal_45minutes_percent[j];
                                    issExist[j].qag_DTN_grter_or_equal_60minutes_percent                       = model.obj.qag_DTN_grter_or_equal_60minutes_percent[j];
                                    issExist[j].qag_TS_notification_to_needle_grter_or_equal_30minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent[j];
                                    issExist[j].qag_TS_notification_to_needle_grter_or_equal_45minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent[j];
                                    issExist[j].qag_TS_notification_to_needle_grter_or_equal_60minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent[j];
                                    _qualityGoalsService.EditGoalData(issExist[j]);
                                    _qualityGoalsService.SaveChanges();
                                }
                            }
                            else
                            {
                                goals_data data = new goals_data();
                                data.gd_qag_key = CheckData.qag_key;
                                data.gd_quater  = model.obj.Quater;
                                data.qag_door_to_TS_notification_ave_minutes    = model.obj.qag_door_to_TS_notification_ave_minutes[0];
                                data.qag_door_to_TS_notification_median_minutes = model.obj.qag_door_to_TS_notification_median_minutes[0];
                                data.qag_percent10_min_or_less_activation_EMS   = model.obj.qag_percent10_min_or_less_activation_EMS[0];
                                data.qag_percent10_min_or_less_activation_PV    = model.obj.qag_percent10_min_or_less_activation_PV[0];
                                //data.qag_percent10_min_or_less_activation_Inpt = model.obj.qag_percent10_min_or_less_activation_Inpt[0];
                                data.qag_TS_notification_to_response_average_minute = model.obj.qag_TS_notification_to_response_average_minute[0];
                                data.qag_TS_notification_to_response_median_minute  = model.obj.qag_TS_notification_to_response_median_minute[0];
                                data.qag_percent_TS_at_bedside_grterthan10_minutes  = model.obj.qag_percent_TS_at_bedside_grterthan10_minutes[0];
                                data.qag_door_to_needle_average = model.obj.qag_door_to_needle_average[0];
                                data.qag_door_to_needle_median  = model.obj.qag_door_to_needle_median[0];
                                data.qag_verbal_order_to_administration_average_minutes             = model.obj.qag_verbal_order_to_administration_average_minutes[0];
                                data.qag_DTN_grter_or_equal_30minutes_percent                       = model.obj.qag_DTN_grter_or_equal_30minutes_percent[0];
                                data.qag_DTN_grter_or_equal_45minutes_percent                       = model.obj.qag_DTN_grter_or_equal_45minutes_percent[0];
                                data.qag_DTN_grter_or_equal_60minutes_percent                       = model.obj.qag_DTN_grter_or_equal_60minutes_percent[0];
                                data.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent[0];
                                data.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent[0];
                                data.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent[0];
                                _qualityGoalsService.CreateGoalData(data);
                                _qualityGoalsService.SaveChanges();
                            }
                        }
                    }
                }
                else
                {
                    isExist.qag_door_to_TS_notification_ave_minutes    = model.obj.qag_door_to_TS_notification_ave_minutes[0];
                    isExist.qag_door_to_TS_notification_median_minutes = model.obj.qag_door_to_TS_notification_median_minutes[0];
                    isExist.qag_percent10_min_or_less_activation_EMS   = model.obj.qag_percent10_min_or_less_activation_EMS[0];
                    isExist.qag_percent10_min_or_less_activation_PV    = model.obj.qag_percent10_min_or_less_activation_PV[0];
                    //isExist.qag_percent10_min_or_less_activation_Inpt = model.obj.qag_percent10_min_or_less_activation_Inpt[0];
                    isExist.qag_TS_notification_to_response_average_minute = model.obj.qag_TS_notification_to_response_average_minute[0];
                    isExist.qag_TS_notification_to_response_median_minute  = model.obj.qag_TS_notification_to_response_median_minute[0];
                    isExist.qag_percent_TS_at_bedside_grterthan10_minutes  = model.obj.qag_percent_TS_at_bedside_grterthan10_minutes[0];
                    //isExist.qag_alteplase_administered = model.obj.qag_alteplase_administered[0];
                    isExist.qag_door_to_needle_average = model.obj.qag_door_to_needle_average[0];
                    isExist.qag_door_to_needle_median  = model.obj.qag_door_to_needle_median[0];
                    isExist.qag_verbal_order_to_administration_average_minutes             = model.obj.qag_verbal_order_to_administration_average_minutes[0];
                    isExist.qag_DTN_grter_or_equal_30minutes_percent                       = model.obj.qag_DTN_grter_or_equal_30minutes_percent[0];
                    isExist.qag_DTN_grter_or_equal_45minutes_percent                       = model.obj.qag_DTN_grter_or_equal_45minutes_percent[0];
                    isExist.qag_DTN_grter_or_equal_60minutes_percent                       = model.obj.qag_DTN_grter_or_equal_60minutes_percent[0];
                    isExist.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_30minutes_percent[0];
                    isExist.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_45minutes_percent[0];
                    isExist.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent = model.obj.qag_TS_notification_to_needle_grter_or_equal_60minutes_percent[0];
                    _qualityGoalsService.EditGoalData(isExist);
                    _qualityGoalsService.SaveChanges();
                }

                return(Json(new { success = true }));
            }
            else
            {
                return(Json(new { success = false, data = string.Join("<br/>", this.GetModalErrors().Values) }));
            }
        }