/// <summary> /// Metodo para Guardar/Modificar una entidad CausaTiempoMuerto /// </summary> /// <param name="info"></param> /// <returns></returns> public int Guardar(CausaTiempoMuertoInfo info) { try { Logger.Info(); var id = 0; if (info.CausaTiempoMuertoID > 0) { id = da.Actualizar <CausaTiempoMuertoInfo>(info); causaTiempoMuertoAccessor.ActualizarFechaModificacion(info.CausaTiempoMuertoID); } else { id = da.Insertar <CausaTiempoMuertoInfo>(info); } return(id); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Inicializa el Contexto /// </summary> private void InicializaContexto() { Contexto = new CausaTiempoMuertoInfo { UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(), }; }
/// <summary> /// Obtiene la lista para mostrar en el grid /// </summary> private void ObtenerListaCausaTiempoMuerto(int inicio, int limite) { try { var causaTiempoMuertoBL = new CausaTiempoMuertoBL(); CausaTiempoMuertoInfo filtros = ObtenerFiltros(); var pagina = new PaginacionInfo { Inicio = inicio, Limite = limite }; ResultadoInfo <CausaTiempoMuertoInfo> resultadoInfo = causaTiempoMuertoBL.ObtenerPorPagina(pagina, filtros); if (resultadoInfo != null && resultadoInfo.Lista != null && resultadoInfo.Lista.Count > 0) { gridDatos.ItemsSource = resultadoInfo.Lista; ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros; } else { ucPaginacion.TotalRegistros = 0; ucPaginacion.AsignarValoresIniciales(); gridDatos.ItemsSource = new List <CausaTiempoMuerto>(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CausaTiempoMuerto_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CausaTiempoMuerto_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } }
/// <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(txtCausaTiempoMuertoID.Text)) { resultado = false; mensaje = Properties.Resources.CausaTiempoMuertoEdicion_MsgCausaTiempoMuertoIDRequerida; txtCausaTiempoMuertoID.Focus(); } else if (string.IsNullOrWhiteSpace(txtDescripcion.Text) || Contexto.Descripcion == string.Empty) { resultado = false; mensaje = Properties.Resources.CausaTiempoMuertoEdicion_MsgDescripcionRequerida; txtDescripcion.Focus(); } else if (string.IsNullOrWhiteSpace(txtTipoCausa.Text) || Contexto.TipoCausa == 0) { resultado = false; mensaje = Properties.Resources.CausaTiempoMuertoEdicion_MsgTipoCausaRequerida; txtTipoCausa.Focus(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.CausaTiempoMuertoEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int causaTiempoMuertoId = Extensor.ValorEntero(txtCausaTiempoMuertoID.Text); string descripcion = txtDescripcion.Text; var causaTiempoMuertoBL = new CausaTiempoMuertoBL(); CausaTiempoMuertoInfo causaTiempoMuerto = causaTiempoMuertoBL.ObtenerPorDescripcion(descripcion); if (causaTiempoMuerto != null && (causaTiempoMuertoId == 0 || causaTiempoMuertoId != causaTiempoMuerto.CausaTiempoMuertoID)) { resultado = false; mensaje = string.Format(Properties.Resources.CausaTiempoMuertoEdicion_MsgDescripcionExistente, causaTiempoMuerto.CausaTiempoMuertoID); } } } catch (Exception ex) { throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } if (!string.IsNullOrWhiteSpace(mensaje)) { SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning); } return(resultado); }
/// <summary> /// Evento que se ejecuta mientras se esta cerrando la ventana /// </summary> /// <param name="e"></param> protected override void OnClosing(CancelEventArgs e) { if (confirmaSalir) { MessageBoxResult result = SkMessageBox.Show(this, Properties.Resources.Msg_CerrarSinGuardar, MessageBoxButton.YesNo, MessageImage.Question); if (result == MessageBoxResult.Yes) { Contexto = null; } else { e.Cancel = true; } } }
/// <summary> /// Metodo para Guardar/Modificar una entidad CausaTiempoMuerto /// </summary> /// <param name="info"></param> /// <returns></returns> public int Guardar(CausaTiempoMuertoInfo info) { try { Logger.Info(); return(causaTiempoMuertoDAL.Guardar(info)); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene una lista paginada de CausaTiempoMuerto /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <CausaTiempoMuertoInfo> ObtenerPorPagina(PaginacionInfo pagina, CausaTiempoMuertoInfo filtro) { try { Logger.Info(); ResultadoInfo <CausaTiempoMuertoInfo> result = new ResultadoInfo <CausaTiempoMuertoInfo>(); var condicion = da.Tabla <CausaTiempoMuertoInfo>().Where(e => e.Activo == filtro.Activo); if (filtro.CausaTiempoMuertoID > 0) { condicion = condicion.Where(e => e.CausaTiempoMuertoID == filtro.CausaTiempoMuertoID); } if (!string.IsNullOrEmpty(filtro.Descripcion)) { condicion = condicion.Where(e => e.Descripcion.Contains(filtro.Descripcion)); } result.TotalRegistros = condicion.Count(); int inicio = pagina.Inicio; int limite = pagina.Limite; if (inicio > 1) { int limiteReal = (limite - inicio) + 1; inicio = (limite / limiteReal); limite = limiteReal; } var paginado = condicion .OrderBy(e => e.Descripcion) .Skip((inicio - 1) * limite) .Take(limite); result.Lista = paginado.ToList(); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Constructor para editar una entidad CausaTiempoMuerto Existente /// </summary> /// <param name="causaTiempoMuertoInfo"></param> public CausaTiempoMuertoEdicion(CausaTiempoMuertoInfo causaTiempoMuertoInfo) { InitializeComponent(); causaTiempoMuertoInfo.UsuarioModificacionID = AuxConfiguracion.ObtenerUsuarioLogueado(); Contexto = causaTiempoMuertoInfo; }
/// <summary> /// Obtiene una lista paginada de CausaTiempoMuerto /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <CausaTiempoMuertoInfo> ObtenerPorPagina(PaginacionInfo pagina, CausaTiempoMuertoInfo filtro) { try { Logger.Info(); return(causaTiempoMuertoDAL.ObtenerPorPagina(pagina, filtro)); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }