コード例 #1
0
        public async Task <IActionResult> Create(PatientExaminationViewModel patientExamVM)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    int id = await PatientsHelper.AddPatientExAsync(patientExamVM);

                    await AppDataHelper.CheckReagentsStockAsync(_context);

                    if (!Request.Cookies.ContainsKey("reagentAlert"))
                    {
                        Response.Cookies.Append("reagentAlert", "true", new CookieOptions {
                            Expires = DateTime.Now.AddMinutes(10)
                        });
                    }
                    return(RedirectToAction(nameof(Details), new { id = id }));
                }
            }
            catch (DbUpdateException)
            {
                //Log the error
                ModelState.AddModelError("", "Unable to save changes. " +
                                         "Try again, and if the problem persists " +
                                         "see your system administrator.");
            }
            return(RedirectToAction(nameof(Create), new { id = patientExamVM.PatientID }));
        }
コード例 #2
0
 private static PatientExamination SimplifyPE(PatientExaminationViewModel patientExaminationViewModel)
 {
     return(new PatientExamination()
     {
         PatientID = patientExaminationViewModel.PatientID ?? default,
         ExaminationID = patientExaminationViewModel.ExaminationID,
         DateOfExamination = patientExaminationViewModel.DateOfExamination.ToUniversalTime(),
         DateOfIssue = DateTime.UtcNow,
         ResultsReceived = false,
         ExaminationFinished = false
     });
コード例 #3
0
        public static async Task <int> AddPatientExAsync(PatientExaminationViewModel patientExaminationVM)
        {
            PatientExamination patientExamination = SimplifyPE(patientExaminationVM);

            _context.PatientExaminations.Add(patientExamination);

            if (await _context.ExaminationReagents.Where(e => e.ExaminationID == patientExamination.ExaminationID).AnyAsync())
            {
                ReagentHelper.Init(_context);
                await ReagentHelper.ReduceReagentsAsync(patientExamination.ExaminationID);
            }

            await _context.SaveChangesAsync();

            return(patientExamination.ID);
        }
コード例 #4
0
        // GET: PatientExaminations/Create
        public async Task <IActionResult> Create(int?id)
        {
            ViewBag.Examinations = _context.Examinations.Select(e => new SelectListItem()
            {
                Value = e.ID.ToString(),
                Text  = e.ExCode + " | " + e.Name
            });

            if (id == null)
            {
                ViewBag.Patients = _context.Patients.Select(p => new SelectListItem()
                {
                    Value = p.ID.ToString(),
                    Text  = p.InsuranceNumber + " | " + p.LastName + ", " + p.FirstName
                });
                return(View());
            }
            else
            {
                PatientExaminationViewModel patientExamination = await PatientsHelper.GetPatientExByIdAsync((int)id);

                return(View(patientExamination));
            }
        }