public async Task <IActionResult> Edit(Int32?analysisId, Int32?patientId, AnalysisCreateAndEditModel model) { if (analysisId == null || patientId == null) { return(NotFound()); } var analysis = await context.Analyses .Include(w => w.Patient) .SingleOrDefaultAsync(m => m.AnalysisId == analysisId && m.PatientId == patientId); if (analysis == null) { return(this.NotFound()); } this.ViewData["LabId"] = new SelectList(this.context.Labs, "Id", "Name"); this.ViewBag.Analysis = analysis; if (this.ModelState.IsValid) { analysis.Type = model.Type; analysis.Date = model.Date; analysis.Status = model.Status; analysis.LabId = model.LabId; await this.context.SaveChangesAsync(); return(this.RedirectToAction("Index", new { patientId = analysis.PatientId })); } return(this.View(model)); }
// GET: Analyses/Edit/5 public async Task <IActionResult> Edit(Int32?analysisId, Int32?patientId) { if (analysisId == null || patientId == null) { return(NotFound()); } var analysis = await context.Analyses .Include(w => w.Patient) .SingleOrDefaultAsync(m => m.AnalysisId == analysisId && m.PatientId == patientId); if (analysis == null) { return(this.NotFound()); } this.ViewData["LabId"] = new SelectList(this.context.Labs, "Id", "Name"); this.ViewBag.Analysis = analysis; var model = new AnalysisCreateAndEditModel { Type = analysis.Type, Date = analysis.Date, Status = analysis.Status, LabId = analysis.LabId == null ? -1 : (int)analysis.LabId }; return(this.View(model)); }
public async Task <IActionResult> Create(Int32?patientId, AnalysisCreateAndEditModel model) { if (patientId == null) { return(this.NotFound()); } var patient = await this.context.Patients .SingleOrDefaultAsync(x => x.Id == patientId); if (patient == null) { return(this.NotFound()); } var lab = await this.context.Labs .SingleOrDefaultAsync(x => x.Id == model.LabId); var analyses = await context.Analyses.ToListAsync(); var count = analyses.Count(); if (this.ModelState.IsValid) { var newLab = new Lab(); newLab = lab; var analysis = new Analysis { AnalysisId = ++count, PatientId = patient.Id, Patient = patient, LabId = model.LabId, Lab = newLab, Type = model.Type, Date = model.Date, Status = model.Status }; this.context.Add(analysis); await this.context.SaveChangesAsync(); return(this.RedirectToAction("Index", new { patientId = patient.Id })); } this.ViewBag.Patient = patient; this.ViewData["LabId"] = new SelectList(this.context.Labs, "Id", "Name"); //TODO: fix return(this.View(model)); }