/// <summary>
 /// Metodo que guarda un Embarque
 /// </summary>
 /// <param name="info"></param>
 public void Guardar(EmbarqueInfo info, TipoGuardadoProgramacionEmbarqueEnum seccion)
 {
     try
     {
         Logger.Info();
         var programacionEmbarqueBL = new ProgramacionEmbarqueBL();
         programacionEmbarqueBL.Guardar(info, seccion);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Exemple #2
0
        public static EmbarqueInfo Guardar(EmbarqueInfo embarqueInfo, TipoGuardadoProgramacionEmbarqueEnum seccion)
        {
            try
            {
                var resultadoEmbarqueInfo  = new EmbarqueInfo();
                var programacionEmbarquePL = new ProgramacionEmbarquePL();
                var seguridad = (SeguridadInfo)ObtenerSeguridad();
                int usuarioId = seguridad.Usuario.UsuarioID;
                embarqueInfo.CitaCarga    = DateTime.Parse(embarqueInfo.CitaCarga.ToString());
                embarqueInfo.CitaDescarga = DateTime.Parse(embarqueInfo.CitaDescarga.ToString());

                if (embarqueInfo.UsuarioCreacionID == -1)
                {
                    // Edicion
                    embarqueInfo.UsuarioModificacionID = usuarioId;
                }
                else
                {
                    //Guardado
                    embarqueInfo.UsuarioModificacionID = usuarioId;
                    embarqueInfo.UsuarioCreacionID     = usuarioId;
                }

                if (seccion == TipoGuardadoProgramacionEmbarqueEnum.Datos)
                {
                    // Guardado para seccion de datos
                    // Regresa embarque con su folio de embaque registrado
                    resultadoEmbarqueInfo = programacionEmbarquePL.GuardarDatos(embarqueInfo);
                }
                else
                {
                    programacionEmbarquePL.Guardar(embarqueInfo, seccion);
                }

                return(resultadoEmbarqueInfo);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw;
            }
        }
Exemple #3
0
        /// <summary>
        ///  Metodo que guarda una Programación de Embarque
        /// </summary>
        /// <param name="info"></param>
        internal void Guardar(EmbarqueInfo info, TipoGuardadoProgramacionEmbarqueEnum seccion)
        {
            try
            {
                Logger.Info();
                var programacionEmbarqueDAL = new ProgramacionEmbarqueDAL();

                using (var transaction = new TransactionScope())
                {
                    // Guardado para seecion de programacion
                    if (seccion == TipoGuardadoProgramacionEmbarqueEnum.Programacion)
                    {
                        if (info.EmbarqueID != 0)
                        {
                            // Actualizacion para pestaña de programación

                            if (info.TipoEmbarque.TipoEmbarqueID == TipoEmbarqueEnum.Ruteo.GetHashCode())
                            {
                                // Actualizacion para tipo de embarque 'Ruteo'
                                programacionEmbarqueDAL.ActualizarEmbarqueProgramacion(info);
                                programacionEmbarqueDAL.ActualizarProgramacionTipoEmbarqueRuteo(info);
                            }
                            else if (info.TipoEmbarque.TipoEmbarqueID == TipoEmbarqueEnum.Directo.GetHashCode())
                            {
                                // Actualizacion para tipo de embarque 'Directo'
                                programacionEmbarqueDAL.ActualizarProgramacionTipoEmbarqueDirecto(info);
                            }
                            else
                            {
                                // Actualizacion para cualquier otro tipo de embarque
                                programacionEmbarqueDAL.ActualizarProgramacion(info);
                            }
                            if (info.Observaciones != null)
                            {
                                programacionEmbarqueDAL.ActualizarProgramacionEmbarqueObservacion(info);
                            }
                        }
                        else
                        {
                            // Guardado para pestaña de programación

                            if (info.TipoEmbarque.TipoEmbarqueID == TipoEmbarqueEnum.Ruteo.GetHashCode())
                            {
                                // Guardado para tipo de embarque 'Ruteo'
                                programacionEmbarqueDAL.CrearProgramacionTipoEmbarqueRuteo(info);
                            }
                            else
                            {
                                // Guardado para cualquier otro tipo de embarque
                                programacionEmbarqueDAL.CrearProgramacion(info);
                            }
                        }
                    }
                    else if (seccion == TipoGuardadoProgramacionEmbarqueEnum.Transporte)
                    {
                        // Guardado para pestaña de transporte
                        if (info.UsuarioCreacionID == -1)
                        {
                            programacionEmbarqueDAL.ActualizarTransporteEmbarque(info);
                        }
                        else
                        {
                            programacionEmbarqueDAL.CrearTransporteEmbarque(info);
                        }
                    }
                    else if (seccion == TipoGuardadoProgramacionEmbarqueEnum.Datos)
                    {
                        // Guardado para pestaña de Datos
                        programacionEmbarqueDAL.CrearDatosEmbarque(info);
                    }
                    transaction.Complete();
                }
            }
            catch (ExcepcionGenerica)
            {
                throw;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }
        }