Search in sources :

Example 6 with Usuario

use of sic.modelo.Usuario in project sic by belluccifranco.

the class CajasGUI method buscar.

private void buscar() {
    cambiarEstadoEnabled(false);
    pb_barra.setIndeterminate(true);
    SwingWorker<List<Caja>, Void> worker = new SwingWorker<List<Caja>, Void>() {

        @Override
        protected List<Caja> doInBackground() throws Exception {
            String criteria = "/cajas/busqueda/criteria?";
            if (chk_Fecha.isSelected()) {
                criteria += "desde=" + dc_FechaDesde.getDate().getTime() + "&hasta=" + dc_FechaHasta.getDate().getTime();
            }
            if (chk_Usuario.isSelected()) {
                criteria += "&idUsuario=" + ((Usuario) cmb_Usuarios.getSelectedItem()).getId_Usuario();
            }
            criteria += "&idEmpresa=" + EmpresaActiva.getInstance().getEmpresa().getId_Empresa();
            cajas = new ArrayList(Arrays.asList(RestClient.getRestTemplate().getForObject(criteria, Caja[].class)));
            cargarResultadosAlTable();
            cambiarEstadoEnabled(true);
            return cajas;
        }

        @Override
        protected void done() {
            pb_barra.setIndeterminate(false);
            try {
                if (get().isEmpty()) {
                    JOptionPane.showInternalMessageDialog(getParent(), ResourceBundle.getBundle("Mensajes").getString("mensaje_busqueda_sin_resultados"), "Aviso", JOptionPane.INFORMATION_MESSAGE);
                }
            } catch (InterruptedException ex) {
                String msjError = "La tarea que se estaba realizando fue interrumpida. Intente nuevamente.";
                LOGGER.error(msjError + " - " + ex.getMessage());
                JOptionPane.showInternalMessageDialog(getParent(), msjError, "Error", JOptionPane.ERROR_MESSAGE);
            } catch (ExecutionException ex) {
                if (ex.getCause() instanceof RestClientResponseException) {
                    JOptionPane.showMessageDialog(getParent(), ex.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
                } else if (ex.getCause() instanceof ResourceAccessException) {
                    LOGGER.error(ex.getMessage());
                    JOptionPane.showMessageDialog(getParent(), ResourceBundle.getBundle("Mensajes").getString("mensaje_error_conexion"), "Error", JOptionPane.ERROR_MESSAGE);
                } else {
                    String msjError = "Se produjo un error en la ejecuciĆ³n de la tarea solicitada. Intente nuevamente.";
                    LOGGER.error(msjError + " - " + ex.getMessage());
                    JOptionPane.showInternalMessageDialog(getParent(), msjError, "Error", JOptionPane.ERROR_MESSAGE);
                }
                cambiarEstadoEnabled(true);
            }
        }
    };
    worker.execute();
}
Also used : Usuario(sic.modelo.Usuario) ArrayList(java.util.ArrayList) SwingWorker(javax.swing.SwingWorker) Caja(sic.modelo.Caja) EstadoCaja(sic.modelo.EstadoCaja) ArrayList(java.util.ArrayList) List(java.util.List) RestClientResponseException(org.springframework.web.client.RestClientResponseException) ExecutionException(java.util.concurrent.ExecutionException) ResourceAccessException(org.springframework.web.client.ResourceAccessException)

Example 7 with Usuario

use of sic.modelo.Usuario in project sic by belluccifranco.

the class JwtInterceptor method preHandle.

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
    if (request.getMethod().equals("OPTIONS")) {
        return true;
    }
    final String authHeader = request.getHeader("Authorization");
    if (authHeader == null || !authHeader.startsWith("Bearer ")) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_vacio_invalido"));
    }
    // The part after "Bearer "
    final String token = authHeader.substring(7);
    Claims claims;
    try {
        claims = Jwts.parser().setSigningKey(secretkey).parseClaimsJws(token).getBody();
        request.setAttribute("claims", claims);
    } catch (JwtException ex) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_vacio_invalido"), ex);
    }
    long idUsuario = (int) claims.get("idUsuario");
    Usuario usuario = usuarioService.getUsuarioPorId(idUsuario);
    if (null == usuario || null == token) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_vacio_invalido"));
    } else if (!token.equalsIgnoreCase(usuario.getToken())) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_invalido"));
    }
    return true;
}
Also used : Claims(io.jsonwebtoken.Claims) Usuario(sic.modelo.Usuario) UnauthorizedException(sic.controller.UnauthorizedException) JwtException(io.jsonwebtoken.JwtException)

Example 8 with Usuario

use of sic.modelo.Usuario in project sic by belluccifranco.

the class AuthController method login.

