Example #1
0
        // GET: Consults/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Consultation consultation = await db.Consultations.FindAsync(id);

            if (consultation == null)
            {
                return(HttpNotFound());
            }
            EditConsultViewModel editConsultViewModel = new EditConsultViewModel();

            editConsultViewModel.Id                     = (int)consultation.ConsultationID;
            editConsultViewModel.PatientId              = (int)consultation.PersonID;
            editConsultViewModel.PatientName            = consultation.Person.FullName;
            editConsultViewModel.AdmittedBy             = consultation.AdmittedBy;
            editConsultViewModel.DateOfConsult          = consultation.DateOfConsult;
            editConsultViewModel.PreviousConsultDate    = (DateTime)consultation.PreviousConsultDate;
            editConsultViewModel.PreviousConsult        = consultation.PreviousConsult;
            editConsultViewModel.ChiefComplaint         = consultation.ChiefComplaint;
            editConsultViewModel.Age                    = consultation.Age;
            editConsultViewModel.BPFirstReading         = consultation.BPFirstReading;
            editConsultViewModel.BPSecondReading        = consultation.BPSecondReading;
            editConsultViewModel.BPAverage              = consultation.BPAverage;
            editConsultViewModel.RaisedBP               = consultation.RaisedBP;
            editConsultViewModel.PulseRate              = consultation.PulseRate;
            editConsultViewModel.RR                     = consultation.RR;
            editConsultViewModel.Temperature            = consultation.Temperature;
            editConsultViewModel.WeightInKgms           = consultation.WeightInKgms;
            editConsultViewModel.HeightInCm             = consultation.HeightInCm;
            editConsultViewModel.WaistCircumferenceInCm = consultation.WaistCircumferenceInCm;
            editConsultViewModel.CentralAdiposity       = consultation.CentralAdiposity;
            editConsultViewModel.BMI                    = consultation.BMI;
            editConsultViewModel.BMIStatus              = consultation.BMIStatus;
            editConsultViewModel.History                = consultation.History;
            editConsultViewModel.Pharmacy               = consultation.Pharmacy;
            editConsultViewModel.PhysicianID            = consultation.PhysicianID;

            PopulatePhysicianDropDownList(consultation.PhysicianID);
            return(View(editConsultViewModel));
        }
Example #2
0
        public async Task <ActionResult> Edit([Bind(Include = "Id,PatientId,PatientName,AdmittedBy,DateOfConsult,PreviousConsultDate,PreviousConsult,ChiefComplaint,Age,BPFirstReading,BPSecondReading,BPAverage,RaisedBP,PulseRate,RR,Temperature,WeightInKgms,HeightInCm,WaistCircumferenceInCm,CentralAdiposity,BMI,BMIStatus,History,PhysicalExam,ManagementTreatment,Recommendation,Pharmacy,PhysicianID")] EditConsultViewModel editConsultViewModel)
        {
            if (ModelState.IsValid)
            {
                Consultation consultation = await db.Consultations.FindAsync(editConsultViewModel.Id);

                consultation.PersonID = editConsultViewModel.PatientId;

                consultation.AdmittedBy          = editConsultViewModel.AdmittedBy;
                consultation.DateOfConsult       = editConsultViewModel.DateOfConsult;
                consultation.PreviousConsultDate = editConsultViewModel.PreviousConsultDate;
                consultation.PreviousConsult     = editConsultViewModel.PreviousConsult;
                consultation.ChiefComplaint      = editConsultViewModel.ChiefComplaint;
                consultation.Age             = editConsultViewModel.Age;
                consultation.BPFirstReading  = editConsultViewModel.BPFirstReading;
                consultation.BPSecondReading = editConsultViewModel.BPSecondReading;
                consultation.BPAverage       = editConsultViewModel.BPAverage;
                consultation.RaisedBP        = editConsultViewModel.RaisedBP;
                consultation.PulseRate       = editConsultViewModel.PulseRate;
                consultation.RR                     = editConsultViewModel.RR;
                consultation.Temperature            = editConsultViewModel.Temperature;
                consultation.WeightInKgms           = editConsultViewModel.WeightInKgms;
                consultation.HeightInCm             = editConsultViewModel.HeightInCm;
                consultation.WaistCircumferenceInCm = editConsultViewModel.WaistCircumferenceInCm;
                consultation.CentralAdiposity       = editConsultViewModel.CentralAdiposity;

                if ((editConsultViewModel.WeightInKgms > 0) | (editConsultViewModel.HeightInCm > 0))
                {
                    var heightsquare = (editConsultViewModel.HeightInCm / 100) * (editConsultViewModel.HeightInCm / 100);
                    var bmi          = editConsultViewModel.WeightInKgms / heightsquare;
                    consultation.BMI = bmi;
                    if (bmi <= (18.5m))
                    {
                        consultation.BMIStatus = BMIStatus.Underweight;
                    }
                    else if (bmi <= (25))
                    {
                        consultation.BMIStatus = BMIStatus.Normal;
                    }
                    else if (bmi <= 30)
                    {
                        consultation.BMIStatus = BMIStatus.Overweight;
                    }
                    else
                    {
                        consultation.BMIStatus = BMIStatus.Obese;
                    }
                }
                consultation.History             = editConsultViewModel.History;
                consultation.PhysicalExam        = editConsultViewModel.PhysicalExam;
                consultation.DiagnosisLabResult  = editConsultViewModel.DiagnosisLabResult;
                consultation.ManagementTreatment = editConsultViewModel.ManagementTreatment;
                consultation.Recommendation      = editConsultViewModel.Recommendation;
                consultation.Pharmacy            = editConsultViewModel.Pharmacy;
                consultation.PhysicianID         = editConsultViewModel.PhysicianID;

                db.Entry(consultation).State = EntityState.Modified;

                await db.SaveChangesAsync();

                return(RedirectToAction("Details", "Consults", new { id = editConsultViewModel.Id }));

                //return RedirectToAction("Index");
            }
            return(View(editConsultViewModel));
        }