Пример #1
0
 /// <summary>
 /// Obtener la fecha zilmax de un lote
 /// </summary>
 /// <param name="lote"></param>
 /// <param name="tipoGanadoInfo"></param>
 /// <param name="diasEngorda"></param>
 /// <returns></returns>
 public DateTime ObtenerFechaZilmax(LoteInfo lote, TipoGanadoInfo tipoGanadoInfo, int diasEngorda)
 {
     try
     {
         Logger.Info();
         var parametros = new Dictionary <string, object>
         {
             { "@OrganizacionID", lote.OrganizacionID },
             { "@Sexo", Convert.ToChar(tipoGanadoInfo.Sexo) },
             { "@FechaInicio", lote.FechaInicio },
             { "@DiasEngorda", diasEngorda }
         };
         return(RetrieveValue <DateTime>("ReimplanteGanado_ObtenerFechaZilmax", parametros));
     }
     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);
     }
 }
Пример #2
0
 internal ReimplanteInfo ObtenerAreteIndividualReimplantar(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var parametros = new Dictionary <string, object> {
             { "@LoteID", lote.LoteID }, { "@CorralID", lote.CorralID }
         };
         var            ds     = Retrieve("ReimplanteGanado_ObtenerAreteIndividualReimplantar", parametros);
         ReimplanteInfo result = null;
         if (ValidateDataSet(ds))
         {
             result = MapReimplanteDAL.ObtenerAreteIndividual(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);
     }
 }
Пример #3
0
        public static LoteInfo ObtenerLotesCorral(int corralID)
        {
            LoteInfo   lote   = null;
            CorralInfo corral = null;

            try
            {
                var seguridad      = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];
                int organizacionId = seguridad.Usuario.Organizacion.OrganizacionID;

                if (seguridad != null)
                {
                    var corralPL = new CorralPL();
                    corral = corralPL.ObtenerPorId(corralID);
                    if (corral.TipoCorral.TipoCorralID != (int)TipoCorral.CorraletaSacrificio)
                    {
                        var lotePL = new LotePL();
                        lote = lotePL.DeteccionObtenerPorCorral(organizacionId, corralID);
                    }
                    else
                    {
                        lote = new LoteInfo();
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }
            return(lote);
        }
Пример #4
0
 /// <summary>
 /// Obtiene el lote reimplante por lote id
 /// </summary>
 /// <param name="lote"></param>
 /// <returns></returns>
 internal List <LoteReimplanteInfo> ObtenerListaPorLote(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var parameters = AuxLoteReimplanteDAL.ObtenerParametrosPorLote(lote);
         var ds         = Retrieve("LoteReimplante_ObtenerPorLote", parameters);
         List <LoteReimplanteInfo> result = null;
         if (ValidateDataSet(ds))
         {
             result = MapLoteReimplanteDAL.ObtenerListaPorlote(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);
     }
 }
        public static LectorRegistroInfo ObtenerKilogramosProgramados(int loteID)
        {
            LectorRegistroInfo lector           = null;
            LectorRegistroPL   lectorRegistroPL = new LectorRegistroPL();

            try
            {
                var seguridad      = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];
                int organizacionId = seguridad.Usuario.Organizacion.OrganizacionID;

                if (seguridad != null)
                {
                    LoteInfo lote = new LoteInfo();
                    lote.LoteID         = loteID;
                    lote.OrganizacionID = organizacionId;
                    lector = lectorRegistroPL.ObtenerLectorRegistro(lote, DateTime.Now);
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }

            return(lector);
        }
Пример #6
0
        public static ResultadoValidacion ValidarCorral(string codigoCorral)
        {
            try
            {
                var seguridad = (SeguridadInfo)ObtenerSeguridad();

                var revisionImplantePl = new RevisionImplantesPL();
                var corral             =
                    new CorralInfo
                {
                    Codigo         = codigoCorral,
                    OrganizacionId = seguridad.Usuario.OrganizacionID
                };
                ResultadoValidacion resultado = revisionImplantePl.ValidarCorral(corral);

                if (!resultado.Resultado)
                {
                    return(resultado);
                }
                var revisionActual = (RevisionImplanteInfo)resultado.Control;
                LoteSeleccionado   = revisionActual.Lote;
                CorralSeleccionado = revisionActual.Corral;
                return(resultado);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw;
            }
        }
Пример #7
0
        /// <summary>
        /// Obtiene el numero de cabezas programadas en otras ordenes para el lote determinado
        /// </summary>
        /// <param name="lote"></param>
        /// <param name="ordenSacrificioId"></param>
        /// <returns></returns>
        internal int ObtnerCabezasDiferentesOrdenes(LoteInfo lote, int ordenSacrificioId)
        {
            var result = 0;

            try
            {
                Logger.Info();
                var parameters = AuxOrdenSacrificioDAL.ObtenerParametroObtnerCabezasDiferentesOrdenes(lote, ordenSacrificioId);
                var ds         = Retrieve("OrdenSacrificio_CabezasSacrificarPorLoteOrdenDiferente", parameters);
                if (ValidateDataSet(ds))
                {
                    result = MapOrdenSacrificioDAL.ObtnerCabezasDiferentesOrdenes(ds);
                }
            }
            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);
            }
            return(result);
        }