@PostMapping("/login")
public String login(@RequestBody Credencial credencial) {
    Usuario usuario;
    try {
        usuario = usuarioService.getUsuarioPorNombreContrasenia(credencial.getUsername(), Utilidades.encriptarConMD5(credencial.getPassword()));
    } catch (EntityNotFoundException ex) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_usuario_logInInvalido"), ex);
    }
    String token = this.generarToken(usuario.getId_Usuario());
    usuario.setToken(token);
    usuarioService.actualizar(usuario);
    return token;
}
Also used : Usuario(sic.modelo.Usuario) EntityNotFoundException(javax.persistence.EntityNotFoundException) PostMapping(org.springframework.web.bind.annotation.PostMapping)

Example 9 with Usuario

use of sic.modelo.Usuario in project sic by belluccifranco.

the class LoginGUI method validarUsuario.

private void validarUsuario() {
    if (!txt_Usuario.getText().trim().equals("") || txt_Contrasenia.getPassword().length != 0) {
        try {
            Credencial credencial = new Credencial(txt_Usuario.getText().trim(), new String(txt_Contrasenia.getPassword()));
            UsuarioActivo.getInstance().setToken(RestClient.getRestTemplate().postForObject("/login", credencial, String.class));
            Usuario usuario = RestClient.getRestTemplate().getForObject("/usuarios/busqueda?nombre=" + credencial.getUsername(), Usuario.class);
            UsuarioActivo.getInstance().setUsuario(usuario);
        } catch (RestClientResponseException ex) {
            JOptionPane.showMessageDialog(this, ex.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
        } catch (ResourceAccessException ex) {
            LOGGER.error(ex.getMessage());
            JOptionPane.showMessageDialog(this, ResourceBundle.getBundle("Mensajes").getString("mensaje_error_conexion"), "Error", JOptionPane.ERROR_MESSAGE);
        }
    } else {
        JOptionPane.showMessageDialog(this, ResourceBundle.getBundle("Mensajes").getString("mensaje_login_usuario_contrasenia_vacios"), "Error", JOptionPane.ERROR_MESSAGE);
    }
}
Also used : Usuario(sic.modelo.Usuario) Credencial(sic.modelo.Credencial) RestClientResponseException(org.springframework.web.client.RestClientResponseException) ResourceAccessException(org.springframework.web.client.ResourceAccessException)

Example 10 with Usuario

use of sic.modelo.Usuario in project sic by belluccifranco.

the class AuthController method logout.

@PutMapping("/logout")
public void logout(HttpServletRequest request) {
    final String authHeader = request.getHeader("Authorization");
    if (authHeader == null || !authHeader.startsWith("Bearer ")) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_vacio_invalido"));
    }
    // The part after "Bearer "
    final String token = authHeader.substring(7);
    Claims claims;
    try {
        claims = Jwts.parser().setSigningKey(secretkey).parseClaimsJws(token).getBody();
        request.setAttribute("claims", claims);
    } catch (JwtException ex) {
        throw new UnauthorizedException(ResourceBundle.getBundle("Mensajes").getString("mensaje_error_token_vacio_invalido"), ex);
    }
    long idUsuario = (int) claims.get("idUsuario");
    Usuario usuario = usuarioService.getUsuarioPorId(idUsuario);
    usuario.setToken("");
    usuarioService.actualizar(usuario);
}
Also used : Claims(io.jsonwebtoken.Claims) Usuario(sic.modelo.Usuario) JwtException(io.jsonwebtoken.JwtException) PutMapping(org.springframework.web.bind.annotation.PutMapping)

Aggregations

Usuario (sic.modelo.Usuario)18 Cliente (sic.modelo.Cliente)8 ArrayList (java.util.ArrayList)6 Calendar (java.util.Calendar)6 GetMapping (org.springframework.web.bind.annotation.GetMapping)6 ResponseStatus (org.springframework.web.bind.annotation.ResponseStatus)6 ResourceAccessException (org.springframework.web.client.ResourceAccessException)4 RestClientResponseException (org.springframework.web.client.RestClientResponseException)4 BusquedaFacturaVentaCriteria (sic.modelo.BusquedaFacturaVentaCriteria)4 Date (java.util.Date)3 Test (org.junit.Test)3 ClienteBuilder (sic.builder.ClienteBuilder)3 EmpresaBuilder (sic.builder.EmpresaBuilder)3 TransportistaBuilder (sic.builder.TransportistaBuilder)3 Credencial (sic.modelo.Credencial)3 Empresa (sic.modelo.Empresa)3 Factura (sic.modelo.Factura)3 FacturaVenta (sic.modelo.FacturaVenta)3 Medida (sic.modelo.Medida)3 Producto (sic.modelo.Producto)3