diff --git a/Business/Data/UsuarioEfector.cs b/Business/Data/UsuarioEfector.cs index bfb4888..3046770 100644 --- a/Business/Data/UsuarioEfector.cs +++ b/Business/Data/UsuarioEfector.cs @@ -19,27 +19,32 @@ public sealed class UsuarioEfector: Business.BaseDataAccess private int m_idusuarioefector; private Usuario m_idusuario; private Efector m_idefector; - private bool m_activo; - + private int m_idPerfil; + private int m_idEfectorDestino; + private int m_idArea; + private int m_idUsuarioRegistro; + private DateTime m_fechaRegistro; - #endregion - #region Default ( Empty ) Class Constuctor - /// - /// default constructor - /// - public UsuarioEfector() + #endregion + + #region Default ( Empty ) Class Constuctor + /// + /// default constructor + /// + public UsuarioEfector() { m_idusuarioefector = 0; m_idusuario = new Usuario(); m_idefector = new Efector(); - m_activo = false; - - - - } + m_idPerfil = 0; + m_idEfectorDestino = 0; + m_idArea = 0; + m_idUsuarioRegistro = 0; + m_fechaRegistro = DateTime.MinValue; + } #endregion // End of Default ( Empty ) Class Constuctor @@ -49,12 +54,11 @@ public UsuarioEfector() /// required (not null) fields only constructor /// public UsuarioEfector( - bool activo) + bool activo) : this() { m_idusuario = new Usuario(); m_idefector = new Efector(); - m_activo = activo; @@ -112,30 +116,70 @@ public bool Activo m_activo = value; } + } + public int IdPerfil + { + get { return m_idPerfil; } + set + { + m_isChanged |= (m_idPerfil != value ); + m_idPerfil = value; + } + } - - public bool IsChanged + public int IdEfectorDestino { - get { return m_isChanged; } + get { return m_idEfectorDestino; } + set + { + m_isChanged |= (m_idEfectorDestino != value ); + m_idEfectorDestino = value; + } + } + + public int IdArea + { + get { return m_idArea; } + set + { + m_isChanged |= (m_idArea != value ); + m_idArea = value; + } - #endregion + } + + public int IdUsuarioRegistro + { + get { return m_idUsuarioRegistro; } + set + { + m_isChanged |= (m_idUsuarioRegistro != value ); + m_idUsuarioRegistro = value; + } + } + + public DateTime FechaRegistro + { + get { return m_fechaRegistro; } + set + { + m_isChanged |= (m_fechaRegistro != value ); + m_fechaRegistro = value; + } - #region Metodos + } + + public bool IsChanged + { + get { return m_isChanged; } + } #endregion - //public bool esHemoterapia() - //{ - // var index=this.IdPerfil.Nombre.ToUpper().IndexOf("HEMOTERAPIA"); - // if (index > -1) return true; - // else return false; - //} - - } } diff --git a/Business/Data/UsuarioEfector.hbm.xml b/Business/Data/UsuarioEfector.hbm.xml index 9a8644f..d558ea7 100644 --- a/Business/Data/UsuarioEfector.hbm.xml +++ b/Business/Data/UsuarioEfector.hbm.xml @@ -8,12 +8,11 @@ - - - - - - + + + + + diff --git a/WebLab/Informes/AuditoriaUser.cs b/WebLab/Informes/AuditoriaUser.cs index 011b0ac..da02ce0 100644 --- a/WebLab/Informes/AuditoriaUser.cs +++ b/WebLab/Informes/AuditoriaUser.cs @@ -74,6 +74,8 @@ public CrystalDecisions.CrystalReports.Engine.Section Section3 { [Browsable(false)] [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] + public CrystalDecisions.CrystalReports.Engine.Section Section4 + { get { return this.ReportDefinition.Sections[3]; } @@ -81,7 +83,7 @@ public CrystalDecisions.CrystalReports.Engine.Section Section3 { [Browsable(false)] [DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Hidden)] - public CrystalDecisions.CrystalReports.Engine.Section Section3 { + public CrystalDecisions.CrystalReports.Engine.Section Section5 { get { return this.ReportDefinition.Sections[4]; } diff --git a/WebLab/Usuarios/UsuarioEdit.aspx b/WebLab/Usuarios/UsuarioEdit.aspx index 1a892ea..6a05ef2 100644 --- a/WebLab/Usuarios/UsuarioEdit.aspx +++ b/WebLab/Usuarios/UsuarioEdit.aspx @@ -196,7 +196,7 @@ MaxLength="50"> * - + @@ -221,42 +221,8 @@ - <%-- - - Efector - - - - * - - --%> - - - Area/Laboratorio: - - - - - - - - Perfil: - - - - * - - - * - - - + + Activo: @@ -322,30 +288,70 @@
-
- - -
- - <%-- - --%> - - - - +
+ + + + + + + + + + + + + + + + + + + + + + - - + + + -
Efector: + + * + +
Area/Laboratorio: + + +
+ Perfil: + + + * + +
+ + + * +
+ - -
+


