示例#1
0
        /// <summary>
        /// Método para guardar los valores del contexto
        /// </summary>
        private void Guardar()
        {
            bool guardar = ValidaGuardar();

            if (guardar)
            {
                try
                {
                    using (var grupoCorralBL = new GrupoCorralBL())
                    {
                        int grupoCorralID = Contexto.GrupoCorralID;
                        grupoCorralBL.Guardar(Contexto);
                        SkMessageBox.Show(this, Properties.Resources.GuardadoConExito, MessageBoxButton.OK, MessageImage.Correct);
                        if (grupoCorralID != 0)
                        {
                            confirmaSalir = false;
                            Close();
                        }
                        else
                        {
                            InicializaContexto();
                        }
                    }
                }
                catch (ExcepcionGenerica)
                {
                    SkMessageBox.Show(this, Properties.Resources.GrupoCorral_ErrorGuardar, MessageBoxButton.OK, MessageImage.Error);
                }
                catch (Exception ex)
                {
                    Logger.Error(ex);
                    SkMessageBox.Show(this, Properties.Resources.GrupoCorral_ErrorGuardar, MessageBoxButton.OK, MessageImage.Error);
                }
            }
        }
示例#2
0
        /// <summary>
        /// Metodo que valida los datos para guardar
        /// </summary>
        /// <returns></returns>
        private bool ValidaGuardar()
        {
            bool   resultado = true;
            string mensaje   = string.Empty;

            try
            {
                if (string.IsNullOrWhiteSpace(Contexto.Descripcion))
                {
                    resultado = false;
                    mensaje   = Properties.Resources.GrupoCorralEdicion_MsgDescripcionRequerida;
                    txtDescripcion.Focus();
                }
                else if (cmbActivo.SelectedItem == null)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.GrupoCorralEdicion_MsgActivoRequerida;
                    cmbActivo.Focus();
                }
                else
                {
                    int    grupoCorralId = Contexto.GrupoCorralID;
                    string descripcion   = Contexto.Descripcion;

                    using (var grupoCorralBL = new GrupoCorralBL())
                    {
                        GrupoCorralInfo grupoCorral = grupoCorralBL.ObtenerPorDescripcion(descripcion);

                        if (grupoCorral != null && (grupoCorralId == 0 || grupoCorralId != grupoCorral.GrupoCorralID))
                        {
                            resultado = false;
                            mensaje   = string.Format(Properties.Resources.GrupoCorralEdicion_MsgDescripcionExistente,
                                                      grupoCorral.GrupoCorralID);
                        }
                    }
                }
                if (resultado && Contexto.GrupoCorralID > 0)
                {
                    var  tipoCorralPL        = new TipoCorralPL();
                    bool tieneTiposAsignados = tipoCorralPL.TieneAsignadoGruposCorral(Contexto.GrupoCorralID);
                    if (tieneTiposAsignados)
                    {
                        resultado = false;
                        cmbActivo.Focus();
                        mensaje = Properties.Resources.GrupoCorralEdicion_MsgGrupoCorralAsignatoTipoCorral;
                    }
                }
            }
            catch (Exception ex)
            {
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning);
            }
            return(resultado);
        }
示例#3
0
 /// <summary>
 /// Obtiene la lista para mostrar en el grid
 /// </summary>
 private void ObtenerListaGrupoCorral(int inicio, int limite)
 {
     try
     {
         using (var grupoCorralBL = new GrupoCorralBL())
         {
             if (ucPaginacion.ContextoAnterior != null)
             {
                 bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior);
                 if (!contextosIguales)
                 {
                     ucPaginacion.Inicio = 1;
                     inicio = 1;
                 }
             }
             var pagina = new PaginacionInfo {
                 Inicio = inicio, Limite = limite
             };
             ResultadoInfo <GrupoCorralInfo> resultadoInfo = grupoCorralBL.ObtenerPorPagina(pagina, Contexto);
             if (resultadoInfo != null && resultadoInfo.Lista != null &&
                 resultadoInfo.Lista.Count > 0)
             {
                 gridDatos.ItemsSource       = resultadoInfo.Lista;
                 ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros;
             }
             else
             {
                 ucPaginacion.TotalRegistros = 0;
                 gridDatos.ItemsSource       = new List <GrupoCorral>();
             }
         }
     }
     catch (ExcepcionGenerica)
     {
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.GrupoCorral_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.GrupoCorral_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
 }
示例#4
0
 /// <summary>
 /// Obtiene un lista de grupos de corral que dependiendo del estatus.
 /// </summary>
 /// <returns></returns>
 public IList <GrupoCorralInfo> ObtenerTodos(EstatusEnum estatus)
 {
     try
     {
         Logger.Info();
         using (var grupoCorralBl = new GrupoCorralBL())
         {
             IList <GrupoCorralInfo> result = grupoCorralBl.ObtenerTodos(estatus);
             return(result);
         }
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }