Ejemplo n.º 1
0
        /// <summary>
        /// Guarda el cambio de un corral a otro en los corrales de recepcion
        /// </summary>
        /// <param name="corralInfoOrigen"></param>
        /// <param name="corralInfoDestino"></param>
        /// <param name="usuarioInfo"></param>
        /// <returns></returns>
        internal bool GuardarTraspasoGanadoCorralesRecepcion(CorralInfo corralInfoOrigen, CorralInfo corralInfoDestino, UsuarioInfo usuarioInfo)
        {
            try
            {
                using (var transaction = new TransactionScope())
                {
                    Logger.Info();
                    //Actualiza el corral al lote
                    var loteBl = new LotePL();
                    var lote   = loteBl.DeteccionObtenerPorCorral(corralInfoOrigen.OrganizacionId, corralInfoOrigen.CorralID);
                    loteBl.ActualizarCorral(lote, corralInfoDestino, usuarioInfo);

                    //Actualiza el corral a la entrada del lote
                    var entradaGanadoBl = new EntradaGanadoBL();
                    entradaGanadoBl.ActualizarCorral(lote, corralInfoDestino, usuarioInfo);
                    transaction.Complete();
                    return(true);
                }
            }
            catch (ExcepcionGenerica ex)
            {
                Logger.Error(ex);
                return(false);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                return(false);
            }
        }