/// <summary> /// Metodo para Crear un registro de Indicador /// </summary> /// <param name="info">Valores de la entidad que será creada</param> public int Crear(IndicadorInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorDAL.ObtenerParametrosCrear(info); int result = Create("Indicador_Crear", 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); } }
/// <summary> /// Metodo para Guardar/Modificar una entidad Indicador /// </summary> /// <param name="info"></param> public int Guardar(IndicadorInfo info) { try { Logger.Info(); var indicadorDAL = new IndicadorDAL(); int result = info.IndicadorId; if (info.IndicadorId == 0) { result = indicadorDAL.Crear(info); } else { indicadorDAL.Actualizar(info); } return(result); } 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 IndicadorInfo { UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(), }; }
internal IndicadorInfo ObtenerPorContratoID(IndicadorInfo indicadorInfo) { try { Logger.Info(); var parameters = AuxIndicadorDAL.ObtenerParametrosObtenerPorId(indicadorInfo); var ds = Retrieve("Indicador_ObtenerPorContratoID", parameters); IndicadorInfo result = null; if (ValidateDataSet(ds)) { result = MapIndicadorDAL.ObtenerPorId(ds); } 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); } }
/// <summary> /// Obtiene un registro de Indicador /// </summary> /// <param name="descripcion">Descripción de la Indicador</param> /// <returns></returns> public IndicadorInfo ObtenerPorDescripcion(string descripcion) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorDAL.ObtenerParametrosPorDescripcion(descripcion); DataSet ds = Retrieve("Indicador_ObtenerPorDescripcion", parameters); IndicadorInfo result = null; if (ValidateDataSet(ds)) { result = MapIndicadorDAL.ObtenerPorDescripcion(ds); } 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); } }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <IndicadorInfo> ObtenerPorPagina(PaginacionInfo pagina, IndicadorInfo filtro) { try { Dictionary <string, object> parameters = AuxIndicadorDAL.ObtenerParametrosPorPagina(pagina, filtro); DataSet ds = Retrieve("Indicador_ObtenerPorPagina", parameters); ResultadoInfo <IndicadorInfo> result = null; if (ValidateDataSet(ds)) { result = MapIndicadorDAL.ObtenerPorPagina(ds); } 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); } }
///// <summary> ///// Carga los datos de la entidad Organización ///// </summary> //private void CargaComboOrganizacion() //{ // var organizacionPL = new OrganizacionPL(); // var organizacion = new OrganizacionInfo // { // OrganizacionID = 0, // Descripcion = Properties.Resources.cbo_Seleccione, // }; // IList<OrganizacionInfo> listaOrganizacion = organizacionPL.ObtenerTodos(EstatusEnum.Activo); // listaOrganizacion.Insert(0, organizacion); // cmbOrganizacion.ItemsSource = listaOrganizacion; // cmbOrganizacion.SelectedItem = organizacion; //} /// <summary> /// Carga los datos de la entidad Organización /// </summary> private void CargaComboIndicador() { var indicadorBL = new IndicadorBL(); var indicadorDefault = new IndicadorInfo { IndicadorId = 0, Descripcion = Properties.Resources.cbo_Seleccione, }; IList <IndicadorInfo> listaIndicador = indicadorBL.ObtenerTodos(EstatusEnum.Activo); listaIndicador.Insert(0, indicadorDefault); cmbIndicador.ItemsSource = listaIndicador; cmbIndicador.SelectedIndex = 0; }
/// <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> /// Obtiene parametros para obtener un indicador por id /// </summary> /// <returns></returns> internal static Dictionary <string, object> ObtenerParametrosObtenerPorId(IndicadorInfo indicadorInfo) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@IndicadorID", indicadorInfo.IndicadorId } }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <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.IndicadorEdicion_MsgDescripcionRequerida; txtDescripcion.Focus(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.IndicadorEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int indicadorId = Contexto.IndicadorId; var indicadorPL = new IndicadorBL(); IndicadorInfo indicador = indicadorPL.ObtenerPorDescripcion(Contexto.Descripcion); if (indicador != null && (indicadorId == 0 || indicadorId != indicador.IndicadorId)) { resultado = false; mensaje = string.Format(Properties.Resources.IndicadorEdicion_MsgDescripcionExistente, indicador.IndicadorId); } } } catch (Exception ex) { throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } if (!string.IsNullOrWhiteSpace(mensaje)) { SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning); } return(resultado); }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <IndicadorInfo> ObtenerPorPagina(PaginacionInfo pagina, IndicadorInfo filtro) { try { Logger.Info(); var indicadorDAL = new IndicadorDAL(); ResultadoInfo <IndicadorInfo> result = indicadorDAL.ObtenerPorPagina(pagina, filtro); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Método que obtiene el indicador por contratoID /// </summary> /// <param name="indicadorInfo"></param> /// <returns></returns> public IndicadorInfo ObtenerPorContratoID(IndicadorInfo indicadorInfo) { try { Logger.Info(); var indicadorDAL = new IndicadorDAL(); IndicadorInfo result = indicadorDAL.ObtenerPorContratoID(indicadorInfo); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene la lista para mostrar en el grid /// </summary> private void ObtenerListaIndicador(int inicio, int limite) { try { if (ucPaginacion.ContextoAnterior != null) { bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior); if (!contextosIguales) { ucPaginacion.Inicio = 1; inicio = 1; } } var indicadorPL = new IndicadorBL(); IndicadorInfo filtros = ObtenerFiltros(); var pagina = new PaginacionInfo { Inicio = inicio, Limite = limite }; ResultadoInfo <IndicadorInfo> resultadoInfo = indicadorPL.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 <Indicador>(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Indicador_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Indicador_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } }
/// <summary> /// Obtiene parametros para crear /// </summary> /// <param name="info">Valores de la entidad</param> /// <returns></returns> public static Dictionary <string, object> ObtenerParametrosCrear(IndicadorInfo info) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@Descripcion", info.Descripcion }, { "@Activo", info.Activo }, { "@UsuarioCreacionID", info.UsuarioCreacionID }, }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Método que obtiene un registro /// </summary> /// <param name="ds"></param> /// <returns></returns> public static IndicadorInfo ObtenerPorDescripcion(DataSet ds) { try { Logger.Info(); DataTable dt = ds.Tables[ConstantesDAL.DtDatos]; IndicadorInfo entidad = (from info in dt.AsEnumerable() select new IndicadorInfo { IndicadorId = info.Field <int>("IndicadorID"), Descripcion = info.Field <string>("Descripcion"), Activo = info.Field <bool>("Activo").BoolAEnum(), }).First(); return(entidad); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Metodo para actualizar un registro de Indicador /// </summary> /// <param name="info">Valores de la entidad que se actualizarán</param> public void Actualizar(IndicadorInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorDAL.ObtenerParametrosActualizar(info); Update("Indicador_Actualizar", parameters); } 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); } }
/// <summary> /// Obtiene parametros para obtener lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public static Dictionary <string, object> ObtenerParametrosPorPagina(PaginacionInfo pagina, IndicadorInfo filtro) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@IndicadorID", filtro.IndicadorId }, { "@Descripcion", filtro.Descripcion }, { "@Activo", filtro.Activo }, { "@Inicio", pagina.Inicio }, { "@Limite", pagina.Limite } }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Constructor para editar una entidad Indicador Existente /// </summary> /// <param name="indicadorInfo"></param> public IndicadorEdicion(IndicadorInfo indicadorInfo) { InitializeComponent(); indicadorInfo.UsuarioModificacionID = AuxConfiguracion.ObtenerUsuarioLogueado(); Contexto = indicadorInfo; }