/// <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> ObtenerAnimalesEnfermeriaPorCorralSinActivo(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.ObtenerProblemasDeteccionSinActivo(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); }
/// <summary> /// Obtiene un Operador por Id /// </summary> /// <param name="operadorID"></param> /// <returns></returns> internal OperadorInfo ObtenerPorID(int operadorID) { OperadorInfo operadorInfo; try { Logger.Info(); var operadorDAL = new OperadorDAL(); operadorInfo = operadorDAL.ObtenerPorID(operadorID); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(operadorInfo); }
/// <summary> /// Mapea los datos de la tabla muerte /// </summary> /// <param name="ds"></param> /// <returns></returns> internal static IList <MuerteInfo> ObtenerAretesMuertosRecoleccion(DataSet ds) { try { Logger.Info(); DataTable dt = ds.Tables[ConstantesDAL.DtDatos]; var dalOperador = new OperadorDAL(); IList <MuerteInfo> lista = (from info in dt.AsEnumerable() select new MuerteInfo() { OrganizacionId = info.Field <int>("OrganizacionId"), MuerteId = info.Field <int>("MuerteId"), Arete = info.Field <string>("Arete").Trim(), AreteMetalico = info.Field <string>("AreteMetalico").Trim(), Observaciones = info.Field <string>("Observaciones").Trim(), LoteId = info.Field <int>("LoteId"), LoteCodigo = info.Field <string>("Lote").Trim(), CorralId = info.Field <int>("CorralId"), CorralCodigo = info.Field <string>("Codigo").Trim(), OperadorDeteccionId = info.Field <int>("OperadorDeteccion"), OperadorDeteccionInfo = dalOperador.ObtenerPorID(info.Field <int>("OperadorDeteccion")), FechaDeteccion = info.Field <DateTime>("FechaDeteccion"), FotoDeteccion = info.Field <string>("FotoDeteccion").Trim(), EstatusId = info.Field <int>("EstatusID"), ProblemaId = info.Field <int>("ProblemaID"), FechaCreacion = info.Field <DateTime>("FechaCreacion"), Activo = info.Field <bool>("Activo").BoolAEnum(), Comentarios = info.Field <string>("Comentarios").Trim() }).ToList(); return(lista); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }