コード例 #1
0
 public IHttpActionResult Post(int doctorId, [FromBody] GeneralConsult req)
 {
     if (service.SaveGeneralConsult(doctorId, req))
     {
         return(Ok());
     }
     else
     {
         return(NotFound());
     }
 }
コード例 #2
0
        public bool SaveGeneralConsult(int doctorId, GeneralConsult req)
        {
            try
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    var now = DateTime.Now;

                    //patient
                    Paciente p = Context.Paciente.FirstOrDefault(x => x.idPaciente == req.PatientId);
                    p.AlergiaMedicina = req.Allergies;
                    p.AlergiaOtros    = req.Reserved;
                    p.Patologia       = req.RelevantPathologies;
                    Context.SaveChanges();

                    //consult
                    var consult = new Consultas
                    {
                        idmedico               = doctorId,
                        idpaciente             = req.PatientId,
                        Peso                   = req.Weight,
                        Altura                 = req.Size,
                        Temperatura            = req.Temperature,
                        TensionArterial        = req.BloodPressure_A,
                        TensionArterialB       = req.BloodPressure_B,
                        perimetroCefalico      = req.HeadCircuference,
                        FrecuenciaCardiaca     = req.HeartRate,
                        FrecuenciaRespiratoria = req.BreathingFrecuency,
                        motivo                 = req.ReasonForConsultation,
                        SignosSintomas1        = req.PhysicalExploration,
                        MedidasPreventivas     = req.PreventiveMeasures,
                        observaciones          = req.Observations,
                        Fecha                  = now,
                        Pronostico             = req.Prognostic != null?string.Join("|", req.Prognostic) : ""
                    };

                    Context.Consultas.Add(consult);
                    Context.SaveChanges();

                    //treatments
                    var treatments = new Recetas
                    {
                        idconsulta = consult.idconsulta,
                        idmedico   = doctorId,
                        idpaciente = req.PatientId,
                        Fecha      = now,
                        Lineas     = SetLines(req.Treatments)
                    };

                    Context.Recetas.Add(treatments);
                    Context.SaveChanges();

                    //diagnostics
                    var diagnostics = new Diagnosticos
                    {
                        idconsulta = consult.idconsulta,
                        idmedico   = doctorId,
                        idpaciente = req.PatientId.GetValueOrDefault(),
                        Fecha      = now,
                        Lineas     = SetLines(req.Diagnostics)
                    };

                    Context.Diagnosticos.Add(diagnostics);
                    Context.SaveChanges();

                    //laboratory studies
                    var laboratory = new EstudiosLab
                    {
                        idconsulta = consult.idconsulta,
                        idmedico   = doctorId,
                        idpaciente = req.PatientId,
                        Fecha      = now,
                        Lineas     = SetLines(req.LaboratoryStudies)
                    };

                    Context.EstudiosLab.Add(laboratory);
                    Context.SaveChanges();

                    //cabinet studies
                    var cabinet = new EstudiosGab
                    {
                        idconsulta = consult.idconsulta,
                        idmedico   = doctorId,
                        idpaciente = req.PatientId,
                        Fecha      = now,
                        Lineas     = SetLines(req.CabinetStudies)
                    };

                    Context.EstudiosGab.Add(cabinet);
                    Context.SaveChanges();

                    scope.Complete();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                Log.Write($"WebAPI.Services._Consults - SaveGeneralConsult => ${ex.Message}");
            }
            return(false);
        }