Пример #8
0
        /// <summary>
        /// Obtiene los dias de engorda 70
        /// </summary>
        /// <param name="lote"></param>
        /// <returns></returns>
        internal int ObtnerDiasEngorda70(LoteInfo lote)
        {
            var result = 0;

            try
            {
                Logger.Info();
                var parameters = AuxOrdenSacrificioDAL.ObtenerParametroDiasEngorda70(lote);
                var ds         = Retrieve("OrdenSacrificio_CalcularDiasEngorda70", parameters);
                if (ValidateDataSet(ds))
                {
                    result = MapOrdenSacrificioDAL.ObtenerDiasEngorda70(ds);
                }
            }
            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);
            }
            return(result);
        }
Пример #9
0
 internal LoteInfo ObtenerLotePorCorral(LoteInfo info)
 {
     try
     {
         Logger.Info();
         var lotes    = da.Tabla <LoteInfo>();
         var consulta = from l in lotes
                        where l.CorralID == info.Corral.CorralID
                        //&& l.Activo == EstatusEnum.Activo
                        select l;
         var result = consulta.FirstOrDefault();
         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);
     }
 }
Пример #10
0
 /// <summary>
 /// Obtiene un registro de Proveedor de un lote
 /// </summary>
 /// <param name="lote">Descripción de la Proveedor</param>
 /// <returns></returns>
 internal ProveedorInfo ObtenerPorLote(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxProveedorDAL.ObtenerParametrosObtenerPorLote(lote);
         DataSet       ds     = Retrieve("Proveedor_ObtenerLote", parameters);
         ProveedorInfo result = null;
         if (ValidateDataSet(ds))
         {
             result = MapProveedorDAL.ObtenerPorID(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);
     }
 }
Пример #11
0
 /// <summary>
 /// Metodo para Guardar/Modificar una entidad Lote
 /// </summary>
 /// <param name="info"></param>
 /// <returns></returns>
 public int Guardar(LoteInfo info)
 {
     try
     {
         Logger.Info();
         var id = 0;
         if (info.LoteID > 0)
         {
             id = da.Actualizar <LoteInfo>(info);
         }
         else
         {
             id = da.Insertar <LoteInfo>(info);
         }
         return(id);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
        public static LoteInfo ObtenerLote(string corralCodigo)
        {
            LoteInfo lote = null;

            try
            {
                CorralInfo corral         = null;
                var        lotePL         = new LotePL();
                var        corralPL       = new CorralPL();
                var        seguridad      = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];
                int        organizacionId = seguridad.Usuario.Organizacion.OrganizacionID;
                corral = corralPL.ObtenerCorralPorCodigo(organizacionId, corralCodigo);

                if (corral != null)
                {
                    lote = lotePL.ObtenerPorCorralCerrado(organizacionId, corral.CorralID);
                }
                //lote = lotePL.ObtenerPorCorral(organizacionId, corral.CorralID);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }

            return(lote);
        }
Пример #13
0
 /// <summary>
 /// Obtiene un registro de LoteProyeccion
 /// </summary>
 /// <param name="lote">Lote del cual se obtendra la proyeccion</param>
 /// <returns></returns>
 internal LoteProyeccionInfo ObtenerPorLoteCompleto(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var                parameters = AuxLoteProyeccionDAL.ObtenerParametrosObtenerPorLoteCompleto(lote);
         DataSet            ds         = Retrieve("LoteProyeccion_ObtenerPorLoteCompleto", parameters);
         LoteProyeccionInfo result     = null;
         if (ValidateDataSet(ds))
         {
             result = MapLoteProyeccionDAL.ObtenerPorLoteCompleto(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);
     }
 }
Пример #14
0
        /// <summary>
        /// Obtiene un lector
        /// </summary>
        /// <param name="lote">Lote del cual se obtendra el lector</param>
        /// <param name="fecha">Fecha del lector</param>
        /// <returns></returns>
        internal LectorRegistroInfo ObtenerLectorRegistro(LoteInfo lote, DateTime fecha)
        {
            var resultado = new LectorRegistroInfo();

            try
            {
                Logger.Info();
                var parameters = AuxLectorRegistro.ObtenerParametroLectorRegistro(lote, fecha);
                var ds         = Retrieve("Reparto_ObtenerLectorRegistro", parameters);
                if (ValidateDataSet(ds))
                {
                    resultado = MapLectorRegistro.ObtenerLectorRegistro(ds);
                }
            }
            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);
            }
            return(resultado);
        }
