/// <summary>
 /// Obtiene los datos para el Reporte Venta Muerte
 /// </summary>
 /// <returns> </returns>
 internal ReporteVentaMuerteDatos GenerarReporteVentaMuerte(int organizacionID, DateTime fechaInicial, DateTime fechaFinal)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxReporteVentaMuerteDAL.ObtenerParametrosReporte(
             organizacionID, fechaInicial, fechaFinal);
         DataSet ds = Retrieve("ReporteVentaMuerte_Obtener", parameters);
         ReporteVentaMuerteDatos result = null;
         if (ValidateDataSet(ds))
         {
             result = MapReporteVentaMuerteDAL.ObtenerDatosReporte(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Obtiene los datos para el Reporte Venta Muerte
        /// </summary>
        /// <returns> </returns>
        public List <ReporteVentaMuerteInfo> GenerarReporteVentaMuerte(int organizacionID, DateTime fechaInicial, DateTime fechaFinal)
        {
            List <ReporteVentaMuerteInfo> lista = null;

            try
            {
                Logger.Info();
                var reporteVentaMuerteDAL            = new ReporteVentaMuerteDAL();
                ReporteVentaMuerteDatos datosReporte = reporteVentaMuerteDAL.GenerarReporteVentaMuerte(organizacionID,
                                                                                                       fechaInicial,
                                                                                                       fechaFinal);
                if (datosReporte != null)
                {
                    lista = GenerarReporte(datosReporte);
                }
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(lista);
        }
Esempio n. 3
0
        /// <summary>
        /// Genera los datos del reporte
        /// </summary>
        /// <param name="datosReporte"></param>
        /// <returns></returns>
        private List <ReporteVentaMuerteInfo> GenerarReporte(ReporteVentaMuerteDatos datosReporte)
        {
            var resultado = new List <ReporteVentaMuerteInfo>();

            datosReporte.MovimientosEnfermeria.ForEach(animalEnfermo =>
            {
                var reporteVentaMuerte = new ReporteVentaMuerteInfo
                {
                    Arete      = animalEnfermo.Arete,
                    Causa      = animalEnfermo.Causa,
                    Enfermeria =
                        animalEnfermo.
                        Enfermeria,
                    Sexo     = animalEnfermo.Sexo,
                    Fecha    = animalEnfermo.Fecha.ToShortDateString(),
                    Detector = animalEnfermo.Detector
                };

                reporteVentaMuerte.CorralOrigen =
                    datosReporte.MovimientosProduccion.Where(
                        condicion =>
                        condicion.AnimalID == animalEnfermo.AnimalID).
                    Select(corral => corral.CorralProduccion).
                    FirstOrDefault();

                reporteVentaMuerte.LugarGeneracion =
                    reporteVentaMuerte.CorralOrigen;

                List <ReporteVentaMuerteTratamiento> tratamientos =
                    datosReporte.Tratamientos.Where(
                        condicion =>
                        condicion.AnimalID == animalEnfermo.AnimalID).
                    Select(
                        tratamiento => tratamiento)
                    .ToList();
                if (tratamientos.Any())
                {
                    AsignarTratamientos(tratamientos, reporteVentaMuerte);
                }

                ReporteVentaMuerteFolio folio =
                    datosReporte.Folios.FirstOrDefault(
                        condicion =>
                        condicion.AnimalID == animalEnfermo.AnimalID);
                if (folio != null)
                {
                    reporteVentaMuerte.Partida            = folio.FolioEntrada;
                    reporteVentaMuerte.OrganizacionOrigen =
                        folio.Organizacion;
                    reporteVentaMuerte.DiasEngorda = folio.DiasEngorda;
                }

                resultado.Add(reporteVentaMuerte);
            });
            return(resultado);
        }
Esempio n. 4
0
        /// <summary>
        /// Obtiene los datos del reporte
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        internal static ReporteVentaMuerteDatos ObtenerDatosReporte(DataSet ds)
        {
            ReporteVentaMuerteDatos resultado;

            try
            {
                Logger.Info();
                DataTable dtMovimientosEnfermeria   = ds.Tables[ConstantesDAL.DtMovimientosEnfermeria];
                DataTable dtMovimientosProduccion   = ds.Tables[ConstantesDAL.DtMovimientosProduccion];
                DataTable dtMovimientosTratamientos = ds.Tables[ConstantesDAL.DtTratamientos];
                DataTable dtFolios = ds.Tables[ConstantesDAL.DtFolios];

                resultado = new ReporteVentaMuerteDatos
                {
                    MovimientosEnfermeria = (from movs in dtMovimientosEnfermeria.AsEnumerable()
                                             select new ReporteVentaMuerteMovimientosEnfermeria
                    {
                        AnimalID = movs.Field <int>("AnimalID"),
                        AnimalMovimientoID = movs.Field <long>("AnimalMovimientoID"),
                        Arete = movs.Field <string>("Arete"),
                        Causa = movs.Field <string>("Causa"),
                        CorralEnfermeria = movs.Field <string>("CorralEnfermeria"),
                        Detector = movs.Field <string>("Detector"),
                        Enfermeria = movs.Field <string>("Enfermeria"),
                        Fecha = movs.Field <DateTime>("Fecha"),
                        Sexo = movs.Field <string>("Sexo")
                    }).ToList(),
                    MovimientosProduccion = (from movs in dtMovimientosProduccion.AsEnumerable()
                                             select new ReporteVentaMuerteMovimientosProduccion
                    {
                        AnimalID = movs.Field <int>("AnimalID"),
                        AnimalMovimientoID = movs.Field <long>("AnimalMovimientoID"),
                        CorralProduccion = movs.Field <string>("CorralProduccion"),
                        Fecha = movs.Field <DateTime>("Fecha")
                    }).ToList(),
                    Folios = (from movs in dtFolios.AsEnumerable()
                              select new ReporteVentaMuerteFolio
                    {
                        AnimalID = movs.Field <long>("AnimalID"),
                        DiasEngorda = movs.Field <int>("DiasEngorda"),
                        FolioEntrada = movs.Field <long>("FolioEntrada"),
                        Organizacion = movs.Field <string>("Organizacion"),
                        OrganizacionID = movs.Field <int>("OrganizacionID")
                    }).ToList(),
                    Tratamientos = (from movs in dtMovimientosTratamientos.AsEnumerable()
                                    select new ReporteVentaMuerteTratamiento
                    {
                        AnimalID = movs.Field <long>("AnimalID"),
                        AnimalMovimientoID = movs.Field <long>("AnimalMovimientoID"),
                        CodigoTratamiento = movs.Field <int>("CodigoTratamiento"),
                        FechaMovimiento = movs.Field <DateTime>("FechaMovimiento"),
                        Producto = movs.Field <string>("Producto")
                    }).ToList()
                };
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(resultado);
        }