示例#1
0
 public RegistroWindow()
 {
     InitializeComponent();
     this.homeRol = new HomeRoles();
     this.homeUsr = new HomeUsuarios();
     this.usuario = new User.User();
     this.usuario.DatosLogin = new Login();
     this.usuario.Rol = new Rol.Rol();
     this.usuario.Direccion = new Direccion();
     this.comboBox2.Enabled = false;
 }
示例#2
0
        private void button1_Click(object sender, EventArgs e)
        {
            String userName = TxtBox_Username.Text;
            DataAdapter.Login log = new GrouponDesktop.DataAdapter.Login();
            HomeUsuarios homeUsrs = new HomeUsuarios();
            if(homeUsrs.usuarioNoExistente(userName))
            {
                MessageBox.Show("No existe el usuario");
                return;
            }
            User.HomeUsuarios homeUsuario = new GrouponDesktop.User.HomeUsuarios();

            User.User user = new GrouponDesktop.User.User(true);
            user.DatosLogin.UserName = userName;
            homeUsuario.setInformacionAlUsuario(user);
            login.UsuarioActivo = user;
            MessageBox.Show("Simulación como usuario \"" + userName + "\" activa.\n" +
                "Para volver al modo administrador haga click en el botón \n\"Volver Modo Admin\".");
        }
        private void button1_Click(object sender, EventArgs e)
        {
            String userName = TxtBox_Username.Text;

            DataAdapter.Login log      = new GrouponDesktop.DataAdapter.Login();
            HomeUsuarios      homeUsrs = new HomeUsuarios();

            if (homeUsrs.usuarioNoExistente(userName))
            {
                MessageBox.Show("No existe el usuario");
                return;
            }
            User.HomeUsuarios homeUsuario = new GrouponDesktop.User.HomeUsuarios();

            User.User user = new GrouponDesktop.User.User(true);
            user.DatosLogin.UserName = userName;
            homeUsuario.setInformacionAlUsuario(user);
            login.UsuarioActivo = user;
            MessageBox.Show("Simulación como usuario \"" + userName + "\" activa.\n" +
                            "Para volver al modo administrador haga click en el botón \n\"Volver Modo Admin\".");
        }
示例#4
0
 private void setSaldoAlUsuario(User usuario)
 {
     usuario.DatosCliente = new DatosCliente();
     usuario.DatosCliente.Saldo = 100;
 }
示例#5
0
 public void volverAdminAModoInicial()
 {
     this.usuarioActivo = this.usuarioLogeado.clonarUsuario();
 }
示例#6
0
        public void modificarCliente(User clienteViejo, User clienteNuevo,
            List<String> ciudadesOriginales, List<String> ciudadesSeleccionadas, Boolean modificarCiudades, Boolean habilitado,
            String nombreRolNuevo)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();
            SqlTransaction tran = spManager.DbManager.Connection.BeginTransaction();
            try
            {
                if (modificarCiudades)
                {
                    this.eliminarCiudadesDeCliente(clienteViejo.DatosCliente.Dni, ciudadesOriginales);
                    this.agregarCiudadesACliente(clienteViejo.DatosCliente.Dni, ciudadesSeleccionadas);
                }

                this.modificarDireccion(clienteViejo.DatosLogin.UserName, clienteNuevo.Direccion);
                this.changeStatus(clienteViejo.DatosLogin.UserName, habilitado);
                this.modificarDatosCliente(clienteViejo, clienteNuevo);
                this.modificarRolAUsuario(clienteNuevo.DatosLogin.UserName,nombreRolNuevo);
            }
            catch (Exception e)
            {
                tran.Rollback();
                spManager.Close();
                throw new Exception("No se pudo modificar al cliente por : " + e.ToString());

            }
            tran.Commit();
            spManager.Close();
        }
示例#7
0
        private void setCiudadesAlUsuario(User usuario)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();

            Dictionary<String, Object> param = new Dictionary<String, Object>();
            param.Add("nombre_usuario", usuario.DatosLogin.UserName);
            using (SqlDataReader reader = spManager.executeSPWithParameters("MR_ANDERSON.sp_get_ciudades", param))
            {
                reader.Read();
                HomeRoles home = new HomeRoles();
                usuario.Rol = home.getRol((String)reader["rol"]);
            }

            spManager.Close();
        }
