/// <summary> /// Metodo para Crear un registro de IndicadorProducto /// </summary> /// <param name="info">Valores de la entidad que será creada</param> public int Crear(IndicadorProductoInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorProductoDAL.ObtenerParametrosCrear(info); int result = Create("IndicadorProducto_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 IndicadorProducto /// </summary> /// <param name="info"></param> public int Guardar(IndicadorProductoInfo info) { try { Logger.Info(); var indicadorProductoDAL = new IndicadorProductoDAL(); int result = info.IndicadorProductoId; if (info.IndicadorProductoId == 0) { result = indicadorProductoDAL.Crear(info); } else { indicadorProductoDAL.Actualizar(info); } return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un indicador producto por clave /// de indicador y clave de producto /// </summary> /// <param name="indicadorProductoInfo"></param> /// <returns></returns> internal IndicadorProductoInfo ObtenerPorIndicadorProducto(IndicadorProductoInfo indicadorProductoInfo) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorProductoDAL.ObtenerPorIndicadorProducto(indicadorProductoInfo); DataSet ds = Retrieve("IndicadorProducto_ObtenerPorIndicadorProducto", parameters); IndicadorProductoInfo result = null; if (ValidateDataSet(ds)) { result = MapIndicadorProductoDAL.ObtenerPorIndicadorProducto(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 indicador producto /// </summary> /// <param name="ds"></param> /// <returns></returns> internal static IndicadorProductoInfo ObtenerPorIndicadorProducto(DataSet ds) { try { Logger.Info(); DataTable dt = ds.Tables[ConstantesDAL.DtDatos]; IndicadorProductoInfo lista = (from info in dt.AsEnumerable() select new IndicadorProductoInfo { IndicadorProductoId = info.Field <int>("IndicadorProductoID"), IndicadorInfo = new IndicadorInfo { IndicadorId = info.Field <int>("IndicadorID"), Descripcion = info.Field <string>("Indicador") }, Producto = new ProductoInfo { ProductoId = info.Field <int>("ProductoID"), Descripcion = info.Field <string>("Producto") }, Activo = info.Field <bool>("Activo").BoolAEnum(), }).FirstOrDefault(); return(lista); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Inicializa el Contexto /// </summary> private void InicializaContexto() { Contexto = new IndicadorProductoInfo { UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(), Producto = new ProductoInfo(), IndicadorInfo = new IndicadorInfo() }; }
/// <summary> /// Metodo que valida los datos para guardar /// </summary> /// <returns></returns> private bool ValidaGuardar() { bool resultado = true; string mensaje = string.Empty; try { if (Contexto.IndicadorInfo == null || Contexto.IndicadorInfo.IndicadorId == 0) { resultado = false; mensaje = Properties.Resources.IndicadorProductoEdicion_MsgIndicadorIDRequerida; skAyudaIndicador.Focus(); } else if (Contexto.Producto == null || Contexto.Producto.ProductoId == 0) { resultado = false; mensaje = Properties.Resources.IndicadorProductoEdicion_MsgProductoIDRequerida; skAyudaProducto.AsignarFoco(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.IndicadorProductoEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int indicadorProductoId = Contexto.IndicadorProductoId; var indicadorProductoPL = new IndicadorProductoPL(); IndicadorProductoInfo indicadorProducto = indicadorProductoPL.ObtenerPorIndicadorProducto(Contexto); if (indicadorProducto != null && (indicadorProductoId == 0 || indicadorProductoId != indicadorProducto.IndicadorProductoId)) { resultado = false; mensaje = string.Format(Properties.Resources.IndicadorProductoEdicion_MsgDescripcionExistente, indicadorProducto.IndicadorProductoId); } } } 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 IndicadorProducto /// </summary> /// <param name="info">Representa la entidad que se va a grabar</param> public int Guardar(IndicadorProductoInfo info) { try { Logger.Info(); var indicadorProductoBL = new IndicadorProductoBL(); int result = indicadorProductoBL.Guardar(info); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un indicador producto por clave /// de indicador y clave de producto /// </summary> /// <param name="indicadorProductoInfo"></param> /// <returns></returns> internal IndicadorProductoInfo ObtenerPorIndicadorProducto(IndicadorProductoInfo indicadorProductoInfo) { try { Logger.Info(); var indicadorProductoDAL = new IndicadorProductoDAL(); IndicadorProductoInfo result = indicadorProductoDAL.ObtenerPorIndicadorProducto(indicadorProductoInfo); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
private void ObtenerIndicadorProducto() { try { var indicadorProductoPL = new IndicadorProductoPL(); IndicadorProductoInfo indicadorProducto = indicadorProductoPL.ObtenerPorIndicadorProducto(Contexto.IndicadorProducto); if (indicadorProducto != null) { Contexto.IndicadorProducto.IndicadorProductoId = indicadorProducto.IndicadorProductoId; } } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(this, Properties.Resources.IndicadorProductoBoleta_ErrorGuardar, MessageBoxButton.OK, MessageImage.Error); } }
/// <summary> /// Obtiene los parametros necesarios para la ejecucion /// del procedimiento almacenado IndicadorProducto_ObtenerPorIndicadorProducto /// </summary> /// <param name="indicadorProducto"></param> /// <returns></returns> internal static Dictionary <string, object> ObtenerPorIndicadorProducto(IndicadorProductoInfo indicadorProducto) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@IndicadorID", indicadorProducto.IndicadorInfo.IndicadorId }, { "@ProductoID", indicadorProducto.Producto.ProductoId }, }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene la lista para mostrar en el grid /// </summary> private void ObtenerListaIndicadorProducto(int inicio, int limite) { try { if (ucPaginacion.ContextoAnterior != null) { bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior); if (!contextosIguales) { ucPaginacion.Inicio = 1; inicio = 1; } } var indicadorProductoPL = new IndicadorProductoPL(); IndicadorProductoInfo filtros = ObtenerFiltros(); var pagina = new PaginacionInfo { Inicio = inicio, Limite = limite }; ResultadoInfo <IndicadorProductoInfo> resultadoInfo = indicadorProductoPL.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 <IndicadorProducto>(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.IndicadorProducto_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.IndicadorProducto_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(IndicadorProductoInfo info) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@Activo", info.Activo }, { "@IndicadorID", info.IndicadorInfo.IndicadorId }, { "@ProductoID", info.Producto.ProductoId }, { "@UsuarioCreacionID", info.UsuarioCreacionID }, }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Metodo para actualizar un registro de IndicadorProducto /// </summary> /// <param name="info">Valores de la entidad que se actualizarán</param> public void Actualizar(IndicadorProductoInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxIndicadorProductoDAL.ObtenerParametrosActualizar(info); Update("IndicadorProducto_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 un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <IndicadorProductoInfo> ObtenerPorPagina(PaginacionInfo pagina, IndicadorProductoInfo filtro) { try { Logger.Info(); var indicadorProductoBL = new IndicadorProductoBL(); ResultadoInfo <IndicadorProductoInfo> result = indicadorProductoBL.ObtenerPorPagina(pagina, filtro); return(result); } catch (ExcepcionGenerica) { throw; } 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, IndicadorProductoInfo filtro) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@IndicadorProductoID", filtro.IndicadorProductoId }, { "@IndicadorID", filtro.IndicadorInfo.IndicadorId }, { "@ProductoID", filtro.Producto.ProductoId }, { "@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 IndicadorProducto Existente /// </summary> /// <param name="indicadorProductoInfo"></param> public IndicadorProductoEdicion(IndicadorProductoInfo indicadorProductoInfo) { InitializeComponent(); indicadorProductoInfo.UsuarioModificacionID = AuxConfiguracion.ObtenerUsuarioLogueado(); Contexto = indicadorProductoInfo; }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> public ResultadoInfo <IndicadorProductoInfo> ObtenerPorPagina(PaginacionInfo pagina, IndicadorProductoInfo filtro) { try { Dictionary <string, object> parameters = AuxIndicadorProductoDAL.ObtenerParametrosPorPagina(pagina, filtro); DataSet ds = Retrieve("IndicadorProducto_ObtenerPorPagina", parameters); ResultadoInfo <IndicadorProductoInfo> result = null; if (ValidateDataSet(ds)) { result = MapIndicadorProductoDAL.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); } }