+ - - - + + + + + + + + + + + + - - - - - - - + + + + + diff --git a/WebLab/Usuarios/UsuarioEdit.aspx.cs b/WebLab/Usuarios/UsuarioEdit.aspx.cs index 3f09ffc..2e6160a 100644 --- a/WebLab/Usuarios/UsuarioEdit.aspx.cs +++ b/WebLab/Usuarios/UsuarioEdit.aspx.cs @@ -29,9 +29,6 @@ public partial class UsuarioEdit : System.Web.UI.Page public Configuracion oC = new Configuracion(); CrystalReportSource oCr = new CrystalReportSource(); - - - protected void Page_PreInit(object sender, EventArgs e) { if (Session["idUsuario"] != null) @@ -122,16 +119,16 @@ private void MostrarDatos() txtPassword.Visible = false; lblPassword.Visible = false; chkActivo.Checked = oRegistro.Activo; - ddlPerfil.SelectedValue = oRegistro.IdPerfil.IdPerfil.ToString(); + //ddlPerfil.SelectedValue = oRegistro.IdPerfil.IdPerfil.ToString(); --> Se muestra en grilla tab Efector //ddlEfector.SelectedValue = oRegistro.IdEfector.IdEfector.ToString(); //ddlEfector.Enabled = false; - if (ddlPerfil.SelectedValue == "15") - { - CargarEfectorLabo(); - ddlEfectorDestino.SelectedValue = oRegistro.IdEfectorDestino.IdEfector.ToString(); - } + //if (ddlPerfil.SelectedValue == "15") --> Se muestra en grilla tab Efector + //{ + // CargarEfectorLabo(); + // ddlEfectorDestino.SelectedValue = oRegistro.IdEfectorDestino.IdEfector.ToString(); + //} - ddlArea.SelectedValue = oRegistro.IdArea.ToString(); + //ddlArea.SelectedValue = oRegistro.IdArea.ToString();--> Se muestra en grilla tab Efector chkExterno.Checked = oRegistro.Externo; rfvPassword.Enabled = false; email.Value = oRegistro.Email; @@ -142,7 +139,7 @@ private void MostrarDatos() habilitarAdministrador(); Usuario oAuditor = new Usuario(); oAuditor = (Usuario)oAuditor.Get(typeof(Usuario), int.Parse(Session["idUsuario"].ToString())); - ViewState["idAuditoriaConsulta"] = oAuditor.GrabaAuditoria("Consulta", oRegistro.IdUsuario, oRegistro.Username); + oAuditor.GrabaAuditoria("Consulta", oRegistro.IdUsuario, oRegistro.Username); MostrarEfectores(); ddlTipoAutenticacion.SelectedValue = oRegistro.TipoAutenticacion.Trim(); @@ -297,9 +294,13 @@ private DataTable LeerDatosEfector() { if (Request["id"] != null) { - string m_strSQL = @" SELECT IR.idUsuarioEfector, R.nombre as nombre , R.idEfector - FROM Sys_UsuarioEfector IR (nolock) - INNER JOIN sys_efector R (nolock) ON R.idEfector=IR.idEfector + string m_strSQL = @" SELECT IR.idUsuarioEfector, R.nombre as nombre , R.idEfector, isnull(A.nombre,'Todas') AS Area, Ir.idArea, P.nombre AS Perfil, P.idPerfil, dest.nombre as EfectorDestino, IR.idEfectorDestino + FROM Sys_UsuarioEfector IR (nolock) + INNER JOIN sys_efector R (nolock) ON R.idEfector=IR.idEfector + LEFT JOIN LAB_Area A (nolock) ON A.idArea = IR.idArea + INNER JOIN Sys_Perfil P (nolock) ON P.idPerfil = IR.idPerfil + INNER JOIN sys_efector dest (nolock) ON dest.idEfector=IR.idEfectorDestino + WHERE IR.idUsuario=" + Request["id"].ToString(); @@ -417,22 +418,18 @@ protected void btnBlanquear_Click(object sender, EventArgs e) protected void customValidacionGeneral_ServerValidate(object source, ServerValidateEventArgs args) { - - //if (Request["id"] == null) // Validar tambien en modificacion + Usuario oRegistro = new Usuario(); + oRegistro = (Usuario)oRegistro.Get(typeof(Usuario), "Username", txtUsername.Text.Trim()); + if (oRegistro != null) { - - Usuario oRegistro = new Usuario(); - - oRegistro = (Usuario)oRegistro.Get(typeof(Usuario), "Username", txtUsername.Text.Trim()); - if (oRegistro != null) + if (Request["id"] != null) { - if (Request["id"] != null) - if (oRegistro.IdUsuario != int.Parse(Request["id"])) //que no compare el username del que estoy modificando - args.IsValid = false; - - return; - + if (oRegistro.IdUsuario != int.Parse(Request["id"])) //que no compare el username del que estoy modificando + args.IsValid = false; } + else args.IsValid = false; + + return; } } @@ -441,16 +438,21 @@ protected void ddlPerfil_SelectedIndexChanged(object sender, EventArgs e) { rvEfectorDestino.Enabled = false; ddlEfectorDestino.Visible = false; + lblEfectorDestino.Visible = false; if (ddlPerfil.SelectedValue == "15") { CargarEfectorLabo(); } else { - //Si habia algun valor seleccionado lo limpio - ddlEfectorDestino.SelectedValue = "0"; + if (ddlEfectorDestino.Items.FindByValue(ddlEfector3.SelectedValue.ToString()) != null)//si existe el efector seleccionado se carga en destino + ddlEfectorDestino.SelectedValue = ddlEfector3.SelectedValue; + else + ddlEfectorDestino.SelectedValue = "0"; } + ddlEfectorDestino.UpdateAfterCallBack = true; + lblEfectorDestino.UpdateAfterCallBack = true; } private void CargarEfectorLabo() @@ -468,6 +470,8 @@ private void CargarEfectorLabo() ddlEfectorDestino.Visible = true; rvEfectorDestino.Enabled = true; rvEfectorDestino.UpdateAfterCallBack = true; + lblEfectorDestino.Visible = true; + lblEfectorDestino.UpdateAfterCallBack = true; } protected void customValidacionGeneral0_ServerValidate(object source, ServerValidateEventArgs args) @@ -607,27 +611,29 @@ private void guardarAuditoria(Usuario oRegistro) if (oRegistro.Administrador != chkAdministrador.Checked) { oAuditor.GrabaAuditoria("Modifica Administrador", oRegistro.IdUsuario, oRegistro.Username, oRegistro.Administrador ? "Si" : "No", chkAdministrador.Checked ? "Si" : "No"); } - if (oRegistro.IdArea.ToString() != ddlArea.SelectedValue) - { - string nombreArea = ""; - if (oRegistro.IdArea != 0) - { - Area oArea = new Area(); - oArea = (Area)oArea.Get(typeof(Area), oRegistro.IdArea); - nombreArea = oArea.Nombre; - } - else nombreArea = "Todas"; - oAuditor.GrabaAuditoria("Modifica Area", oRegistro.IdUsuario, oRegistro.Username, nombreArea, ddlArea.SelectedItem.Text); + //Esta auditoria se guarda con la vinculacion del efector ya que van todos juntos + //if (oRegistro.IdArea.ToString() != ddlArea.SelectedValue) + //{ + // string nombreArea = ""; + // if (oRegistro.IdArea != 0) + // { + // Area oArea = new Area(); + // oArea = (Area)oArea.Get(typeof(Area), oRegistro.IdArea); + // nombreArea = oArea.Nombre; + // } + // else nombreArea = "Todas"; + + // oAuditor.GrabaAuditoria("Modifica Area", oRegistro.IdUsuario, oRegistro.Username, nombreArea, ddlArea.SelectedItem.Text); - } + //} - if (oRegistro.IdPerfil.IdPerfil.ToString() != ddlPerfil.SelectedValue) - { oAuditor.GrabaAuditoria("Modifica Perfil", oRegistro.IdUsuario, oRegistro.Username, oRegistro.IdPerfil.Nombre, ddlPerfil.SelectedItem.Text); } + //if (oRegistro.IdPerfil.IdPerfil.ToString() != ddlPerfil.SelectedValue) + //{ oAuditor.GrabaAuditoria("Modifica Perfil", oRegistro.IdUsuario, oRegistro.Username, oRegistro.IdPerfil.Nombre, ddlPerfil.SelectedItem.Text); } - if (ddlEfectorDestino.SelectedValue != "" && oRegistro.IdEfectorDestino.IdEfector.ToString() != ddlEfectorDestino.SelectedValue) - { oAuditor.GrabaAuditoria("Modifica Laboratorio Destino", oRegistro.IdUsuario, oRegistro.Username, oRegistro.IdEfectorDestino.Nombre, ddlEfectorDestino.SelectedItem.Text); } + //if (ddlEfectorDestino.SelectedValue != "" && oRegistro.IdEfectorDestino.IdEfector.ToString() != ddlEfectorDestino.SelectedValue) + //{ oAuditor.GrabaAuditoria("Modifica Laboratorio Destino", oRegistro.IdUsuario, oRegistro.Username, oRegistro.IdEfectorDestino.Nombre, ddlEfectorDestino.SelectedItem.Text); } if (oRegistro.Activo != chkActivo.Checked) { oAuditor.GrabaAuditoria("Modifica Activo", oRegistro.IdUsuario, oRegistro.Username, oRegistro.Activo ? "Si" : "No", chkActivo.Checked ? "Si" : "No"); } @@ -648,7 +654,7 @@ protected void gvListaEfector_RowDataBound(object sender, GridViewRowEventArgs e { if (e.Row.RowType == DataControlRowType.DataRow) { - ImageButton CmdEliminar = (ImageButton)e.Row.Cells[1].Controls[1]; + ImageButton CmdEliminar = (ImageButton)e.Row.Cells[4].Controls[1]; CmdEliminar.CommandArgument = this.gvListaEfector.DataKeys[e.Row.RowIndex].Value.ToString(); CmdEliminar.CommandName = "Eliminar"; CmdEliminar.ToolTip = "Eliminar"; @@ -699,29 +705,36 @@ private bool puedeAgregarEfector(DataTable dt) private void AgregarEfector() { lblMensajeEfector.Visible = false; - if (ddlEfector3.SelectedValue != "0") + + DataTable dt = ViewState["efectores"] as DataTable; + + if (puedeAgregarEfector(dt)) { - DataTable dt = ViewState["efectores"] as DataTable; + string efectorDestino = ""; + if (ddlEfectorDestino.SelectedItem != null && ddlEfectorDestino.SelectedValue != "0") + efectorDestino=ddlEfectorDestino.SelectedItem.Text; + else + efectorDestino= ddlEfector3.SelectedItem.Text ; - if (puedeAgregarEfector(dt)) + int efDestino = (ddlEfectorDestino.SelectedItem != null ) ? int.Parse( ddlEfectorDestino.SelectedValue.ToString()) : int.Parse( ddlEfector3.SelectedValue); + + dt.Rows.Add(0, ddlEfector3.SelectedItem.Text, ddlEfector3.SelectedValue, ddlArea.SelectedItem.Text, ddlArea.SelectedValue, ddlPerfil.SelectedItem.Text, ddlPerfil.SelectedValue, efectorDestino, efDestino); + ViewState["efectores"] = dt; + //Si el usuario existe lo guarda en la base, sino lo deja en el viewstate para guardarlo cuando se guarde el usuario + if (Request["id"] != null) { - dt.Rows.Add(0, ddlEfector3.SelectedItem.Text, ddlEfector3.SelectedValue); - ViewState["efectores"] = dt; - //Si el usuario existe lo guarda en la base, sino lo deja en el viewstate para guardarlo cuando se guarde el usuario - if (Request["id"] != null) - { - Usuario oUsuario = new Usuario(); - oUsuario = (Usuario)oUsuario.Get(typeof(Usuario), int.Parse(Request["id"])); - GuardarEfectores(oUsuario); - } + Usuario oUsuario = new Usuario(); + oUsuario = (Usuario)oUsuario.Get(typeof(Usuario), int.Parse(Request["id"])); + GuardarEfectores(oUsuario); } - else - { - lblMensajeEfector.Visible = true; - lblMensajeEfector.Text = "Alerta: Efector ya ingresado para el usuario."; + } + else + { + lblMensajeEfector.Visible = true; + lblMensajeEfector.Text = "Alerta: Efector ya ingresado para el usuario."; - } } + lblMensajeEfector.UpdateAfterCallBack = true; } @@ -759,11 +772,16 @@ private void GuardarEfectores(Business.Data.Usuario oUsuario) oRegistro.IdUsuario = oUsuario; oRegistro.IdEfector = oEfector; oRegistro.Activo = true; + oRegistro.IdPerfil = int.Parse(row["idPerfil"].ToString()); + oRegistro.IdArea = int.Parse(row["idArea"].ToString()); + oRegistro.IdEfectorDestino = int.Parse(row["idEfectorDestino"].ToString()); + oRegistro.IdUsuarioRegistro = int.Parse(Session["idUsuario"].ToString()); + oRegistro.FechaRegistro = DateTime.Now; oRegistro.Save(); //solo genero auditoria la primera vez que vincula el efector if (!yaTieneAuditoriaVincula.Contains(idEfector)) - oAuditor.GrabaAuditoria("Vincula " + oEfector.Nombre, oRegistro.IdUsuario.IdUsuario, oRegistro.IdUsuario.Username); + oAuditor.GrabaAuditoria("Vincula " + oEfector.Nombre, oRegistro.IdUsuario.IdUsuario, oRegistro.IdUsuario.Username, "", "Perfil:" + row["Perfil"].ToString() + " Area:" + row["Area"].ToString()); //actualizo el viewstate con los nuevos ID row[0] = oRegistro.IdUsuarioEfector; @@ -786,6 +804,12 @@ private void MostrarEfectores() dt.Columns.Add("idUsuarioEfector", typeof(int)); dt.Columns.Add("nombre", typeof(string)); dt.Columns.Add("idEfector", typeof(int)); + dt.Columns.Add("Area", typeof(string)); + dt.Columns.Add("idArea", typeof(string)); + dt.Columns.Add("Perfil", typeof(string)); + dt.Columns.Add("idPerfil", typeof(string)); + dt.Columns.Add("EfectorDestino", typeof(string)); + dt.Columns.Add("idEfectorDestino", typeof(string)); } //le asigno clave primaria para despues poder buscar por este valor @@ -821,11 +845,28 @@ private void EliminarEfector(object idEfector) { string s_efector = oRegistro.IdEfector.Nombre; string s_username = oRegistro.IdUsuario.Username; + int perfil = oRegistro.IdPerfil; + int area = oRegistro.IdArea; oRegistro.Delete(); - /////Auditoria + + //Auditoria + ////Area + + string nombreArea = ""; + if (area != 0) + { + Area oArea = new Area(); + oArea = (Area)oArea.Get(typeof(Area), area); + nombreArea = oArea.Nombre; + } + else nombreArea = "Todas"; + //Perfil + Perfil oPerfil = new Perfil(); + oPerfil = (Perfil)oPerfil.Get(typeof(Perfil), perfil); + Usuario oAuditor = new Usuario(); oAuditor = (Usuario)oAuditor.Get(typeof(Usuario), int.Parse(Session["idUsuario"].ToString())); - oAuditor.GrabaAuditoria("DesVincula " + s_efector.TrimStart().TrimEnd(), int.Parse(Request["id"].ToString()), s_username); + oAuditor.GrabaAuditoria("DesVincula " + s_efector.TrimStart().TrimEnd(), int.Parse(Request["id"].ToString()), s_username, "Perfil:" + oPerfil.Nombre + " Area:" + nombreArea, ""); } } //else: esta solo en la visualizacion pero no en la base de datos @@ -835,7 +876,7 @@ private void EliminarEfector(object idEfector) else { lblMensajeEfector.Visible = true; - lblMensajeEfector.Text = "Alerta: Debe tener al menos 1 efector asociado"; + lblMensajeEfector.Text = "Alerta: Debe tener al menos un perfil, con area y efector asociado"; lblMensajeEfector.UpdateAfterCallBack = true; puedeEliminar = false; } diff --git a/WebLab/Usuarios/UsuarioEdit.aspx.designer.cs b/WebLab/Usuarios/UsuarioEdit.aspx.designer.cs index fcde6f9..2e89f1f 100644 --- a/WebLab/Usuarios/UsuarioEdit.aspx.designer.cs +++ b/WebLab/Usuarios/UsuarioEdit.aspx.designer.cs @@ -177,148 +177,166 @@ public partial class UsuarioEdit protected global::Anthem.CheckBox chkAdministrador; /// - /// Control ddlArea. + /// Control chkActivo. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::Anthem.DropDownList ddlArea; + protected global::System.Web.UI.WebControls.CheckBox chkActivo; /// - /// Control ddlPerfil. + /// Control chkExterno. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::Anthem.DropDownList ddlPerfil; + protected global::System.Web.UI.WebControls.CheckBox chkExterno; /// - /// Control rvPerfil. + /// Control chkRequiereContrasenia. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::Anthem.RangeValidator rvPerfil; + protected global::System.Web.UI.WebControls.CheckBox chkRequiereContrasenia; /// - /// Control ddlEfectorDestino. + /// Control customValidatorExterno. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::Anthem.DropDownList ddlEfectorDestino; + protected global::System.Web.UI.WebControls.CustomValidator customValidatorExterno; /// - /// Control rvEfectorDestino. + /// Control customValidatorEfector. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::Anthem.RangeValidator rvEfectorDestino; + protected global::System.Web.UI.WebControls.CustomValidator customValidatorEfector; /// - /// Control chkActivo. + /// Control lnkRegresar. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.CheckBox chkActivo; + protected global::System.Web.UI.WebControls.LinkButton lnkRegresar; /// - /// Control chkExterno. + /// Control btnGuardar. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.CheckBox chkExterno; + protected global::System.Web.UI.WebControls.Button btnGuardar; /// - /// Control chkRequiereContrasenia. + /// Control ValidationSummary1. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.CheckBox chkRequiereContrasenia; + protected global::System.Web.UI.WebControls.ValidationSummary ValidationSummary1; /// - /// Control customValidatorExterno. + /// Control btnAuditoria. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.CustomValidator customValidatorExterno; + protected global::System.Web.UI.WebControls.Button btnAuditoria; /// - /// Control customValidatorEfector. + /// Control btnBlanquear. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.CustomValidator customValidatorEfector; + protected global::System.Web.UI.WebControls.Button btnBlanquear; /// - /// Control lnkRegresar. + /// Control ddlEfector3. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.LinkButton lnkRegresar; + protected global::System.Web.UI.WebControls.DropDownList ddlEfector3; /// - /// Control btnGuardar. + /// Control rfvEfector3. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.Button btnGuardar; + protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvEfector3; /// - /// Control ValidationSummary1. + /// Control ddlArea. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.ValidationSummary ValidationSummary1; + protected global::Anthem.DropDownList ddlArea; /// - /// Control btnAuditoria. + /// Control ddlPerfil. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.Button btnAuditoria; + protected global::Anthem.DropDownList ddlPerfil; /// - /// Control btnBlanquear. + /// Control rvPerfil. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.Button btnBlanquear; + protected global::Anthem.RangeValidator rvPerfil; /// - /// Control ddlEfector3. + /// Control lblEfectorDestino. /// /// /// Campo generado automáticamente. /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. /// - protected global::System.Web.UI.WebControls.DropDownList ddlEfector3; + protected global::Anthem.Label lblEfectorDestino; + + /// + /// Control ddlEfectorDestino. + /// + /// + /// Campo generado automáticamente. + /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// + protected global::Anthem.DropDownList ddlEfectorDestino; + + /// + /// Control rvEfectorDestino. + /// + /// + /// Campo generado automáticamente. + /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// + protected global::Anthem.RangeValidator rvEfectorDestino; /// /// Control btnAgregarEfector. diff --git a/WebLab/Usuarios/UsuarioList.aspx b/WebLab/Usuarios/UsuarioList.aspx index 7ebec2e..b35ce2b 100644 --- a/WebLab/Usuarios/UsuarioList.aspx +++ b/WebLab/Usuarios/UsuarioList.aspx @@ -1,10 +1,15 @@ <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UsuarioList.aspx.cs" Inherits="WebLab.Usuarios.UsuarioList" MasterPageFile="~/Site1.Master" %> + + + + + + + + - - - diff --git a/WebLab/Usuarios/UsuarioList.aspx.cs b/WebLab/Usuarios/UsuarioList.aspx.cs index 2a796ad..4c6b4b6 100644 --- a/WebLab/Usuarios/UsuarioList.aspx.cs +++ b/WebLab/Usuarios/UsuarioList.aspx.cs @@ -171,8 +171,8 @@ private DataTable LeerDatos(string tipo="") firmaValidacion, email, U.telefono, CASE WHEN externo = 1 THEN 'Si' ELSE 'No' END AS externo, P.nombre AS Perfil, E.nombre AS Efector,tipoAutenticacion as [Tipo Autenticacion] FROM Sys_Usuario U WITH (NOLOCK) - INNER JOIN sys_perfil P WITH (NOLOCK) ON U.idPerfil = P.idPerfil INNER JOIN Sys_UsuarioEfector AS UE WITH (NOLOCK) ON UE.idUsuario = U.idUsuario + INNER JOIN sys_perfil P WITH (NOLOCK) ON UE.idPerfil = P.idPerfil INNER JOIN Sys_Efector AS E WITH (NOLOCK) ON E.idEfector = UE.idEfector "; } else @@ -180,8 +180,8 @@ INNER JOIN Sys_UsuarioEfector AS UE WITH (NOLOCK) ON UE.idUsuario = U.idUsuario m_strSQL = @"SELECT U.idUsuario, U.apellido, U.nombre, U.username, P.nombre AS perfil, E.nombre as efector , case when U.activo=1 then 'Si' else 'No' end as habilitado, U.activo as activo , tipoAutenticacion FROM Sys_Usuario U WITH(NOLOCK) - INNER JOIN sys_perfil P WITH (NOLOCK) ON U.idPerfil = P.idPerfil INNER JOIN Sys_UsuarioEfector AS UE WITH (NOLOCK) ON UE.idUsuario = U.idUsuario + INNER JOIN sys_perfil P WITH (NOLOCK) ON UE.idPerfil = P.idPerfil INNER JOIN Sys_Efector AS E WITH (NOLOCK) ON E.idEfector = UE.idEfector "; } diff --git a/WebLab/Usuarios/UsuarioList.aspx.designer.cs b/WebLab/Usuarios/UsuarioList.aspx.designer.cs index 730a6fd..cbc6252 100644 --- a/WebLab/Usuarios/UsuarioList.aspx.designer.cs +++ b/WebLab/Usuarios/UsuarioList.aspx.designer.cs @@ -1,10 +1,10 @@ //------------------------------------------------------------------------------ -// -// Este código fue generado por una herramienta. +// +// This code was generated by a tool. // -// Los cambios en este archivo podrían causar un comportamiento incorrecto y se perderán si -// se vuelve a generar el código. -// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// //------------------------------------------------------------------------------ namespace WebLab.Usuarios @@ -15,146 +15,146 @@ public partial class UsuarioList { /// - /// Control pnlTitulo. + /// pnlTitulo control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.HtmlControls.HtmlGenericControl pnlTitulo; /// - /// Control ddlEfector. + /// ddlEfector control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.DropDownList ddlEfector; /// - /// Control ddlPerfil. + /// ddlPerfil control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.DropDownList ddlPerfil; /// - /// Control txtUsername. + /// txtUsername control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.TextBox txtUsername; /// - /// Control ddlTipoAutenticacion. + /// ddlTipoAutenticacion control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.DropDownList ddlTipoAutenticacion; /// - /// Control txtNombre. + /// txtNombre control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.TextBox txtNombre; /// - /// Control txtApellido. + /// txtApellido control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.TextBox txtApellido; /// - /// Control ddlHabilitados. + /// ddlHabilitados control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.DropDownList ddlHabilitados; /// - /// Control chbAdministrador. + /// chbAdministrador control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.CheckBox chbAdministrador; /// - /// Control lnkExcel. + /// lnkExcel control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.LinkButton lnkExcel; /// - /// Control btnBuscar. + /// btnBuscar control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.Button btnBuscar; /// - /// Control btnAgregar. + /// btnAgregar control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.Button btnAgregar; /// - /// Control pnlLista. + /// pnlLista control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.Panel pnlLista; /// - /// Control CantidadRegistros. + /// CantidadRegistros control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.Label CantidadRegistros; /// - /// Control CurrentPageLabel. + /// CurrentPageLabel control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.Label CurrentPageLabel; /// - /// Control gvLista. + /// gvLista control. /// /// - /// Campo generado automáticamente. - /// Para modificarlo, mueva la declaración del campo del archivo del diseñador al archivo de código subyacente. + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. /// protected global::System.Web.UI.WebControls.GridView gvLista; }