示例#8
0
 /// <summary>
 /// A este método le pasaremos un usuario, y se encargará de agregarle la información o en su debido caso, actualizarla.
 /// Se puede usar después de Cargar crédito, o hacer alguna modificación en la Configuración del usuario.
 /// </summary>
 /// <param name="usuario"></param>
 public void setInformacionAlUsuario(User usuario)
 {
     setUsuarioRol(usuario);
     setUsuarioDirecciones(usuario);
     setDatosUsuarioAlUsuario(usuario);
 }
示例#9
0
        public void setRolesAlUsuario(User usuario)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();

            Dictionary<String, Object> param = new Dictionary<String, Object>();
            param.Add("nombre_usuario", usuario.DatosLogin.UserName);
            try
            {
                SqlDataReader reader = spManager.executeSPWithParameters("MR_ANDERSON.get_nombre_rol_de_usuario", param);
                reader.Read();
                HomeRoles home = new HomeRoles();
                usuario.Rol = home.getRol((String)reader["rol"]);
            }
            catch
            {
            }

            spManager.Close();
        }
示例#10
0
        ////PERSISTENCIA////
        public void persistir(User usuario)
        {
            List<String> funcs = new List<String>();

            DataAccess.SPManager spManager2 = new DataAccess.SPManager();

            Dictionary<String, Object> param_login = new Dictionary<String, Object>();
            param_login.Add("username_sended", usuario.DatosLogin.UserName);
            param_login.Add("user_password_sended", usuario.DatosLogin.Password);
            param_login.Add("rol_sended", usuario.Rol.getNombreRol());
            param_login.Add("tipo", usuario.TipoUsuario);
            param_login.Add("result output", "");

            spManager2.executeSPWithParameters("MR_ANDERSON.sp_insert_login", param_login);
            spManager2.Close();

            DataAccess.SPManager spManager = new DataAccess.SPManager();

            if (usuario.DatosCliente != null)
            {
                Dictionary<String, Object> param_user = new Dictionary<String, Object>();

                param_user.Add("dni_sended", usuario.DatosCliente.Dni);
                param_user.Add("apellido_sended", usuario.DatosCliente.Apellido);
                param_user.Add("telefono_sended", usuario.DatosCliente.Telefono);
                param_user.Add("mail_sended", usuario.DatosCliente.Mail);
                param_user.Add("fecha_nac_sended", usuario.DatosCliente.FechaNac);
                param_user.Add("username_sended", usuario.DatosLogin.UserName);
                param_user.Add("nombre_sended", usuario.DatosCliente.Nombre);
                param_user.Add("result output", "");
                SqlCommand command;
                try
                {
                    spManager.executeSPWithParameters("MR_ANDERSON.sp_insert_cliente", param_user, out command);
                    string resultado = (string)command.Parameters["@result"].Value;
                    if (!resultado.Equals("CLIENT_REG_OK"))
                    {
                        throw new Exception(resultado);
                    }
                }
                catch(Exception e)
                {
                    throw new Exception("Error en Sistema: " + e.Message);
                }

                DataAccess.SPManager spManager3 = new DataAccess.SPManager();

                foreach (String c in usuario.CuidadesPreferencia)
                {
                    Dictionary<String, Object> param_ciudades = new Dictionary<string, object>();
                    param_ciudades.Add("ciudad", c);
                    param_ciudades.Add("dni", usuario.DatosCliente.Dni);
                    spManager3.executeSPWithParametersWithOutReturn("MR_ANDERSON.sp_add_ciudad_user", param_ciudades);
                }

                spManager3.Close();
            }
            else
            {
                Dictionary<String, Object> param_prov = new Dictionary<String, Object>();
                param_prov.Add("provee_cuit_sended", usuario.DatosProveedor.Cuit);
                param_prov.Add("provee_rs_sended", usuario.DatosProveedor.RazonSocial);
                param_prov.Add("provee_telefono_sended", usuario.DatosProveedor.Telefono);
                param_prov.Add("provee_rubro_sended", usuario.DatosProveedor.Rubro);
                param_prov.Add("username_sended", usuario.DatosLogin.UserName);
                param_prov.Add("nombre_contacto_sended", usuario.DatosProveedor.NombreContacto);
                param_prov.Add("provee_email_sended", usuario.DatosProveedor.Mail);
                param_prov.Add("result output", "");
                SqlCommand command_prov;
                try
                {
                    spManager.executeSPWithParameters("MR_ANDERSON.sp_insert_proveedor", param_prov, out command_prov);
                    String resultado_prov = command_prov.Parameters["@result"].Value.ToString();
                    if (!resultado_prov.Equals("PROV_REG_OK"))
                    {
                        throw new Exception(resultado_prov);
                    }
                }
                catch(Exception e)
                {
                    throw new Exception("Error Sistema: " + e.Message);
                }

            }
            spManager.Close();

            DataAccess.SPManager spManager4 = new DataAccess.SPManager();

            Dictionary<String, Object> param_direccion = new Dictionary<string, object>();
            param_direccion.Add("calle", usuario.Direccion.Calle);

            param_direccion.Add("localidad", usuario.Direccion.Localidad);
            param_direccion.Add("username", usuario.DatosLogin.UserName);
            param_direccion.Add("nro_piso", usuario.Direccion.Piso);
            param_direccion.Add("depto", usuario.Direccion.Depto);
            param_direccion.Add("codigo_postal", usuario.Direccion.CodigoPostal);
            param_direccion.Add("result output", "");

            SqlCommand command2;
            try
            {
                spManager4.executeSPWithParameters("MR_ANDERSON.sp_insert_direccion", param_direccion, out command2);

                String resultado2 = command2.Parameters["@result"].Value.ToString();
                if (!resultado2.Equals("OK"))
                {
                    throw new Exception(resultado2);
                }
            }
            catch
            {
                throw new Exception("Error en Sistema");
            }
            spManager4.Close();
        }
