internal int GuardarAnimalSalida(List <AnimalInfo> listaAnimales, ProgramacionSacrificioGuardadoInfo programacionSacrificioGuardadoInfo)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxProgramacionSacrificio.ObtenerParametrosGuardarAnimalSalida(listaAnimales, programacionSacrificioGuardadoInfo);
         int result = Create("ProgramacionSacrificio_GuardarAnimalSalida", parameters);
         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 int GuardarSalida(List <AnimalInfo> animalInfo, int loteID, int corraletaID, int ordenSacrificioDetalleID)
        {
            var seguridad      = (SeguridadInfo)HttpContext.Current.Session["Seguridad"];
            var organizacionID = seguridad.Usuario.Organizacion.OrganizacionID;
            var usuarioID      = seguridad.Usuario.UsuarioID;
            var programacionSacrificioGuardadoInfo = new ProgramacionSacrificioGuardadoInfo
            {
                OrganizacionID           = organizacionID,
                TipoMovimiento           = (int)TipoMovimiento.SalidaPorSacrificio,
                UsuarioID                = usuarioID,
                LoteID                   = loteID,
                CorraletaID              = corraletaID,
                OrdenSacrificioDetalleID = ordenSacrificioDetalleID
            };
            var programacionSacrificioPL = new ProgramacionSacrificioPL();

            return(programacionSacrificioPL.GuardarAnimalSalida(animalInfo, programacionSacrificioGuardadoInfo));
        }
        internal int GuardarAnimalSalida(List <AnimalInfo> listaAnimales, ProgramacionSacrificioGuardadoInfo programacionSacrificioGuardadoInfo)
        {
            int result;

            try
            {
                Logger.Info();
                var loteBL = new LoteBL();
                using (var transaccion = new TransactionScope())
                {
                    var loteInfo        = loteBL.ObtenerPorID(programacionSacrificioGuardadoInfo.LoteID);
                    var deteccionGrabar = new DeteccionInfo
                    {
                        CorralID          = loteInfo.CorralID,
                        LoteID            = loteInfo.LoteID,
                        UsuarioCreacionID = programacionSacrificioGuardadoInfo.UsuarioID
                    };

                    foreach (var animal in listaAnimales)
                    {
                        if (animal != null && animal.CargaInicial)
                        {
                            // Se intercambian aretes por encontrarse el animal en un corral distinto y ser carga inicial
                            var animalBL = new AnimalBL();
                            animalBL.ReemplazarAretes(animal, deteccionGrabar);
                        }
                    }

                    var programacionSacrificio = new ProgramacionSacrificioDAL();
                    result = programacionSacrificio.GuardarAnimalSalida(listaAnimales, programacionSacrificioGuardadoInfo);
                    transaccion.Complete();
                }
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(result);
        }
        /// Metodo para obtener animal en caso de existir
        public int GuardarAnimalSalida(List <AnimalInfo> listaAnimales, ProgramacionSacrificioGuardadoInfo programacionSacrificioGuardadoInfo)
        {
            int result;

            try
            {
                Logger.Info();
                var programacionSacrificio = new ProgramacionSacrificioBL();
                result = programacionSacrificio.GuardarAnimalSalida(listaAnimales, programacionSacrificioGuardadoInfo);
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(result);
        }
Beispiel #5
0
        /// Metodo crea XML para guardar AnimalSalida
        internal static Dictionary <String, Object> ObtenerParametrosGuardarAnimalSalida(List <AnimalInfo> listaAnimalInfo, ProgramacionSacrificioGuardadoInfo programacionSacrificioGuardadoInfo)
        {
            Dictionary <string, object> parametros;

            try
            {
                Logger.Info();
                //var lista = cabezasCortadas.NoPartida.Split('|');
                var xml =
                    new XElement("ROOT",
                                 new XElement("AnimalesGuardar",
                                              new XElement("Arete",
                                                           from animalInfo in listaAnimalInfo
                                                           select
                                                           new XElement("AreteNodo",
                                                                        new XElement("Arete", animalInfo.Arete)
                                                                        )

                                                           )
                                              )
                                 );
                parametros = new Dictionary <string, object>
                {
                    { "@XmlAnimales", xml.ToString() },
                    { "@OrganizacionID", programacionSacrificioGuardadoInfo.OrganizacionID },
                    { "@TipoMovimientoID", programacionSacrificioGuardadoInfo.TipoMovimiento },
                    { "@UsuarioCreacionID", programacionSacrificioGuardadoInfo.UsuarioID },
                    { "@LoteID", programacionSacrificioGuardadoInfo.LoteID },
                    { "@CorraletaID", programacionSacrificioGuardadoInfo.CorraletaID },
                    { "@OrdenSacrificioDetalleID", programacionSacrificioGuardadoInfo.OrdenSacrificioDetalleID }
                };
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
            return(parametros);
        }