Пример #1
0
        public RespuestaBD RegistrarAtencionTrabajador(NuevaAtencionTrabajador nuevaAtencionTrabajador)
        {
            using (InoBD db = new InoBD())
            {
                AtencionTrabajador pacienteEncontrado = db.AtencionTrabajador.Where(x => x.FechaCreacion.Day == DateTime.Now.Day &&
                                                                                    x.FechaCreacion.Month == DateTime.Now.Month &&
                                                                                    x.FechaCreacion.Year == DateTime.Now.Year &&
                                                                                    x.HistoriaClinica == nuevaAtencionTrabajador.HistoriaClinica).FirstOrDefault();
                if (pacienteEncontrado == null)
                {
                    AtencionTrabajador atencionTrabajador = Mapper.Map <AtencionTrabajador>(nuevaAtencionTrabajador);
                    db.AtencionTrabajador.Add(atencionTrabajador);
                    db.SaveChanges();

                    foreach (var diagnostico in nuevaAtencionTrabajador.Diagnosticos)
                    {
                        AtencionTrabajador_Diagnostico atencion_Diagnostico = new AtencionTrabajador_Diagnostico
                        {
                            IdAtencionTrabajador = atencionTrabajador.IdAtencionTrabajador,
                            IdDiagnostico        = diagnostico.Id,
                            TipoDiagnostico      = diagnostico.Codigo,
                            IdUsuarioCreacion    = nuevaAtencionTrabajador.IdUsuarioCreacion
                        };
                        db.AtencionTrabajador_Diagnostico.Add(atencion_Diagnostico);
                        db.SaveChanges();
                    }

                    //Mensaje de respuesta
                    respuesta.Id      = atencionTrabajador.IdAtencionTrabajador;
                    respuesta.Mensaje = "Se guardó la atención correctamente.";

                    // Auditoria
                    AuditoriaGeneral auditoria = new AuditoriaGeneral
                    {
                        Accion          = "Agregar",
                        NombreTabla     = "AtencionTrabajador",
                        ValoresAntiguos = null,
                        ValoresNuevos   = JsonConvert.SerializeObject(nuevaAtencionTrabajador),
                        IdUsuario       = nuevaAtencionTrabajador.IdUsuarioCreacion
                    };
                    this._gestorDeAuditoria.AgregarAuditoria(auditoria);
                }
                else
                {
                    //Mensaje de respuesta
                    respuesta.Id      = 0;
                    respuesta.Mensaje = "El paciente ya cuenta con un registro para el día de hoy, intente de nuevo.";
                }
            }
            return(respuesta);
        }
Пример #2
0
 //[RequiereAutenticacion]
 public RespuestaBD RegistrarAtencionTrabajador(NuevaAtencionTrabajador nuevaAtencionTrabajador)
 {
     return(_gestorDeAtencionesTrabajadores.RegistrarAtencionTrabajador(nuevaAtencionTrabajador));
 }