示例#11
0
 public void setDatosUsuarioAlUsuario(User usuario)
 {
     if (usuario.Rol.TipoUsuario == "Cliente")
     {
         usuario.DatosCliente = getDatosCliente(usuario.DatosLogin.UserName);
     }
     if (usuario.Rol.TipoUsuario == "Proveedor")
     {
         usuario.DatosProveedor = getDatosProveedor(usuario.DatosLogin.UserName);
     }
 }
示例#12
0
        public void modificarProveedor(User provViejo, User provNuevo, Boolean habilitado,
            String rolNuevo)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();
            SqlTransaction tran = spManager.DbManager.Connection.BeginTransaction();
            try
            {
                this.modificarDireccion(provViejo.DatosLogin.UserName, provNuevo.Direccion);
                this.changeStatus(provViejo.DatosLogin.UserName, habilitado);
                this.modificarDatosProveedor(provViejo, provNuevo);
                this.modificarRolAUsuario(provNuevo.DatosLogin.UserName, rolNuevo);
            }
            catch (Exception e)
            {
                tran.Rollback();
                spManager.Close();
                throw new Exception("No se pudo modificar el proveedor por : " + e.ToString());

            }
            tran.Commit();
            spManager.Close();
        }
示例#13
0
        public void modificarDatosProveedor(User provViejo, User provNuevo)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();

            Dictionary<String, Object> param = new Dictionary<String, Object>();
            param.Add("cuit_sended", provNuevo.DatosProveedor.Cuit);
            param.Add("rs_sended", provNuevo.DatosProveedor.RazonSocial);
            param.Add("rubro_sended", provNuevo.DatosProveedor.Rubro);
            param.Add("telefono_sended", provNuevo.DatosProveedor.Telefono);
            param.Add("provee_email_sended", provNuevo.DatosProveedor.Mail);
            param.Add("nombre_contacto_sended", provNuevo.DatosProveedor.NombreContacto);
            param.Add("username_sended", provViejo.DatosLogin.UserName);
            param.Add("result output", "");
            SqlCommand cmd = new SqlCommand();
            spManager.executeSPWithParameters("MR_ANDERSON.sp_modify_proveedor", param, out cmd);
            string resultado = (string)cmd.Parameters["@result"].Value;
            spManager.Close();

            if (!resultado.Equals("OK"))
            {
                throw new Exception(resultado);
            }
        }
示例#14
0
        public void modificarDatosCliente(User clienteViejo, User clienteNuevo)
        {
            DataAccess.SPManager spManager = new DataAccess.SPManager();

            Dictionary<String, Object> param = new Dictionary<String, Object>();
            param.Add("nombre_sended", clienteNuevo.DatosCliente.Nombre);
            param.Add("dni_sended", clienteNuevo.DatosCliente.Dni);
            param.Add("apellido_sended", clienteNuevo.DatosCliente.Apellido);
            param.Add("telefono_sended", clienteNuevo.DatosCliente.Telefono);
            param.Add("mail_sended", clienteNuevo.DatosCliente.Mail);
            param.Add("fecha_nac_sended", clienteNuevo.DatosCliente.FechaNac);
            param.Add("username_sended", clienteViejo.DatosLogin.UserName);
            param.Add("result output", "");
            SqlCommand cmd = new SqlCommand();
            spManager.executeSPWithParameters("MR_ANDERSON.sp_modify_client", param, out cmd);
            string resultado = (string)cmd.Parameters["@result"].Value;
            spManager.Close();

            if (!resultado.Equals("OK"))
            {
                throw new Exception(resultado);
            }
        }
