示例#1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="oUsuario"></param>
 public void insertarUsuario(SIS.ENTIDAD.Usuario oUsuario)
 {
     /*
      * string passHasheada;
      * string digiVerificador;
      * string IdHASH = "HASH";
      * // passHasheada = interfazHash.obtenerHash(oUsuario.password)
      * // oUsuario.password = passHasheada
      *
      * // digiVerificador = interfazHash.obtenerHashUsuario(oUsuario)
      * // oUsuario.digitoVerificador = digiVerificador
      * // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      * try
      * {
      *  passHasheada = interfazHash.obtenerHash(oUsuario.password);
      *  oUsuario.password = passHasheada;
      *
      *  digiVerificador = interfazHash.obtenerHashUsuario(oUsuario);
      *  oUsuario.digitoVerificador = digiVerificador;
      * }
      * catch (Exception ex)
      * {
      *  interfazNegocioBitacora.registrarEnBitacora_BLL(IdHASH, ex);
      * }
      * // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      * List<BE.SIS.ENTIDAD.Usuario> listaUsuarios = new List<BE.SIS.ENTIDAD.Usuario>();
      * DAL.SIS.DATOS.DALUsuario oDalUsuaio = new DAL.SIS.DATOS.DALUsuario();
      * listaUsuarios = oDalUsuaio.obtenerTablaUsuario();
      * if (listaUsuarios.Count == 0)
      * {
      *  BE.SIS.ENTIDAD.Usuario oUsuarioColumnHash = new BE.SIS.ENTIDAD.Usuario();
      *  oUsuarioColumnHash.idUsuario = 1;
      *  oUsuarioColumnHash.usuario = "a";
      *  oUsuarioColumnHash.password = "******";
      *  oUsuarioColumnHash.legajo = "a";
      *  oUsuarioColumnHash.idioma = true;
      *  listaUsuarios.Add(oUsuarioColumnHash);
      * }
      *
      * listaUsuarios.Add(oUsuario);
      *
      * List<BE.SIS.ENTIDAD.Usuario> listaUsuariosConDigitosVerif = new List<BE.SIS.ENTIDAD.Usuario>();
      * listaUsuariosConDigitosVerif = interfazHash.calcularHashTablaUsuario(listaUsuarios);
      *
      * oDalUsuaio.insertarUsuario(listaUsuariosConDigitosVerif);
      *
      * DAL.SIS.DATOS.DALUsuarioGrupo oDalUsuarioGrupo = new DAL.SIS.DATOS.DALUsuarioGrupo();
      * List<BE.SIS.ENTIDAD.Grupo> listadoGruposAUsuario = oUsuario.listadoGrupos;
      * IEnumerator<BE.SIS.ENTIDAD.Grupo> enu = listadoGruposAUsuario.GetEnumerator();
      * while (enu.MoveNext())
      * {
      *  BE.SIS.ENTIDAD.UsuarioGrupo oUsuarioGrupo = new BE.SIS.ENTIDAD.UsuarioGrupo();
      *  oUsuarioGrupo.idUsuario = oUsuario.idUsuario;
      *  oUsuarioGrupo.idGrupo = enu.Current.idGrupo;
      *  oDalUsuarioGrupo.insertarUsuarioGrupo(oUsuarioGrupo);
      * }
      */
 }
