示例#1
0
        /// <summary>
        /// Obtiene los datos de los animales que se encuentran enfermos de un corral determinado
        /// </summary>
        /// <param name="ds">Data set</param>
        /// <param name="organizacionId">Identificador </param>
        /// <returns>Lista de animales enfermos de un corral determinado</returns>
        internal static IList <AnimalDeteccionInfo> ObtenerAnimalesEnfermeriaPorCorral(DataSet ds, int organizacionId)
        {
            IList <AnimalDeteccionInfo> animalEnfermeriaInfo;

            try
            {
                Logger.Info();

                var configuracionParametrosDal = new ConfiguracionParametrosDAL();
                var parametro = new ConfiguracionParametrosInfo
                {
                    OrganizacionID = organizacionId,
                    TipoParametro  = (int)TiposParametrosEnum.Imagenes,
                    Clave          = ParametrosEnum.ubicacionFotos.ToString()
                };
                var operadorDal = new OperadorDAL();
                var problemas   = new ProblemaDAL();
                var corralDal   = new CorralDAL();
                var parRuta     = configuracionParametrosDal.ObtenerPorOrganizacionTipoParametroClave(parametro);
                var dt          = ds.Tables[ConstantesDAL.DtDatos];
                animalEnfermeriaInfo = (from info in dt.AsEnumerable()
                                        select new AnimalDeteccionInfo
                {
                    DeteccionID = info.Field <int>("DeteccionID"),
                    RutaFotoDeteccion = parRuta.Valor + info.Field <string>("FotoDeteccion"),
                    Problemas = problemas.ObtenerProblemasDeteccion(new AnimalDeteccionInfo {
                        DeteccionID = info.Field <int>("DeteccionID"), EstatusDeteccion = 0
                    }, null),
                    GradoEnfermedad = new GradoInfo {
                        Descripcion = info.Field <string>("DescripcionGrado"), GradoID = info.Field <int>("GradoID"), NivelGravedad = info.Field <string>("NivelGravedad")
                    },
                    NombreDetector = info.Field <string>("NombreDetector"),
                    DescripcionGanado = new DescripcionGanadoInfo
                    {
                        DescripcionGanadoID = info.Field <int>("DescripcionGanadoID"),
                        Descripcion = info.Field <string>("DescripcionGanado")
                    },
                    Detector = operadorDal.ObtenerPorID(info.Field <int>("OperadorID")),
                    FechaDeteccion = info.Field <DateTime>("FechaDeteccion"),
                    Animal = new AnimalInfo {
                        Arete = info["Arete"] == DBNull.Value ? null: info.Field <string>("Arete"),
                        AreteMetalico = info["AreteMetalico"] == DBNull.Value ? null: info.Field <string>("AreteMetalico")
                    },
                    EnfermeriaCorral = info["CorralID"] == DBNull.Value ? null : new EnfermeriaInfo
                    {
                        FolioEntrada = info["FolioEntrada"] == DBNull.Value ? 0: info.Field <int>("FolioEntrada"),
                        Corral = info["CorralID"] == DBNull.Value ? null : corralDal.ObtenerPorId(info.Field <int>("CorralID"))
                    },
                }).ToList();
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            return(animalEnfermeriaInfo);
        }
示例#2
0
        /// <summary>
        /// Mapea los datos de la lista de grados
        /// </summary>
        /// <param name="ds"></param>
        /// <param name="tratamiento"></param>
        /// <returns></returns>
        internal static IList <HistorialClinicoInfo> ObtenerHistorialClinico(DataSet ds, TratamientoInfo tratamiento)
        {
            IList <HistorialClinicoInfo> historial;

            try
            {
                Logger.Info();
                DataTable dt           = ds.Tables[ConstantesDAL.DtDatos];
                var       problemasDal = new ProblemaDAL();

                historial = (from info in dt.AsEnumerable()
                             select new HistorialClinicoInfo
                {
                    DeteccionId = info["DeteccionAnimalID"] == DBNull.Value ? 0 : info.Field <int>("DeteccionAnimalID"),
                    AnimalMovimientoId = info.Field <long>("AnimalMovimientoID"),
                    FechaEntrada = info.Field <DateTime>("FechaEntrada"),
                    FechaSalida = info["FechaSalida"] == DBNull.Value ? new DateTime(): info.Field <DateTime>("FechaSalida"),
                    Peso = info.Field <int>("Peso"),
                    Temperatura = info.Field <decimal>("Temperatura"),
                    Tratamiento = info.Field <string>("Tratamientos"),
                    CodigoTratamiento = info.Field <string>("CodigoTratamientos"),
                    GradoEnfermedad = new GradoInfo {
                        GradoID = info["GradoID"] == DBNull.Value ? 0 : info.Field <int>("GradoID"),
                        Descripcion = info["DescripcionGrado"] == DBNull.Value ? string.Empty : info.Field <string>("DescripcionGrado"),
                        NivelGravedad = info["NivelGravedad"] == DBNull.Value ? string.Empty : info.Field <string>("NivelGravedad")
                    },
                    ListaProblemas = problemasDal.ObtenerProblemasDeteccion(
                        new AnimalDeteccionInfo
                    {
                        DeteccionID = info["DeteccionAnimalID"] == DBNull.Value ? 0 : info.Field <int>("DeteccionAnimalID"),
                        EstatusDeteccion = 1
                    },
                        new TratamientoInfo
                    {
                        OrganizacionId = tratamiento.OrganizacionId,
                        Sexo = tratamiento.Sexo,
                        Peso = info.Field <int>("Peso"),
                        CodigoTratamiento = tratamiento.CodigoTratamiento
                    })
                }).ToList();
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            return(historial);
        }