Пример #15
0
        /// <summary>
        /// Obtiene los Parametros para Generar un Lote
        /// </summary>
        /// <param name="loteInfo"></param>
        /// <returns></returns>
        internal static Dictionary <string, object> ObtenerParametrosGuardar(LoteInfo loteInfo)
        {
            Dictionary <string, object> parametros;

            try
            {
                Logger.Info();
                parametros = new Dictionary <string, object>
                {
                    { "@Activo", loteInfo.Activo },
                    { "@Cabezas", loteInfo.Cabezas },
                    { "@CabezasInicio", loteInfo.LoteID == 0 ? loteInfo.Cabezas : loteInfo.CabezasInicio },
                    { "@CorralID", loteInfo.CorralID },
                    { "@DisponibilidadManual", loteInfo.DisponibilidadManual },
                    { "@OrganizacionID", loteInfo.OrganizacionID },
                    { "@TipoCorralID", loteInfo.TipoCorralID },
                    { "@TipoProcesoID", loteInfo.TipoProcesoID },
                    { "@UsuarioCreacionID", loteInfo.UsuarioCreacionID },
                    { "@TipoFolioID", TipoFolio.Lote.GetHashCode() },
                };
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            return(parametros);
        }
        public static RepartoDetalleInfo ObtenerOrdenRepartoDetalleTarde(int loteID, int repartoID, int corralID, string fechaReparto)
        {
            IList <RepartoDetalleInfo> repartoDetalleLista = null;
            RepartoDetalleInfo         repartoDetalle      = null;
            LoteInfo    lote      = null;
            RepartoInfo reparto   = new RepartoInfo();
            RepartoPL   repartoPL = new RepartoPL();
            LotePL      lotePL    = new LotePL();
            var         corralPL  = new CorralPL();

            try
            {
                var fecha = DateTime.Parse(fechaReparto.ToString(CultureInfo.InvariantCulture));

                var seguridad = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];

                if (seguridad != null)
                {
                    lote = lotePL.ObtenerPorId(loteID);
                    CorralInfo corral = corralPL.ObtenerPorId(corralID);

                    /*DateTime fecha = new DateTime();
                     * fecha = DateTime.Now;
                     * fecha = fecha.AddDays(-1);*/
                    if (lote != null)
                    {
                        reparto = repartoPL.ObtnerPorLote(lote, fecha);
                    }
                    else
                    {
                        reparto = repartoPL.ObtnerPorFechaCorral(corral, fecha);
                    }

                    if (reparto != null)
                    {
                        repartoDetalleLista = repartoPL.ObtenerDetalle(reparto);

                        if (repartoDetalleLista != null)
                        {
                            for (int i = 0; i < repartoDetalleLista.Count; i++)
                            {
                                if (repartoDetalleLista[i].TipoServicioID == (int)TipoServicioEnum.Vespertino)
                                {
                                    repartoDetalle = repartoDetalleLista[i];
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }

            return(repartoDetalle);
        }
Пример #17
0
        public static CorralInfo ValidarCorral(CorralInfo corralInfo)
        {
            var corral = new CorralInfo();
            var lotePl = new LotePL();

            try
            {
                var seguridad = HttpContext.Current.Session["Seguridad"] as SeguridadInfo;

                if (seguridad != null)
                {
                    var organizacionId = seguridad.Usuario.Organizacion.OrganizacionID;

                    var corralPL = new CorralPL();

                    corral = corralPL.ObtenerCorralActivoPorCodigo(organizacionId, corralInfo.Codigo);

                    if (corral != null)
                    {
                        LoteInfo lote = lotePl.ObtenerPorCorralCerrado(organizacionId, corral.CorralID);

                        if (lote != null)
                        {
                            if (lote.Activo == EstatusEnum.Inactivo)
                            {
                                corral          = new CorralInfo();
                                corral.CorralID = -3; //Corral no tiene lote activo
                            }
                            else if (corral.GrupoCorral != (int)GrupoCorralEnum.Produccion)
                            {
                                corral          = new CorralInfo();
                                corral.CorralID = -1; //Corral no es de produccion
                            }
                        }
                        else
                        {
                            corral          = new CorralInfo();
                            corral.CorralID = -3; //Corral no tiene lote activo
                        }
                    }
                }
                else
                {
                    corral          = new CorralInfo();
                    corral.CorralID = -2; //Error de session
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                corral = null;
            }

            return(corral);
        }
Пример #18
0
        private void skAyudaLote_AyudaConDatos(object sender, EventArgs e)
        {
            var      lotePL         = new LotePL();
            LoteInfo lotePesoCompra = lotePL.ObtenerPesoCompraPorLote(Contexto.LoteInfo);

            if (lotePesoCompra != null)
            {
                DtpFechaInicial.SelectedDate = Contexto.LoteInfo.FechaInicio;
                txtPesoOrigen.Text           = lotePesoCompra.PesoCompra.ToString(CultureInfo.InvariantCulture);
            }
        }
        internal void TraerCorral(int OrganizacionID)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(Corral.Codigo))
                {
                    return;
                }
                var corralPL = new SIE.Services.Servicios.PL.CorralPL();

                // Jose Angel Rodriguez Rodriguez 20/09/2014
                //La Primera ves k se mandaba llamar esto estava con un valor en 0, por eso se cambio a que desde la pantalla se tragera la OrganizacionID
                //var corral = corralPL.ObtenerCorralPorCodigo(Lote.OrganizacionID, Corral.Codigo);
                var corral = corralPL.ObtenerCorralPorCodigo(OrganizacionID, Corral.Codigo);

                if (corral == null)
                {
                    Corral = new CorralInfo();
                    Lote   = new LoteInfo {
                        OrganizacionID = Organizacion.OrganizacionID
                    };
                    Lote.Corral        = Corral;
                    FechaInicio        = null;
                    FechaFin           = null;
                    fechaFinaReporte   = null;
                    fechaInicioReporte = null;
                    MostrarMensaje(Properties.Resources.Alimentacion_ConsumoCorral_MsgCorralNoEncontrado, MessageBoxButton.OK, MessageImage.Warning);
                    return;
                }
                Corral = corral;
                var lotePL = new SIE.Services.Servicios.PL.LotePL();
                Lote.Corral   = Corral;
                Lote.CorralID = Corral.CorralID;
                Lote          = lotePL.ObtenerLotePorCorral(Lote);
                if (Lote != null)
                {
                    TraerLote();
                }
                else
                {
                    Lote = new LoteInfo();
                    Lote.OrganizacionID = Organizacion.OrganizacionID;
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                MostrarMensaje(Properties.Resources.ReporteConsumoCorral_ErrorTraerCorral,
                               MessageBoxButton.OK, MessageImage.Error);
            }
        }
Пример #20
0
        private void Buscar()
        {
            try
            {
                var lotePL            = new LotePL();
                var corralPL          = new CorralPL();
                var checkListCorralPL = new CheckListCorralPL();
                int organizacionID    = AuxConfiguracion.ObtenerOrganizacionUsuario();

                var corral = new CorralInfo
                {
                    Codigo       = txtCorral.Text,
                    Organizacion = new OrganizacionInfo
                    {
                        OrganizacionID = organizacionID
                    }
                };

                corral = corralPL.ObtenerPorCodigoGrupo(corral);

                if (corral == null)
                {
                    return;
                }

                LoteInfo lote = lotePL.ObtenerPorCorralCerrado(organizacionID, corral.CorralID);

                if (lote == null)
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.ImpresionCierreCorral_SinLoteActivo, MessageBoxButton.OK, MessageImage.Warning);
                    return;
                }
                CheckListCorralInfo checkList = checkListCorralPL.ObtenerPorLote(organizacionID, lote.LoteID);

                if (checkList == null)
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.ImpresionCierreCorral_SinCierre, MessageBoxButton.OK, MessageImage.Warning);
                    return;
                }
                GenerarArchivo(checkList);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                  Properties.Resources.ImpresionCierreCorral_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
            }
        }