示例#2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="oUsuario"></param>
        /// <returns></returns>
        public string obtenerHashUsuario(SIS.ENTIDAD.Usuario oUsuario)
        {
            string digiVerif = "ERROR";

            string cadena;

            cadena = oUsuario.IdUsuario.ToString() + oUsuario.usuario + oUsuario.Password + oUsuario.Legajo.ToString() + oUsuario.Idioma.ToString();

            digiVerif = this.obtenerHash(cadena);

            return(digiVerif);
        }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idUsuario"></param>
        /// <returns></returns>
        public SIS.ENTIDAD.Usuario obtenerUsuario(int idUsuario)
        {
            // Instancio el usuario que voy a pasar por parametro
            SIS.ENTIDAD.Usuario oUsuario = new SIS.ENTIDAD.Usuario();

            /*
             *
             * // Instancio DAL Usuario para obtener el usuario
             * DAL.SIS.DATOS.DALUsuario oDalUsuario = new DAL.SIS.DATOS.DALUsuario();
             * oUsuario = oDalUsuario.obtenerUsuarioPorId(idUsuario);
             *
             * // Instancio el objeto UsuarioGrupo para buscar los grupos de ese usuario
             * DAL.SIS.DATOS.DALUsuarioGrupo oDalUsuarioGrupo = new DAL.SIS.DATOS.DALUsuarioGrupo();
             * List<BE.SIS.ENTIDAD.UsuarioGrupo> listaUsuarioGrupo;
             * listaUsuarioGrupo = oDalUsuarioGrupo.obtenerGrupoPorIdUsuario(idUsuario);
             *
             * // Instancio una lista de grupos para el usuario
             * List<BE.SIS.ENTIDAD.Grupo> listaGrupo = new List<BE.SIS.ENTIDAD.Grupo>();
             * List<BE.SIS.ENTIDAD.Permiso> listaPermisos = new List<BE.SIS.ENTIDAD.Permiso>();
             *
             * // Recorro la lista y obtengo los objetos Grupo
             * IEnumerator<BE.SIS.ENTIDAD.UsuarioGrupo> enu = listaUsuarioGrupo.GetEnumerator();
             * while (enu.MoveNext())
             * {
             *  BE.SIS.ENTIDAD.Grupo oGrupo = new BE.SIS.ENTIDAD.Grupo();
             *  DAL.SIS.DATOS.DALGrupo oDalGrupo = new DAL.SIS.DATOS.DALGrupo();
             *  oGrupo = oDalGrupo.obtenerGrupoPorId(enu.Current.idGrupo);
             *
             *  DAL.SIS.DATOS.DALGrupoPermiso oDalGrupoPermiso = new DAL.SIS.DATOS.DALGrupoPermiso();
             *  List<BE.SIS.ENTIDAD.GrupoPermiso> listadoGrupoPermisos = new List<BE.SIS.ENTIDAD.GrupoPermiso>();
             *  listadoGrupoPermisos = oDalGrupoPermiso.obtenerPermisosPorIdGrupo(oGrupo.idGrupo);
             *
             *  IEnumerator<BE.SIS.ENTIDAD.GrupoPermiso> enu2 = listadoGrupoPermisos.GetEnumerator();
             *  while (enu2.MoveNext())
             *  {
             *      DAL.SIS.DATOS.DALPermiso oDalPermiso = new DAL.SIS.DATOS.DALPermiso();
             *      BE.SIS.ENTIDAD.Permiso oPermiso;
             *      oPermiso = oDalPermiso.obtenerPermisoPorId(enu2.Current.idPermiso);
             *      listaPermisos.Add(oPermiso);
             *      oGrupo.listadoPermisos = listaPermisos;
             *  }
             *  listaGrupo.Add(oGrupo);
             * }
             * oUsuario.listadoGrupos = listaGrupo;
             */
            return(oUsuario);
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnEnviar_Click(object sender, EventArgs e)
        {
            string nombre       = txtNombre.Text;
            string descripcion  = txtDescripcion.Text;
            bool   estado       = false;
            string tipoConsulta = "";

            //ARQ.BASE - ACA YA TENEMOS EL USUARIO CON TODOS SUS DATOS
            SIS.ENTIDAD.Usuario oUsuario = new SIS.ENTIDAD.Usuario();
            oUsuario = interfazNegocioUsuario.ObtenerUsuario(System.Convert.ToInt16(idUsuario));
            if (oUsuario.IdUsuario != null)
            {
                if (rdaTecnica.Checked == true)
                {
                    tipoConsulta = "CONSULTA TECNICA";
                }
                else if (rdaAdministrativa.Checked == true)
                {
                    tipoConsulta = "CONSULTA ADMINISTRATIVA";
                }
                else if (rdaSugerencia.Checked == true)
                {
                    tipoConsulta = "CONSULTA SUGERENCIA";
                }
                //ARQ.BASE - SETEO ESTADOS PARA USUARIO
                Session["loginEstado"] = 0;
                Session["usuarioOk"]   = 0;
                //ARQ.BASE - ENVIAR POR EMAIL LA CONSULTA DEL USUARIO
                estado = interfazNegocio.EnviarConsulta(nombre, oUsuario.Email, tipoConsulta, descripcion);
                //ARQ.BASE - FEEDBACK POSITIVO
                Response.Redirect("isOk.aspx");
            }
            else
            {
                //ARQ.BASE - FEEDBACK NEGATIVO
                Session["usuarioOk"] = 1;
                Response.Redirect("isError.aspx");
            }
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnLogin_Click(object sender, EventArgs e)
        {
            var resultadoLogin = 0;

            SIS.ENTIDAD.Usuario user = new SIS.ENTIDAD.Usuario();

            user.usuario  = txtUsuario.Text;
            user.Password = txtContrasenia.Text;

            if (txtUsuario.Text != null && txtContrasenia.Text != null)
            {
                //OBTENGO ID DEL USER SI EXISTE
                resultadoLogin = interfazNegocioUsuario.login(user.usuario, user.Password);
            }

            //EVALUO EL RESULTDO DEL LOGIN | SI ES 0 NO EXISTE -> CREAR USUARIO
            if (resultadoLogin != 0)
            {
                //BUSCO EL USUARIO POR SU ID
                var usuario = interfazNegocioUsuario.obtenerUsuario(resultadoLogin);
                //GUARDO EL USUARIO CONECTADO EN SESSION
                Session["Usuario"]           = usuario.usuario;
                Session["UsuarioId"]         = usuario.IdUsuario;
                Session["UsuarioLoginFecha"] = DateTime.Now;
                Session["UsuarioHost"]       = Request.UserHostAddress;
                Session["UsuarioAgent"]      = Request.Browser.Browser + "-" + Request.Browser.Version;
                //ME GUARDO LOS GRUPOS PARA EL USUARIO LOGEADO
                List <SIS.ENTIDAD.Grupo> lstGrupos = usuario.ListadoGrupos;
                //NIVEL DE ACCESO DEL USUARIO LOGEADO
                var nVisibilidad = "";

                foreach (SIS.ENTIDAD.Grupo g in lstGrupos)
                {
                    //TOMO LA VISIBILIDAD ASIGNADA A DICHO USUARIO
                    nVisibilidad = g.grupo;
                }

                // CREO UN TICKET DE AUTENTIFICACION Y LO ENCRYPTO: ARQ.BASE.WEBSEGURITY
                FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
                    1,                                    // Ticket version
                    user.usuario,                         // Username associated with ticket
                    DateTime.Now,                         // Date/time issued
                    DateTime.Now.AddMinutes(30),          // Date/time to expire
                    true,                                 // "true" for a persistent user cookie
                    nVisibilidad,                         // User-data, in this case the roles
                    FormsAuthentication.FormsCookiePath); // Path cookie valid for

                // Encrypt the cookie using the machine key for secure transport
                string     hash        = FormsAuthentication.Encrypt(ticket);
                HttpCookie loginCookie = new HttpCookie(
                    FormsAuthentication.FormsCookieName, // Name of auth cookie
                    hash);                               // Hashed ticket

                // Set the cookie's expiration time to the tickets expiration time
                if (ticket.IsPersistent)
                {
                    loginCookie.Expires = ticket.Expiration;
                }

                // Add the cookie to the list for outgoing response
                Response.Cookies.Add(loginCookie);


                if (nVisibilidad == "Admin")
                {
                    //SI USUARIO ADMIN -> PANTALLA ADMIN
                    Session["loginEstado"] = 0;
                    Response.Redirect("webmaster.aspx");
                }
                else
                {
                    //SI USUARIO ES JERARQUICO O USUARIO -> PANTALLA HOME
                    Session["loginEstado"] = 0;
                    Response.Redirect("home.aspx");
                }
            }
            else
            {
                //MOSTRAR PANTALLA LOGIN | AVISAR USER INVALIDO
                Session["loginEstado"] = 1;
                FormsAuthentication.SignOut();
                Response.Redirect("login.aspx");
            }
        }
示例#6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            SIS.ENTIDAD.Usuario oUsuario = new SIS.ENTIDAD.Usuario();
            oUsuario.IdUsuario = txtIdUsuario.Text;
            string passwordDefualt = "4gY7-k";

            if (oUsuario.IdUsuario != "")
            {
                oUsuario.NombreApellido = txtNombreApellido.Text;
                //SETEAMOS LA FECHA
                string fechaNacimiento = txtFecNac.Text;
                string dia             = fechaNacimiento.Substring(0, 2);
                string mes             = fechaNacimiento.Substring(3, 2);
                string año             = fechaNacimiento.Substring(6, 4);
                oUsuario.FechaNacimiento = dia + mes + año;
                //SETEAMOS LA CATEGORIA
                string catMoto = txtCatMoto.Text;
                switch (catMoto)
                {
                case "0cc - 150cc":
                    oUsuario.CategoriaMoto = "1";
                    break;

                case "150cc - 250cc":
                    oUsuario.CategoriaMoto = "2";
                    break;

                case "+300cc":
                    oUsuario.CategoriaMoto = "3";
                    break;

                default:
                    oUsuario.CategoriaMoto = "999";
                    break;
                }

                oUsuario.usuario = txtUsuario.Text;
                string passwordOld = Session["passwowrdOld"].ToString();
                if (passwordOld != txtPassword.Text)
                {
                    oUsuario.Password = txtPassword.Text;
                }
                else
                {
                    oUsuario.Password = passwordDefualt;
                }
                oUsuario.Email = txtEmail.Text;
                //SETEAMOS EL ESTADO
                if (rdaActivo.Checked)
                {
                    oUsuario.Estado = "Activo";
                }
                else
                {
                    oUsuario.Estado = "Inactivo";
                }
                try
                {
                    Session["guardadoEstado"] = 1;
                    //ARQ.BASE MULTIUSUARIO | ACTUALIZAMOS EL USUARIO
                    interfazNegocioUsuario.ActualizarUsuario(oUsuario);
                }
                catch (Exception ex)
                {
                    Session["guardadoEstado"] = 2;
                    SIS.EXCEPCIONES.UIExcepcion oExUI = new SIS.EXCEPCIONES.UIExcepcion(ex.Message);
                    interfazNegocioBitacora.RegistrarEnBitacora_UI(oUsuario.IdUsuario, oExUI);
                }
            }
        }
