/// <summary> /// Redirecciona al visor de edición del registro en curso /// </summary> public void IrAEditar() { try { #region SC0008 - Envio de datos completo para las configuraciones de perfil facturista ConfiguracionAlertaBO configuracion = new ConfiguracionAlertaBO(); if (this.vista.PerfilID.HasValue) { ConfiguracionAlertaPerfilBO configuracionPerfil = new ConfiguracionAlertaPerfilBO(); configuracionPerfil.Perfil = new BPMO.Seguridad.BO.PerfilBO { Id = this.vista.PerfilID.Value }; configuracion = configuracionPerfil; } configuracion.ConfiguracionAlertaID = this.vista.ConfiguracionAlertaID; configuracion.Empleado = new EmpleadoBO { Id = this.vista.EmpleadoID, NombreCompleto = this.vista.EmpleadoNombre, Email = this.vista.CorreoElectronico }; configuracion.Sucursal = new SucursalBO { Id = this.vista.SucursalID, Nombre = this.vista.SucursalNombre }; configuracion.NumeroDias = this.vista.NumeroDias; #endregion this.vista.EstablecerPaqueteNavegacion("ConfiguracionAlertaBO", configuracion); this.vista.RedirigirAEditar(); } catch (Exception ex) { throw new Exception(this.nombreClase + ".IrAEditar: " + ex.GetBaseException().Message); } }
/// <summary> /// Asigna los datos de un objeto a los campos correspondientes de la vista /// </summary> /// <param name="obj">Objeto que contiene los datos a visualizar</param> private void DatoAInterfazUsuario(ConfiguracionAlertaBO bo) { if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } if (bo.Empleado == null) { bo.Empleado = new EmpleadoBO(); } if (bo.Auditoria == null) { bo.Auditoria = new AuditoriaBO(); } this.vista.ConfiguracionAlertaID = bo.ConfiguracionAlertaID; this.vista.SucursalID = bo.Sucursal.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.EmpleadoID = bo.Empleado.Id; this.vista.EmpleadoNombre = bo.Empleado.NombreCompleto; this.vista.CorreoElectronico = bo.Empleado.Email; this.vista.NumeroDias = bo.NumeroDias; this.vista.Estatus = bo.Estatus; this.vista.UC = bo.Auditoria.UC; this.vista.FC = bo.Auditoria.FC; if (bo is ConfiguracionAlertaPerfilBO) { this.vista.PerfilID = (bo as ConfiguracionAlertaPerfilBO).Perfil.Id; } }
/// <summary> /// Genera un registro a partir de los campos capturados en la vista /// </summary> /// <returns>Objeto generador a partir de los datos visualizados</returns> private object InterfazUsuarioADato() { ConfiguracionAlertaBO bo = new ConfiguracionAlertaBO { NumeroDias = this.vista.NumeroDias, Estatus = this.vista.Estatus, Sucursal = new SucursalBO { Id = vista.SucursalID, UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadOperativaID } }, Empleado = new EmpleadoBO { Id = vista.EmpleadoID }, Auditoria = new AuditoriaBO { FC = this.vista.FC, FUA = this.vista.FUA, UC = this.vista.UC, UUA = this.vista.UUA } }; return(bo); }
/// <summary> /// Realiza la consulta de datos a partir de los campos campturados en la vista /// </summary> public void Consultar() { string s; if ((s = this.ValidarCampos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } try { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)this.InterfazUsuarioADato(); SeguridadBO seguridadBO = this.CrearObjetoSeguridad(); //SC0008 - Se agrega a los parámetros de consulta el objeto seguridadBO que es requerido List <ConfiguracionAlertaBO> lst = this.controlador.ConsultarCompleto(this.dctx, bo, seguridadBO); if (lst.Count < 1) { this.vista.MostrarMensaje("La búsqueda no produjo resultados", ETipoMensajeIU.INFORMACION, "No se encontraron coincidencias con los criterios ingresados. Verifique sus datos"); } this.vista.EstablecerResultado(lst); } catch (Exception ex) { throw new Exception(nombreClase + ".Consultar: " + ex.GetBaseException().Message); } }
/// <summary> /// Asigna los datos de un objeto a los campos correspondientes de la vista /// </summary> /// <param name="obj">Objeto que contiene los datos a visualizar</param> private void DatoAInterfazUsuario(Object obj) { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)obj; if (bo.Empleado == null) { bo.Empleado = new EmpleadoBO(); } if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } this.vista.ConfiguracionAlertaID = bo.ConfiguracionAlertaID; this.vista.EmpleadoID = bo.Empleado.Id; this.vista.EmpleadoNombre = bo.Empleado.NombreCompleto; this.vista.SucursalID = bo.Sucursal.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.CorreoElectronico = bo.Empleado.Email; this.vista.Estatus = bo.Estatus; this.vista.NumeroDias = bo.NumeroDias; #region SC0008 - Guardado del perfil asociado a la configuracion if (bo is ConfiguracionAlertaPerfilBO) { this.vista.PerfilID = (bo as ConfiguracionAlertaPerfilBO).Perfil.Id; } #endregion }
/// <summary> /// Realiza la consulta de datos a partir de los campos campturados en la vista /// </summary> private void Consultar() { try { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)this.InterfazUsuarioADato(); SeguridadBO seguridadBO = this.CrearObjetoSeguridad(); List <ConfiguracionAlertaBO> lst = this.controlador.ConsultarCompleto(this.dctx, bo, seguridadBO); if (lst.Count < 1) { throw new Exception("No se encontró ningún registro que corresponda a la información proporcionada."); } if (lst.Count > 1) { throw new Exception("La consulta devolvió más de un registro."); } this.DatoAInterfazUsuario(lst[0]); } catch (Exception ex) { this.DatoAInterfazUsuario(new ConfiguracionAlertaBO()); throw new Exception(this.nombreClase + ".ConsultarCompleto:" + ex.GetBaseException().Message); } }
/// <summary> /// Realiza la validación de los datos capturados para detectar errores o inconsistencias /// </summary> /// <returns>Objeto de tipo String que contiene el error detectado, en caso contrario devolverá nulo</returns> public String ValidarCampos() { string s = ""; if (this.vista.UnidadOperativaID == null) { s += "Unidad Operativa, "; } if (this.vista.SucursalID == null) { s += "Sucursal, "; } if (this.vista.EmpleadoID == null) { s += "Empleado, "; } if (this.vista.CorreoElectronico == null) { s += "Correo Electrónico, "; } if (this.vista.Estatus == null) { s += "Estatus, "; } if (this.vista.NumeroDias == null) { s += "Número Días, "; } if (s.Trim().CompareTo("") != 0) { return("Los siguientes campos no pueden estar vacíos: \n" + s.Substring(0, s.Length - 2)); } ConfiguracionAlertaBO bo = new ConfiguracionAlertaBO { Sucursal = new SucursalBO { Id = this.vista.SucursalID }, Empleado = new EmpleadoBO { Id = this.vista.EmpleadoID } }; SeguridadBO seguridadBO = this.CrearObjetoSeguridad(); //SC0008 - Se cambia el proceso de Validación de existencia considerando los empleados facturistas que tienen configuración automática bool any = this.controlador.ConsultarExistencia(this.dctx, bo, seguridadBO); if (any) { return("Ya existe una configuración de alerta para el usuario seleccionado en la sucursal seleccionada"); } return(null); }
/// <summary> /// Genera un registro a partir de los campos capturados en la vista /// </summary> /// <returns>Objeto generador a partir de los datos visualizados</returns> private Object InterfazUsuarioADato() { ConfiguracionAlertaBO bo = new ConfiguracionAlertaBO { ConfiguracionAlertaID = this.vista.ConfiguracionAlertaID, Sucursal = new SucursalBO(), Empleado = new EmpleadoBO() }; return(bo); }
/// <summary> /// Genera un registro a partir de los campos capturados en la vista /// </summary> /// <returns>Objeto generador a partir de los datos capturador</returns> private Object InterfazUsuarioADato() { ConfiguracionAlertaBO bo = new ConfiguracionAlertaBO { Sucursal = new SucursalBO { Id = this.vista.SucursalID }, Empleado = new EmpleadoBO { Id = this.vista.EmpleadoID }, Estatus = this.vista.Estatus }; return(bo); }
/// <summary> /// Evento que se ejecuta cuando se ligan los datos con el Grid /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void grdConfiguracionesAlerta_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { ConfiguracionAlertaBO configuracion = e.Row.DataItem as ConfiguracionAlertaBO; System.Web.UI.WebControls.Image imgTipoConfiguracion = (System.Web.UI.WebControls.Image)e.Row.FindControl("imgTipoConfiguracion"); if (configuracion is ConfiguracionAlertaPerfilBO) { imgTipoConfiguracion.ImageUrl = "~/Contenido/Imagenes/ico.usuario.certificado.png"; imgTipoConfiguracion.ToolTip = String.Format("Configuración Automática para empleado con perfil {0}", (configuracion as ConfiguracionAlertaPerfilBO).Perfil.NombreCorto); //e.Row.ForeColor = Color.FromArgb(0, 113, 188); } } }
/// <summary> /// Realiza la carga del registro al editar /// </summary> public void RealizarPrimeraCarga() { ConfiguracionAlertaBO confiuguracion = this.vista.ObtenerPaqueteNavegacion("ConfiguracionAlertaBO") as ConfiguracionAlertaBO; this.EstablecerDatosNavegacion(confiuguracion); this.PrepararEdicion(); this.LimpiarSesion(); #region SC0008 - Aplicación de condición de búsqueda cuando no sea facturista if (!(confiuguracion is ConfiguracionAlertaPerfilBO)) { this.Consultar(); } #endregion this.EstablecerSeguridad(); }
/// <summary> /// Guarda los cambios capturados y se rediriege al visor invocador /// </summary> public void Editar() { string s; if ((s = this.ValidarCampos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } try { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)this.InterfazUsuarioADato(); //Se crea el objeto de seguridad SeguridadBO seguridadBO = this.CrearObjetoSeguridad(); this.controlador.Actualizar(this.dctx, bo, this.vista.UltimoObjeto as ConfiguracionAlertaBO, seguridadBO); #region SC0008 - Recuperación de configuración de facturista que fue modificado if (bo is ConfiguracionAlertaPerfilBO) { //Se consulta lo insertado para recuperar los ID List <ConfiguracionAlertaBO> ls = this.controlador.Consultar(this.dctx, bo); if (ls.Count <= 0) { throw new Exception("Al consultar lo insertado no se encontraron coincidencias."); } if (ls.Count > 1) { throw new Exception("Al consultar lo insertado se encontró más de una coincidencia."); } bo = ls[0] as ConfiguracionAlertaBO; } #endregion this.vista.LimpiarSesion(); this.vista.EstablecerPaqueteNavegacion("ConfiguracionAlertaBO", bo); this.vista.RedirigirADetalles(); } catch (Exception ex) { throw new Exception(nombreClase + ".Editar:" + ex.GetBaseException().Message); } }
// <summary> /// Cambia a la vista de detalle del registro seleccionado /// </summary> /// <param name="configuracionAlertaBOID">Identificador del registro seleccionado</param> public void IrADetalle(dynamic parameters) { try { if (parameters == null) { throw new Exception("No se encontró el registro seleccionado"); } #region SC0008 - Se agregan la rutina para recuperación de una configuración que sea de facturista ConfiguracionAlertaBO configuracion = new ConfiguracionAlertaBO(); if (((IDictionary <String, object>)parameters).ContainsKey("PerfilID")) { ConfiguracionAlertaPerfilBO configuracionPerfil = new ConfiguracionAlertaPerfilBO(); configuracionPerfil.Perfil = new BPMO.Seguridad.BO.PerfilBO(); configuracionPerfil.Perfil.Id = parameters.PerfilID; configuracion = configuracionPerfil; } configuracion.ConfiguracionAlertaID = parameters.ConfiguracionAlertaID; configuracion.Empleado = new EmpleadoBO { Id = parameters.EmpleadoID, NombreCompleto = parameters.EmpleadoNombreCompleto, Email = parameters.EmpleadoEmail }; configuracion.Sucursal = new SucursalBO { Id = parameters.SucursalID, Nombre = parameters.SucursalNombre }; configuracion.NumeroDias = parameters.NumeroDias; #endregion this.vista.LimpiarSesion(); Dictionary <string, object> paquete = new Dictionary <string, object>(); paquete.Add("ObjetoFiltro", this.InterfazUsuarioADato()); paquete.Add("Bandera", true); this.vista.EstablecerPaqueteNavegacion("FiltrosConfiguracionAlerta", paquete); this.vista.EstablecerPaqueteNavegacion("ConfiguracionAlertaBO", configuracion); this.vista.RedirigirADetalle(); } catch (Exception ex) { throw new Exception(nombreClase + ".IrADetalle: " + ex.GetBaseException().Message); } }
/// <summary> /// Genera un registro a partir de los campos capturados en la vista /// </summary> /// <returns>Objeto generador a partir de los datos visualizados</returns> private object InterfazUsuarioADato() { #region SC0008 - Adición de caso cuando se está editando una configuración de tipo facturista ConfiguracionAlertaBO bo = new ConfiguracionAlertaBO(); if (this.vista.PerfilID.HasValue) { ConfiguracionAlertaPerfilBO configuracionPerfil = new ConfiguracionAlertaPerfilBO(); configuracionPerfil.Perfil = new BPMO.Seguridad.BO.PerfilBO { Id = this.vista.PerfilID }; bo = configuracionPerfil; } #endregion bo.ConfiguracionAlertaID = this.vista.ConfiguracionAlertaID; bo.NumeroDias = this.vista.NumeroDias; bo.Estatus = this.vista.Estatus; bo.Sucursal = new SucursalBO { Id = this.vista.SucursalID, Nombre = this.vista.SucursalNombre, UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadOperativaID } }; bo.Empleado = new EmpleadoBO { Id = this.vista.EmpleadoID, NombreCompleto = this.vista.EmpleadoNombre, Email = this.vista.CorreoElectronico }; bo.Auditoria = new AuditoriaBO { FC = this.vista.FC, FUA = this.vista.FUA, UC = this.vista.UC, UUA = this.vista.UUA }; return(bo); }
/// <summary> /// Asigna los datos de un objeto a los campos correspondientes de la vista /// </summary> /// <param name="obj">Objeto que contiene los datos a visualizar</param> private void DatoAInterfazUsuario(Object obj) { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)obj; if (bo.Empleado == null) { bo.Empleado = new EmpleadoBO(); } if (bo.Sucursal == null) { bo.Sucursal = new SucursalBO(); } this.vista.EmpleadoID = bo.Empleado.Id; this.vista.EmpleadoNombre = bo.Empleado.NombreCompleto; this.vista.SucursalID = bo.Sucursal.Id; this.vista.SucursalNombre = bo.Sucursal.Nombre; this.vista.Estatus = bo.Estatus; }
/// <summary> /// Guarda los cambios capturados y se rediriege al visor invocador /// </summary> public void Registrar() { string s; if ((s = this.ValidarCampos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } try { ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)this.InterfazUsuarioADato(); //Se crea el objeto de seguridad SeguridadBO seguridadBO = this.CrearObjetoSeguridad(); this.controlador.Insertar(this.dctx, bo, seguridadBO); //Se consulta lo insertado para recuperar los ID DataSet ds = this.controlador.ConsultarSet(this.dctx, bo); if (ds.Tables[0].Rows.Count <= 0) { throw new Exception("Al consultar lo insertado no se encontraron coincidencias."); } if (ds.Tables[0].Rows.Count > 1) { throw new Exception("Al consultar lo insertado se encontró más de una coincidencia."); } bo.ConfiguracionAlertaID = this.controlador.DataRowToConfiguracionAlertaBO(ds.Tables[0].Rows[0]).ConfiguracionAlertaID; this.LimpiarSesion(); this.vista.EstablecerPaqueteNavegacion("ConfiguracionAlertaBO", bo); this.vista.RedirigirADetalles(); } catch (Exception ex) { throw new Exception(nombreClase + ".Registrar: " + ex.GetBaseException().Message); } }
/// <summary> /// Establece un paquete de navegación en el visor /// </summary> /// <param name="key">Índice o identificador del paquete</param> /// <param name="value">Valor a asignar dentro del paquete de navegación</param> private void EstablecerDatosNavegacion(object paqueteNavegacion) { try { if (paqueteNavegacion == null) { throw new Exception("Se esperaba un objeto en la navegación. No se puede identificar qué registro se desea consultar."); } if (!(paqueteNavegacion is ConfiguracionAlertaBO)) { throw new Exception("Se esperaba un ConfiguracionAlerta."); } ConfiguracionAlertaBO bo = (ConfiguracionAlertaBO)paqueteNavegacion; this.DatoAInterfazUsuario(bo); } catch (Exception ex) { this.DatoAInterfazUsuario(new ConfiguracionAlertaBO()); throw new Exception(this.nombreClase + ".EstablecerDatosNavegacion: " + ex.GetBaseException().Message); } }
/// <summary> /// Realiza la carga del registro al visualizar /// </summary> public void RealizarPrimeraCarga() { try { this.PrepararVisualizacion(); ConfiguracionAlertaBO configuracionAlerta = this.vista.ObtenerPaqueteNavegacion("ConfiguracionAlertaBO") as ConfiguracionAlertaBO; this.EstablecerDatosNavegacion(configuracionAlerta); this.vista.PermitirRegresar(configuracionAlerta != null); this.LimpiarSesion(); #region SC0008 - Búsqueda únicamente paras las connfiguraciones que no sean de facturistas if (!(configuracionAlerta is ConfiguracionAlertaPerfilBO)) { this.Consultar(); } #endregion this.EstablecerSeguridad(); } catch (Exception ex) { throw new Exception(this.nombreClase + ".RealizarPrimeraCarga: " + ex.GetBaseException().Message); } }