Esempio n. 1
0
        /// <summary>
        /// Metodo para almacenar la salidaAnimal
        /// </summary>
        /// <param name="salidaAnimalInfo"></param>
        /// <returns></returns>
        public bool GuardarAnimal(SalidaAnimalInfo salidaAnimalInfo)
        {
            bool resp = false;

            try
            {
                Logger.Info();
                var parameters = AuxSalidaAnimalDAL.ObtenerParametrosSalidaGanado(salidaAnimalInfo);
                Create("SalidaAnimal_Guardar", parameters);
                resp = true;
            }
            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(resp);
        }
Esempio n. 2
0
        /// <summary>
        /// Metodo para almacenar el animal en Salida Animal
        /// </summary>
        /// <param name="salidaAnimalInfo"></param>
        /// <returns></returns>
        internal bool Guardar(SalidaAnimalInfo salidaAnimalInfo)
        {
            bool result;

            try
            {
                Logger.Info();
                var salidaAnimaDAL = new SalidaAnimaDAL();
                result = salidaAnimaDAL.GuardarAnimal(salidaAnimalInfo);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(result);
        }
Esempio n. 3
0
 /// <summary>
 /// Metodo para crear los parametros paraguardar Salida Animal
 /// </summary>
 /// <param name="salidaAnimalInfo"></param>
 /// <returns></returns>
 public static Dictionary <string, object> ObtenerParametrosSalidaGanado(SalidaAnimalInfo salidaAnimalInfo)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@SalidaGanadoID", salidaAnimalInfo.SalidaGanado.SalidaGanadoID },
             { "@AnimalID", salidaAnimalInfo.Animal.AnimalID },
             { "@LoteID", salidaAnimalInfo.Lote.LoteID },
             { "@Activo", salidaAnimalInfo.Activo },
             { "@UsuarioCreacionID", salidaAnimalInfo.UsuarioCreacionID }
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 4
0
        /// <summary>
        /// Metodo para Guardar la Salida Ganado
        /// </summary>
        /// <param name="animalInactivo"></param>
        internal bool GuardarSalidaGanado(AnimalInfo animalInactivo)
        {
            var envioAnimal = false;

            try
            {
                Logger.Info();
                var animalBL = new AnimalBL();

                //Se obtiene el ultimo movimiento
                var ultimoMovimiento = animalBL.ObtenerUltimoMovimientoAnimal(animalInactivo);

                var salidaGanadoInfo = new SalidaGanadoInfo
                {
                    Organizacion = new OrganizacionInfo
                    {
                        OrganizacionID = animalInactivo.OrganizacionIDEntrada
                    },
                    TipoMovimiento = (TipoMovimiento)ultimoMovimiento.TipoMovimientoID,
                    Activo         = EstatusEnum.Activo,
                    //VentaGanado = new VentaGanadoInfo(){VentaGanadoID = null},
                    UsuarioCreacionID = animalInactivo.UsuarioCreacionID
                };

                if (ultimoMovimiento.TipoMovimientoID == (int)TipoMovimiento.SalidaPorVenta)
                {
                    //Si el ultimo movimiento es venta obtener el ID de la VentaGanado
                    var ventaDetalleBL = new VentaGanadoDetalleBL();
                    VentaGanadoDetalleInfo ventaDetalleInfo =
                        ventaDetalleBL.ExisteAnimal(animalInactivo);

                    if (ventaDetalleInfo != null)
                    {
                        salidaGanadoInfo.VentaGanado = new VentaGanadoInfo
                        {
                            VentaGanadoID = ventaDetalleInfo.VentaGanadoID
                        };
                    }
                }

                var salidaGanadoDAL           = new SalidaGanadoDAL();
                SalidaGanadoInfo salidaGanado = null;

                //Se valida si la venta es
                if (salidaGanadoInfo.VentaGanado != null)
                {
                    //Se busca la venta en la salida Ganado
                    salidaGanado = salidaGanadoDAL.ExisteVentaEnSalidaGanado(salidaGanadoInfo);
                }

                if (salidaGanado == null)
                {
                    //Se guarda en SalidaGanado
                    salidaGanado =
                        salidaGanadoDAL.GuardarSalidaGanado(salidaGanadoInfo, (int)TipoFolio.SalidaGanado);
                }

                //Se almacena SalidaAnimal
                var salidaAnimalBL = new SalidaAnimalBL();

                var salidaAnimalInfo = new SalidaAnimalInfo()
                {
                    SalidaGanado = salidaGanado,
                    Animal       = animalInactivo,
                    Lote         = new LoteInfo {
                        LoteID = ultimoMovimiento.LoteID
                    },
                    Activo            = EstatusEnum.Activo,
                    UsuarioCreacionID = animalInactivo.UsuarioCreacionID
                };

                envioAnimal = salidaAnimalBL.Guardar(salidaAnimalInfo);

                envioAnimal = true;
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(envioAnimal);
        }