public IActionResult Add(PatientReceptionViewModel model) { if (model.DateOfReception < DateTime.Now) { ModelState.AddModelError("", "Minimum date and time must be today's day"); } var doctor = _doctorsRepository.GetById(model.DoctorId); if (!doctor.Title.Equals("Specialist")) { ModelState.AddModelError("", "Doctor's title must be Specialist!"); } if (!ModelState.IsValid) { return(View(model)); } try { PatientReception patientReception = model; _PatientReceptionsRepository.Add(patientReception); _PatientReceptionsRepository.SaveChanges(); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { return(View(model)); } }
public IActionResult Add(PatientMedicalReportViewModel model) { if (!ModelState.IsValid) { return(View(model)); } using (var transaction = _patientMedicalReportsRepository.BeginTransaction()) { try { PatientMedicalReport patientMedicalReport = model; patientMedicalReport.DateTimeCreated = DateTime.Now; _patientMedicalReportsRepository.Add(patientMedicalReport); PatientReception patientReception = _patientReceptionsRepository.GetById(patientMedicalReport.PatientReceptionsId); patientReception.IsThereMedicalReport = true; _patientReceptionsRepository.Update(patientReception); _patientMedicalReportsRepository.SaveChanges(); _patientReceptionsRepository.SaveChanges(); transaction.Commit(); return(RedirectToAction("Index", "PatientReceptions")); } catch (Exception) { transaction.Rollback(); return(RedirectToAction("Index", "PatientReceptions")); } } }
public IActionResult Delete(int id) { try { PatientReception patientReception = _PatientReceptionsRepository.GetById(id); if (patientReception.IsThereMedicalReport) { return(RedirectToAction("Index")); } _PatientReceptionsRepository.RemoveById(id); _PatientReceptionsRepository.SaveChanges(); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { return(BadRequest()); } }