示例#7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnBusqueda_Click(object sender, EventArgs e)
        {
            SIS.ENTIDAD.Usuario oUsuario = new SIS.ENTIDAD.Usuario();
            string idUsuario             = txtIdUsuario.Text;

            HabilitarEdiciones();
            //ARQ.BASE MULTIUSUARIO | OBTNGO EL USUARIO A PARTIR DE SU ID
            oUsuario = interfazNegocioUsuario.ObtenerUsuario(System.Convert.ToInt16(idUsuario));

            if (oUsuario.IdUsuario != null)
            {
                txtIdUsuario.Text      = oUsuario.IdUsuario;
                txtNombreApellido.Text = oUsuario.NombreApellido;

                //MUESTRO LA FECHA DE NACIMIENTO
                string dia = oUsuario.FechaNacimiento.Substring(0, 2);
                string mes = oUsuario.FechaNacimiento.Substring(2, 2);
                string año = oUsuario.FechaNacimiento.Substring(4, 4);
                txtFecNac.Text = dia + "-" + mes + "-" + año;
                //MUESTO LA CATEGORIA DE MOTO ASOCIADA AL USUARIO
                string catMoto = oUsuario.CategoriaMoto;
                switch (catMoto)
                {
                case "1":
                    txtCatMoto.Text = "0cc - 150cc";
                    break;

                case "2":
                    txtCatMoto.Text = "150cc - 250cc";
                    break;

                case "3":
                    txtCatMoto.Text = "+300cc";
                    break;

                default:
                    txtCatMoto.Text = "NO TIENE MOTO ASOCIADA";
                    break;
                }
                txtUsuario.Text         = oUsuario.usuario;
                Session["passwowrdOld"] = oUsuario.Password;
                txtPassword.Text        = oUsuario.Password;
                txtEmail.Text           = oUsuario.Email;
                //SELECCIONO EL ESTADO DEL USUARIO SI ES ACTIVO O INACTIVO
                string estado = oUsuario.Estado;
                if (estado == "Activo")
                {
                    rdaActivo.Checked   = true;
                    rdaInactivo.Checked = false;
                }
                else
                {
                    rdaActivo.Checked   = false;
                    rdaInactivo.Checked = true;
                }
                //BUSQUEDA EXITOSA | EXISTE USUARIO
                Session["busquedaEstado"] = 0;
            }
            else
            {
                //BUSQUEDA FALLIDA | NO EXISTE USUARIO
                Session["busquedaEstado"] = 1;
            }
        }