示例#15
0
 public void volverAdminAModoInicial()
 {
     this.usuarioActivo = this.usuarioLogeado.clonarUsuario();
 }
示例#16
0
        /// <summary>
        /// Este método se encargara de setear las direcciones en el Usuario que se le pasa
        /// </summary>
        /// <param name="usuario"></param>
        public void setUsuarioDirecciones(User usuario)
        {
            DataAccess.SPManager spManager2 = new DataAccess.SPManager();

            Dictionary<String, Object> param_direccion = new Dictionary<string, object>();
            param_direccion.Add("username", usuario.DatosLogin.UserName);
            using (SqlDataReader reader2 = spManager2.executeSPWithParameters("MR_ANDERSON.sp_get_direccion", param_direccion))
            {
                if (!reader2.HasRows)
                {
                    return;
                }
                reader2.Read();
                usuario.Direccion = new Direccion();
                usuario.Direccion.Calle = (string)reader2["calle"];
                if (!Convert.IsDBNull(reader2["depto"])) usuario.Direccion.Depto = (string)reader2["depto"];
                if (!Convert.IsDBNull(reader2["codigo_postal"])) usuario.Direccion.CodigoPostal = Convert.ToInt32(reader2["codigo_postal"]);
                if (!Convert.IsDBNull(reader2["nro_piso"])) usuario.Direccion.Piso = Convert.ToInt32(reader2["nro_piso"]);
                usuario.Direccion.Localidad = (string)reader2["localidad"];

            }
            spManager2.Close();
        }
示例#17
0
        private void button1_Click(object sender, EventArgs e)
        {
            this.homeUsr = new HomeUsuarios();
            login = new Login();
            login.UserName = TxtBox_userName.Text;
            login.Password = TxtBox_password.Text;
            try
            {
                login.validateUser();
            }
            catch (Exception excep)
            {
                if(excep.Message.Equals("LOGIN_FIRST"))
                {
                    new RegistrarPassword(login).Show();
                    return;
                }

                if(excep.Message.Equals("LOGIN_PASS_ERR"))
                {
                    MessageBox.Show("Error al loguearse. Verifique su usuario y contraseña");
                    return;
                }

                if(excep.Message.Equals("LOGIN_ERROR"))
                {
                    MessageBox.Show("Error de login");
                    return;
                }
                if (excep.Message.Equals("LOGIN_TOO_MANY_TIMES"))
                {
                    MessageBox.Show("Se superó la cantidad de intentos para loguearse.\nEl usuario queda inhabilitado.");
                    return;
                }

                if (excep.Message.Equals("LOGIN_OFF"))
                {
                    MessageBox.Show("Usuario inhabilitado.");
                    return;
                }
            }

            this.usuarioLogeado = homeUsr.getUsuario(login);
            homeUsr.setInformacionAlUsuario(this.usuarioLogeado);

            this.usuarioActivo = this.usuarioLogeado.clonarUsuario();

            MessageBox.Show("Bienvenid@ " + usuarioLogeado.DatosLogin.UserName + "!");

            Menu menu = this.crearMenuWindow(usuarioActivo.Rol);
            menu.ShowDialog(this);
        }
示例#18
0
        //////BUSQUEDAS /////
        /// <summary>
        /// Devuelve el Usuario inicializado, sin datos. Solo 
        /// </summary>
        /// <param name="login"></param>
        /// <returns></returns>
        public User getUsuario(Login login)
        {
            User usuario = new User();
            usuario.DatosLogin = login;

            DataAccess.SPManager spManagerLogin = new DataAccess.SPManager();
            Dictionary<String, Object> param_login = new Dictionary<String, Object>();

            param_login.Add("nombre_usuario", login.UserName);

            SqlDataReader reader_login = spManagerLogin.executeSPWithParameters("MR_ANDERSON.sp_usuario_habilitado", param_login);
            reader_login.Read();

            if (Convert.ToInt16(reader_login["Habilitado"]).Equals(1)) usuario.DatosLogin.Habilitado = true;
            else usuario.DatosLogin.Habilitado = false;
            spManagerLogin.Close();

            return usuario;
        }