/// <summary> /// Metodo que guardado para seccion de datos /// </summary> /// <param name="info"></param> internal EmbarqueInfo GuardarDatos(EmbarqueInfo info) { var result = new EmbarqueInfo(); try { Logger.Info(); var programacionEmbarqueDAL = new ProgramacionEmbarqueDAL(); using (var transaction = new TransactionScope()) { if (info.UsuarioCreacionID == -1) { // Actualizar para pestaña de Datos result = programacionEmbarqueDAL.ActualizarDatosEmbarque(info); } else { // Guardar para pestaña de Datos result = programacionEmbarqueDAL.CrearDatosEmbarque(info); } transaction.Complete(); } } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } return(result); }
/// <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); } }