public ActionResult AdherenceChart(AdherenceViewModel reportViewModel, string userId, string StartDate, string EndDate)
        {
            var adherenceScore = db.GetMedicationAdherenceOverAllScore(userId, Convert.ToDateTime(StartDate), Convert.ToDateTime(EndDate)).SingleOrDefault();

            if (adherenceScore.HasValue)
            {
                reportViewModel.AdherenceScore = (int)adherenceScore;
            }
            else
            {
                reportViewModel.AdherenceScore = 0;
            }

            return(PartialView(reportViewModel));
        }
        public ActionResult Adherence()
        {
            var vm    = new AdherenceViewModel();
            var users = db.GetUsers().Select(x => new UserViewModel
            {
                UserId      = x.UserId,
                FirstName   = x.FirstName,
                LastName    = x.LastName,
                AspUserName = x.AspUserName
            }).ToList();

            vm.UserSelectList = new SelectList(users, "UserId", "DisplayName");
            vm.StartDate      = DateTime.Now;
            vm.EndDate        = DateTime.Now;

            return(View(vm));
        }
Beispiel #3
0
        public ActionResult MedAdherence_Read([DataSourceRequest] DataSourceRequest request, AdherenceViewModel reportViewModel, string userId, string StartDate, string EndDate)
        {
            var adherenceGroups = db.GetMedicationAdherenceByMed(userId, Convert.ToDateTime(StartDate), Convert.ToDateTime(EndDate)).ToList();

            reportViewModel.MedTable.Columns.Add("Medication", typeof(string)).Caption   = "Medication";
            reportViewModel.MedTable.Columns.Add("ScheduleDate", typeof(string)).Caption = "ScheduleDate";
            reportViewModel.MedTable.Columns.Add("ActivityDate", typeof(string)).Caption = "ActivityDate";
            reportViewModel.MedTable.Columns.Add("Status", typeof(string)).Caption       = "Status";
            reportViewModel.MedTable.Columns.Add("Score", typeof(double)).Caption        = "Score";

            foreach (var Group in adherenceGroups)
            {
                var row = reportViewModel.MedTable.NewRow();
                row[0] = Group.DrugName;
                row[1] = Convert.ToDateTime(Group.ScheduleDate.ToString()).ToString("MM/dd/yyyy HH:mm:ss");
                if (Group.ActivityDate != null)
                {
                    row[2] = Convert.ToDateTime(Group.ActivityDate.ToString()).ToString("MM/dd/yyyy HH:mm:ss");
                    if (Group.ActivityTypeId.Equals(1))
                    {
                        row[3] = "Taken";
                    }
                    else
                    {
                        row[3] = "Skipped";
                    }
                }
                else
                {
                    row[3] = "Missed";
                    row[2] = "";
                }
                row[4] = Group.Score;

                reportViewModel.MedTable.Rows.Add(row);
            }
            return(Json(reportViewModel.MedTable.ToDataSourceResult(request), JsonRequestBehavior.AllowGet));
        }