示例#8
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["loginUsuario"] != null)
            {
                if (txtNombreApellido.Text == "")
                {
                    Session["guardadoEstado"] = 0;
                    string idUsuario = Session["UsuarioId"].ToString();
                    Session["guardadoPerfil"] = interfazNegocio.ObtenerCodigoMembresiaUsuario(idUsuario);
                    SIS.ENTIDAD.Usuario oUsuario = new SIS.ENTIDAD.Usuario();
                    oUsuario = interfazNegocioUsuario.ObtenerUsuario(System.Convert.ToInt16(idUsuario));
                    //GUARDO EL ESTADO DEL USUARIO
                    if (oUsuario.Estado == "Activo")
                    {
                        Session["estadoUsuario"]       = 1;
                        Session["estadoUsuarioActual"] = oUsuario.Estado;
                    }
                    else
                    {
                        Session["estadoUsuario"]       = 0;
                        Session["estadoUsuarioActual"] = oUsuario.Estado;
                    }
                    txtNombreApellido.Text = oUsuario.NombreApellido;
                    //MUESTRO LA FECHA DE NACIMIENTO
                    string dia = oUsuario.FechaNacimiento.Substring(0, 2);
                    string mes = oUsuario.FechaNacimiento.Substring(2, 2);
                    string año = oUsuario.FechaNacimiento.Substring(4, 4);
                    txtFecNac.Text = dia + "-" + mes + "-" + año;
                    //MUESTO LA CATEGORIA DE MOTO ASOCIADA AL USUARIO
                    string catMoto = oUsuario.CategoriaMoto;
                    switch (catMoto)
                    {
                    case "1":
                        txtCatMoto.Text = "0cc - 150cc";
                        break;

                    case "2":
                        txtCatMoto.Text = "150cc - 250cc";
                        break;

                    case "3":
                        txtCatMoto.Text = "+300cc";
                        break;

                    default:
                        txtCatMoto.Text = "NO TIENE MOTO ASOCIADA";
                        break;
                    }
                    txtUsuario.Text         = oUsuario.usuario;
                    Session["passwowrdOld"] = oUsuario.Password;
                    txtPassword.Text        = oUsuario.Password;
                    txtEmail.Text           = oUsuario.Email;
                }
            }
            else
            {
                Session.Clear();
                FormsAuthentication.SignOut();
                Response.Redirect("login.aspx");
            }
        }