コード例 #1
0
        private HttpResponseMessage AddCheckIn(PatientCheckIn p)
        {
            AddHeader();
            var response = _client.PostAsJsonAsync(apiUrl + "PatientCheckIns", p).Result;

            return(response);
        }
コード例 #2
0
 public async Task <IActionResult> PostAjax(int id)
 {
     if (id > 0)
     {
         try
         {
             //var user = _userManager.GetUserAsync(User).Result;
             var response = GetWaitingPatient(id);
             if (response.IsSuccessStatusCode)
             {
                 var patient     = JsonConvert.DeserializeObject <PatientWaitingList>(response.Content.ReadAsStringAsync().Result);
                 var patientData = new PatientCheckIn {
                     PatientId = patient.PatientId, Arrival = patient.Arrival, HospitalID = patient.HospitalID, Infections = patient.Infections, Time_checked_in = patient.Time_checked_in, Time_triaged = patient.Time_triaged
                 };
                 var r = RemoveWaiting(patient.Id);
                 if (r.IsSuccessStatusCode)
                 {
                     var s = AddCheckIn(patientData);
                     if (s.IsSuccessStatusCode)
                     {
                         await HubContext.Clients.All.SendAsync("ReceiveNotification", patient.HospitalID);
                     }
                 }
                 else
                 {
                     return(Json("Patient already exists in the list"));
                 }
             }
         }
         catch (DbUpdateConcurrencyException)
         {
             throw;
         }
         return(Json("Success"));
     }
     return(Json("Error"));
 }
コード例 #3
0
        public async Task <IActionResult> Post(int id)
        {
            int i = id;

            //Int32.TryParse(id, out i);
            if (i > 0)
            {
                try
                {
                    var response = GetWaitingPatient(id);
                    if (response.IsSuccessStatusCode)
                    {
                        var patient     = JsonConvert.DeserializeObject <PatientWaitingList>(response.Content.ReadAsStringAsync().Result);
                        var patientData = new PatientCheckIn {
                            PatientId = patient.PatientId, Arrival = patient.Arrival, HospitalID = patient.HospitalID, Infections = patient.Infections, Time_checked_in = patient.Time_checked_in, Time_triaged = patient.Time_triaged
                        };
                        var r = RemoveWaiting(patient.Id);
                        if (r.IsSuccessStatusCode)
                        {
                            var s = AddCheckIn(patientData);
                            await HubContext.Clients.All.SendAsync("ReceiveNotification", patient.HospitalID);
                        }
                        else
                        {
                            TempData["Error"] = r.Content.ReadAsStringAsync().Result;
                            return(RedirectToAction(nameof(HomeController.Index), "Home"));
                        }
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    throw;
                }
            }
            return(RedirectToAction(nameof(HomeController.Index), "Home"));
        }
コード例 #4
0
 /// <summary>
 /// Remove encounter from a patient check in
 /// </summary>
 /// <param name="checkIn">check in to remove the encounter from</param>
 public void RemoveEncounter(PatientCheckIn checkIn)
 {
     PatientCheckIns.Remove(checkIn);
 }
コード例 #5
0
 /// <summary>
 /// Add encounter to a patient check in
 /// </summary>
 /// <param name="checkIn">check in to add the encounter to</param>
 public void AddEncounter(PatientCheckIn checkIn)
 {
     PatientCheckIns.Add(checkIn);
 }
コード例 #6
0
        public async Task <IActionResult> Register(PatientCheckInViewModel patientData)
        {
            if (ModelState.IsValid)
            {
                Patient patient = null;



                try
                {
                    patientData.Time_checked_in = GetNow();
                    if (patientData.PPS != "" && patientData.PPS != null)
                    {
                        var response = GetByPps(patientData.PPS);
                        if (response.IsSuccessStatusCode)
                        {
                            patient = JsonConvert.DeserializeObject <Patient>(response.Content.ReadAsStringAsync().Result);
                        }
                    }
                    else
                    {
                        var response = GetAll();
                        if (response.IsSuccessStatusCode)
                        {
                            var patients = JsonConvert.DeserializeObject <IEnumerable <Patient> >(response.Content.ReadAsStringAsync().Result);

                            patients = patients.Where(p => p.Full_name == patientData.Full_name);
                            patients = patients.Where(p => p.Gender == patientData.Gender);
                            if (patientData.Date_of_birth != null)
                            {
                                patients = patients.Where(p => p.Date_of_birth == patientData.Date_of_birth);
                            }
                            if (patients.Count() > 0)
                            {
                                patient = patients.First();
                            }
                        }
                    }
                    if (patient == null)
                    {
                        patient = new Patient {
                            PPS = patientData.PPS, Full_name = patientData.Full_name, Gender = patientData.Gender, Date_of_birth = patientData.Date_of_birth, Nationality = patientData.Nationality, Address = patientData.Address
                        };
                        var response = Add(patient);
                        if (response.IsSuccessStatusCode)
                        {
                            var ee = response.Content;
                            var bb = response.Content.ReadAsStringAsync().Result;
                            patient = JsonConvert.DeserializeObject <Patient>(response.Content.ReadAsStringAsync().Result);

                            var ii = 0;
                        }
                    }
                    var patientCheckIn = new PatientCheckIn {
                        PatientId = patient.Id, HospitalID = patientData.HospitalID, Arrival = patientData.Arrival, Infections = patientData.Infections, Time_checked_in = patientData.Time_checked_in
                    };
                    var r = AddCheckIn(patientCheckIn);
                    if (r.IsSuccessStatusCode)
                    {
                        await HubContext.Clients.All.SendAsync("ReceiveNotification", patientData.HospitalID);
                    }
                    else
                    {
                        ViewData["Error"] = r.Content.ReadAsStringAsync().Result;
                        return(View(patientData));
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    throw;
                }
                return(RedirectToAction(nameof(HomeController.Index), "Home"));
            }
            List <SelectListItem> list = GetPPSList();

            ViewBag.PPS = list; //selectList;
            return(View(patientData));
        }