public JsonResult GetEncounterSummary(int tokenNumber, DateTime createdDate, string arogyaID)
 {
     EncounterSummaryModel encounter = new EncounterSummaryBll().GetEncounterSummary(tokenNumber, createdDate, arogyaID);
     return Json(JsonConvert.SerializeObject(encounter), JsonRequestBehavior.AllowGet);
 }
        public ActionResult VideoCasesheet(string arogyaID)
        {
            ArogyaParivarEntities context = new ArogyaParivarEntities();
            List<Episode> episodes = new List<Episode>();
            List<Episode> finalEpisodes = new List<Episode>();

            EncounterSummaryBll encounterSummaryBll = new EncounterSummaryBll();

            List<EncounterSummaryModel> encounters = encounterSummaryBll.GetEncounterList(arogyaID).OrderBy(x => x.CreateDate.Value).ToList();
            List<T_Appointments> appointments = encounterSummaryBll.GetAppointmentList(arogyaID);

            foreach (EncounterSummaryModel encounter in encounters)
            {
                Episode episode;
                var eps = episodes.FindAll(x => x.ComplaintID == encounter.ComplaintID.Value);
                if (eps.Count == 0)
                {
                    episode = new Episode { ComplaintID = encounter.ComplaintID.Value, ComplaintName = encounter.ComplaintName, LastModifiedDate = encounter.CreateDate.Value };
                    episode.encounterSummaryList.Add(encounter);
                    episodes.Add(episode);
                }
                else
                {
                    if (encounter.CreateDate.Value.Date.Subtract(eps[eps.Count - 1].LastModifiedDate.Date).Days < 30
                        || appointments.Where(x => encounter.CreateDate.Value.Date.Subtract(x.ApptDate.Value.Date).Days < 30
                                                    && x.ApptDate.Value.Date.Subtract(eps[eps.Count - 1].LastModifiedDate.Date).Days > 0
                                                    && x.ComplaintID == encounter.ComplaintID
                                             ).ToList().Count > 0)
                    {
                        eps[eps.Count - 1].LastModifiedDate = encounter.CreateDate.Value;
                        eps[eps.Count - 1].encounterSummaryList.Add(encounter);
                    }
                    else
                    {
                        episode = new Episode { ComplaintID = encounter.ComplaintID.Value, ComplaintName = encounter.ComplaintName, LastModifiedDate = encounter.CreateDate.Value };
                        episode.encounterSummaryList.Add(encounter);
                        episodes.Add(episode);
                    }
                }
            }
            episodes = episodes.OrderByDescending(x => x.LastModifiedDate).ToList();
            ViewBag.Episodes = JsonConvert.SerializeObject(episodes);
            return View();
        }