Пример #21
0
 private void TxtCorralLostFocus(object sender, RoutedEventArgs e)
 {
     try
     {
         if (!string.IsNullOrWhiteSpace(Contexto.CorralInfo.Codigo))
         {
             var lotePL = new LotePL();
             IEnumerable <LoteInfo> lotes =
                 lotePL.ObtenerPorCodigoCorralOrganizacionID(Contexto.OrganizacionId, Contexto.CorralInfo.Codigo);
             bool valido = ValidarCorral(lotes);
             if (valido)
             {
                 var      animalPL = new AnimalPL();
                 LoteInfo lote     = lotes.ToList().FirstOrDefault(activo => activo.Activo == EstatusEnum.Activo);
                 if (lote != null)
                 {
                     List <AnimalInfo> animales =
                         animalPL.ObtenerAnimalesPorLote(Contexto.OrganizacionId, lote.LoteID);
                     Contexto.LoteInfo   = lote;
                     Contexto.CorralInfo = lote.Corral;
                     ObtenerValoresGanado(animales);
                     ObtenerPesos();
                     ObtenerFormula();
                     ObtenerDiasEngorda(animales);
                 }
                 if (!listadoDeTraspaso.Any())
                 {
                     chkTraspasoGanado.IsEnabled   = true;
                     chkSacrificioGanado.IsEnabled = true;
                 }
             }
             else
             {
                 if (Contexto.LoteInfo.Corral == null)
                 {
                     Contexto.LoteInfo.Corral = new CorralInfo();
                 }
                 Contexto.LoteInfo.Corral.Codigo = string.Empty;
             }
         }
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.TraspasoGanadoGordo_MensajeErrorConsultarCorral,
                           MessageBoxButton.OK, MessageImage.Error);
     }
 }
        private void GeneraLineasDetalle(SalidaGanadoEnTransitoInfo salidaMuerte)
        {
            try
            {
                //salidaMuerte.LoteID;
                //var corralOrganizacion = CorralBL.ObtenerCorralesPorOrganizacionID(salidaMuerte.OrganizacionID).FirstOrDefault(corral => corral.LoteID == salidaMuerte.LoteID);

                var corralDal = new CorralDAL();
                var loteDal   = new LoteDAL();

                //corralMuerte = corralDal.ObtenerPorId(corralOrganizacion.CorralID);
                loteMuerte   = loteDal.ObtenerPorID(salidaMuerte.LoteID);
                corralMuerte = corralDal.ObtenerPorId(salidaMuerte.CorralID);

                var entradaGanado = new EntradaGanadoTransitoInfo();
                if (loteMuerte != null)
                {
                    entradaGanado.Lote = loteMuerte;
                }

                PolizaModel.Detalle = new List <PolizaDetalleModel>();
                {
                    //var pesoMuertePromedio = corralOrganizacion.PesoPromedio;
                    var detalleModel = new PolizaDetalleModel
                    {
                        CantidadCabezas = salidaMuerte.NumCabezas.ToString(CultureInfo.InvariantCulture),
                        TipoGanado      = CONCEPTO,
                        PesoTotal       = salidaMuerte.Kilos.ToString("N"),
                        PesoPromedio    = (salidaMuerte.Kilos / salidaMuerte.NumCabezas).ToString("N"),
                        //PrecioPromedio = Math.Abs(salidaMuerte.Importe / salidaMuerte.NumCabezas).ToString("N", CultureInfo.CurrentCulture).Replace("$", string.Empty),
                        //PrecioPromedio = Math.Abs(salidaMuerte.Importe / corralOrganizacion.PesoPromedio/salidaMuerte.NumCabezas).ToString("N2", CultureInfo.CurrentCulture).Replace("$", string.Empty),
                        PrecioPromedio = (salidaMuerte.Importe / (salidaMuerte.Kilos / salidaMuerte.NumCabezas) / salidaMuerte.NumCabezas).ToString("N2", CultureInfo.CurrentCulture).Replace("$", string.Empty),
                        //precio promedio por kilo=costo total/Peso total
                        //precio promedio kilo*peso total*num cabezas=importe
                        ImportePromedio = (salidaMuerte.Importe).ToString("N2", CultureInfo.CurrentCulture),    //estaba en :"N2"
                        Corral          = corralMuerte.Codigo,
                        Lote            = entradaGanado.Lote.Lote
                    };
                    PolizaModel.Detalle.Add(detalleModel);
                }
                polizaImpresion.GenerarDetalles("Detalle");
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
        }
Пример #23
0
 /// <summary>
 ///  Consulta la interface de salida
 /// </summary>
 /// <param name="loteInfo"></param>
 public InterfaceSalidaTraspasoInfo ObtenerInterfaceSalidaTraspasoPorLote(LoteInfo loteInfo)
 {
     try
     {
         var interfaceSalidaTraspaspBl = new InterfaceSalidaTraspasoBL();
         return(interfaceSalidaTraspaspBl.ObtenerInterfaceSalidaTraspasoPorLote(loteInfo));
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #24
0
 public void ActualizaNoCabezasEnLoteOrigen(LoteInfo resultadoLoteOrigen)
 {
     try
     {
         Logger.Info();
         var loteBL = new LoteBL();
         loteBL.ActualizaNoCabezasEnLoteOrigen(resultadoLoteOrigen);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #25
0
 /// <summary>
 /// Actualizar el numero de cabezas en lote y cambiar la fecha salida
 /// </summary>
 /// <param name="lote"></param>
 public void ActualizarFechaSalidaEnLote(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var loteBL = new LoteBL();
         loteBL.ActualizarFechaSalidaEnLote(lote);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #26
0
 /// <summary>
 /// Actualiza el Numero de Cabezas del Lote de productivo
 /// </summary>
 /// <param name="loteInfoDestino"></param>
 /// <param name="loteInfoOrigen"></param>
 public void ActualizaCabezasEnLoteProductivo(LoteInfo loteInfoDestino, LoteInfo loteInfoOrigen)
 {
     try
     {
         Logger.Info();
         var loteBL = new LoteBL();
         loteBL.ActualizaCabezasEnLoteProductivo(loteInfoDestino, loteInfoOrigen);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #27
0
 /// <summary>
 /// Obtiene los parametros necesario para obtener el lote reimplante de un lote
 /// </summary>
 /// <param name="lote"></param>
 /// <returns></returns>
 internal static Dictionary <string, object> ObtenerParametrosPorLote(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@LoteID", lote.LoteID },
             { "@OrganizacionID", lote.OrganizacionID }
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #28
0
 /// <summary>
 /// Obtiene los dias de engorda 70 del lote
 /// </summary>
 /// <param name="lote"></param>
 /// <returns></returns>
 public int ObtnerDiasEngorda70(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var ordenSacrificioBl = new OrdenSacrificioBL();
         return(ordenSacrificioBl.ObtnerDiasEngorda70(lote));
     }
     catch (ExcepcionGenerica ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #29
0
 /// <summary>
 /// Obtiene la proyeccion por lote
 /// </summary>
 /// <param name="lote"></param>
 /// <returns></returns>
 public LoteProyeccionInfo ObtenerPorLoteCompleto(LoteInfo lote)
 {
     try
     {
         Logger.Info();
         var loteProyeccionBL      = new LoteProyeccionBL();
         LoteProyeccionInfo result = loteProyeccionBL.ObtenerPorLoteCompleto(lote);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Пример #30
0
 /// <summary>
 /// Obtiene el numero de cabezas de un lote en ordenes diferentes
 /// </summary>
 /// <param name="lote"></param>
 /// <param name="ordenSacrificioId"></param>
 /// <returns></returns>
 public int ObtnerCabezasDiferentesOrdenes(LoteInfo lote, int ordenSacrificioId)
 {
     try
     {
         Logger.Info();
         var ordenSacrificioBl = new OrdenSacrificioBL();
         return(ordenSacrificioBl.ObtnerCabezasDiferentesOrdenes(lote, ordenSacrificioId));
     }
     catch (ExcepcionGenerica ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }