From 6a379c87f72e648b86aac27faf19c9581e78c569 Mon Sep 17 00:00:00 2001 From: Fanny Date: Tue, 12 Jul 2016 21:58:00 -0300 Subject: [PATCH 1/8] =?UTF-8?q?-=20Corre=C3=A7=C3=A3o=20do=20redirecioname?= =?UTF-8?q?nto=20do=20cadastro?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nutrif-web-refactor/js/controllers/cadastrarFuncionarioCtrl.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nutrif-web-refactor/js/controllers/cadastrarFuncionarioCtrl.js b/nutrif-web-refactor/js/controllers/cadastrarFuncionarioCtrl.js index f5b30b48..c7b05f1f 100644 --- a/nutrif-web-refactor/js/controllers/cadastrarFuncionarioCtrl.js +++ b/nutrif-web-refactor/js/controllers/cadastrarFuncionarioCtrl.js @@ -30,7 +30,7 @@ angular.module('NutrifApp').controller('cadastrarFuncionarioCtrl', function ($sc .hideDelay(6000) ); - $state.transitionTo('home.entrada-alunos'); + $state.transitionTo('home.listar-funcionarios'); } function onErrorCallback (data, status) { From 1b6d829484b47048c94ed8ab0909ea8f71921d00 Mon Sep 17 00:00:00 2001 From: LADOSSIFPB Date: Tue, 12 Jul 2016 22:05:17 -0300 Subject: [PATCH 2/8] Encoding do arquivo html MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ajuste para utf8 no encoding do arquivo de listagem e edição do funcionário. --- .../view/manager/admin/editar-funcionario.html | 10 +++++----- .../view/manager/admin/listar-funcionarios.html | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/nutrif-web-refactor/view/manager/admin/editar-funcionario.html b/nutrif-web-refactor/view/manager/admin/editar-funcionario.html index 7783dfdc..1339bbd9 100644 --- a/nutrif-web-refactor/view/manager/admin/editar-funcionario.html +++ b/nutrif-web-refactor/view/manager/admin/editar-funcionario.html @@ -1,4 +1,4 @@ - + @@ -6,13 +6,13 @@ - Editar informações do funcionário - Clique em salvar para alterar as informações + Editar informações do funcionário + Clique em salvar para alterar as informações - - Salvar Alterações + + Salvar Alterações diff --git a/nutrif-web-refactor/view/manager/admin/listar-funcionarios.html b/nutrif-web-refactor/view/manager/admin/listar-funcionarios.html index edc61a08..24e616dc 100644 --- a/nutrif-web-refactor/view/manager/admin/listar-funcionarios.html +++ b/nutrif-web-refactor/view/manager/admin/listar-funcionarios.html @@ -1,4 +1,4 @@ - + @@ -32,7 +32,7 @@ {{funcionario.nome | uppercase}} {{funcionario.email | uppercase}} - Editar Funcionário + Editar Funcionário From f60c9935de3558a87f5704c74ef282572823e359 Mon Sep 17 00:00:00 2001 From: rhavymaia Date: Wed, 13 Jul 2016 09:00:40 -0300 Subject: [PATCH 3/8] =?UTF-8?q?Impress=C3=A3o=20QR-Code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Configuração da página de impressão do qr-code. --- nutrif-web-refactor/css/qr-codePrint.css | 11 +++++ .../manager/modals/modal-show-qrcode.html | 40 +++++++++---------- 2 files changed, 31 insertions(+), 20 deletions(-) diff --git a/nutrif-web-refactor/css/qr-codePrint.css b/nutrif-web-refactor/css/qr-codePrint.css index 0827d7f9..2ba6235a 100644 --- a/nutrif-web-refactor/css/qr-codePrint.css +++ b/nutrif-web-refactor/css/qr-codePrint.css @@ -2,7 +2,18 @@ body { visibility: hidden; } + .md-dialog-content { visibility: visible; + width:100%; } + + .borda { + border: 1px solid red; + } +} + +/* Página de impressão */ +@page { + margin: 0; } \ No newline at end of file diff --git a/nutrif-web-refactor/view/manager/modals/modal-show-qrcode.html b/nutrif-web-refactor/view/manager/modals/modal-show-qrcode.html index 420a9f5a..4d05a523 100644 --- a/nutrif-web-refactor/view/manager/modals/modal-show-qrcode.html +++ b/nutrif-web-refactor/view/manager/modals/modal-show-qrcode.html @@ -1,21 +1,21 @@ - - - -

Nome: {{user.nome}}
- Matrícula: {{user.matricula}}
- Dia: {{refeicao}}
- {{dataRefeicao | date}}

-
- -
-
- - - - Fechar - - - Confirmar - - + + + +

Nome: {{user.nome}}
+ Matrícula: {{user.matricula}}
+ Dia: {{refeicao}}
+ {{dataRefeicao | date}}

+
+ +
+
+ + + + Fechar + + + Confirmar + +
From 914a311475d9549f2a52f84e04eae70adde5237f Mon Sep 17 00:00:00 2001 From: rhavymaia Date: Wed, 13 Jul 2016 09:18:22 -0300 Subject: [PATCH 4/8] =?UTF-8?q?Layout=20bot=C3=A3o=20de=20adicionar=20Alun?= =?UTF-8?q?o=20e=20Funcion=C3=A1rio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ajuste no layout do botão de submissão do cadastro de aluno e funcionário. --- nutrif-web-refactor/view/manager/admin/adicionar-alunos.html | 2 +- .../view/manager/admin/adicionar-funcionarios.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nutrif-web-refactor/view/manager/admin/adicionar-alunos.html b/nutrif-web-refactor/view/manager/admin/adicionar-alunos.html index 4f3e3568..d3f59357 100644 --- a/nutrif-web-refactor/view/manager/admin/adicionar-alunos.html +++ b/nutrif-web-refactor/view/manager/admin/adicionar-alunos.html @@ -20,7 +20,7 @@ - Cadastrar Aluno + Cadastrar Aluno diff --git a/nutrif-web-refactor/view/manager/admin/adicionar-funcionarios.html b/nutrif-web-refactor/view/manager/admin/adicionar-funcionarios.html index 445f827e..65b2be3a 100644 --- a/nutrif-web-refactor/view/manager/admin/adicionar-funcionarios.html +++ b/nutrif-web-refactor/view/manager/admin/adicionar-funcionarios.html @@ -25,7 +25,7 @@ - Cadastrar Funcionario + Cadastrar Funcionario From 9805738b2f5da198edaac145cb2c5872e6b84fa4 Mon Sep 17 00:00:00 2001 From: rhavymaia Date: Wed, 13 Jul 2016 13:47:12 -0300 Subject: [PATCH 5/8] =?UTF-8?q?Ajuste=20rodap=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ajuste na imagem do rodapé da página principal. --- nutrif-web-refactor/view/templates/footer.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nutrif-web-refactor/view/templates/footer.html b/nutrif-web-refactor/view/templates/footer.html index eafb18c3..b3e22d39 100644 --- a/nutrif-web-refactor/view/templates/footer.html +++ b/nutrif-web-refactor/view/templates/footer.html @@ -1,7 +1,7 @@ - + - + From 279e73b9587ea29b104ed70593ae3229eac829e7 Mon Sep 17 00:00:00 2001 From: rhavymaia Date: Wed, 13 Jul 2016 15:00:03 -0300 Subject: [PATCH 6/8] =?UTF-8?q?Ajuste=20servi=C3=A7o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ajuste na importação do FuncionárioController. --- .../src/br/edu/ifpb/nutrif/controller/FuncionarioController.java | 1 - 1 file changed, 1 deletion(-) diff --git a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/FuncionarioController.java b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/FuncionarioController.java index 45603964..3b8d7487 100644 --- a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/FuncionarioController.java +++ b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/FuncionarioController.java @@ -17,7 +17,6 @@ import javax.ws.rs.core.Response.ResponseBuilder; import br.edu.ifpb.nutrif.dao.FuncionarioDAO; -import br.edu.ifpb.nutrif.dao.PessoaDAO; import br.edu.ifpb.nutrif.dao.RoleDAO; import br.edu.ifpb.nutrif.exception.ErrorFactory; import br.edu.ifpb.nutrif.exception.SQLExceptionNutrIF; From 195afbb85529ec73fe306c227550a7f5e060828a Mon Sep 17 00:00:00 2001 From: LADOSSIFPB Date: Thu, 14 Jul 2016 17:49:32 -0300 Subject: [PATCH 7/8] Ajuste filtro de roles - Logger na camada de roles --- .../edu/ifpb/nutrif/controller/PessoaController.java | 7 +++++++ .../br/edu/ifpb/nutrif/service/NutrIFApplication.java | 3 +-- .../edu/ifpb/nutrif/service/SecurityInterceptor.java | 10 +++++----- .../src/br/edu/ladoss/entity/PessoaAcesso.java | 2 -- 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java index a06334f3..d118e864 100644 --- a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java +++ b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java @@ -11,6 +11,9 @@ import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.ResponseBuilder; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + import br.edu.ifpb.nutrif.dao.LoginDAO; import br.edu.ifpb.nutrif.dao.PessoaDAO; import br.edu.ifpb.nutrif.exception.ErrorFactory; @@ -24,6 +27,8 @@ @Path("pessoa") public class PessoaController { + private static Logger logger = LogManager.getLogger(PessoaController.class); + /** * Login para Pessoa. Retorna a chave de autenticação caso o usuário esteja * com o e-mail e senha corretos. @@ -41,6 +46,8 @@ public Response login(PessoaAcesso pessoaAcesso) { ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST); builder.expires(new Date()); + logger.info("Login usuário"); + // Validação dos dados de entrada. int validacao = Validate.acessoPessoa(pessoaAcesso); diff --git a/NutrIF_Service/src/br/edu/ifpb/nutrif/service/NutrIFApplication.java b/NutrIF_Service/src/br/edu/ifpb/nutrif/service/NutrIFApplication.java index 4a6c2126..105504d7 100644 --- a/NutrIF_Service/src/br/edu/ifpb/nutrif/service/NutrIFApplication.java +++ b/NutrIF_Service/src/br/edu/ifpb/nutrif/service/NutrIFApplication.java @@ -34,8 +34,6 @@ public NutrIFApplication() { this.singletons.add(filter); - //singletons.add(new JaxbJacksonObjectMapper()); - // ADD YOUR RESTFUL RESOURCES HERE this.singletons.add(new AlunoController()); this.singletons.add(new FuncionarioController()); @@ -49,6 +47,7 @@ public NutrIFApplication() { this.singletons.add(new PretensaoRefeicaoController()); this.singletons.add(new ArquivoController()); + // Information service. this.singletons.add(new NutrIFRestIndex()); this.singletons.add(new NutrIFRestServices()); } diff --git a/NutrIF_Service/src/br/edu/ifpb/nutrif/service/SecurityInterceptor.java b/NutrIF_Service/src/br/edu/ifpb/nutrif/service/SecurityInterceptor.java index 8b098685..527394a7 100644 --- a/NutrIF_Service/src/br/edu/ifpb/nutrif/service/SecurityInterceptor.java +++ b/NutrIF_Service/src/br/edu/ifpb/nutrif/service/SecurityInterceptor.java @@ -3,12 +3,9 @@ import java.io.IOException; import java.lang.reflect.Method; import java.util.Arrays; -import java.util.Calendar; -import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.TimeZone; import javax.annotation.security.DenyAll; import javax.annotation.security.PermitAll; @@ -44,6 +41,8 @@ public class SecurityInterceptor implements ContainerRequestFilter { public void filter(ContainerRequestContext requestContext) throws IOException { + logger.info("Filter: roles verify."); + MultivaluedMap headers = requestContext.getHeaders(); ResourceMethodInvoker methodInvoker = @@ -53,6 +52,8 @@ public void filter(ContainerRequestContext requestContext) if(!method.isAnnotationPresent(PermitAll.class)) { + logger.info("Verify authorization."); + final List authorization = headers.get(AUTHORIZATION_PROPERTY); //If no authorization information present; block access @@ -68,8 +69,7 @@ public void filter(ContainerRequestContext requestContext) requestContext.abortWith(Response.status( Response.Status.UNAUTHORIZED).build()); return; - } - + } // Analisar perfil do usuário. if(method.isAnnotationPresent(RolesAllowed.class)){ diff --git a/nutrif-commons/src/br/edu/ladoss/entity/PessoaAcesso.java b/nutrif-commons/src/br/edu/ladoss/entity/PessoaAcesso.java index e30eccf0..a4a1277e 100644 --- a/nutrif-commons/src/br/edu/ladoss/entity/PessoaAcesso.java +++ b/nutrif-commons/src/br/edu/ladoss/entity/PessoaAcesso.java @@ -1,7 +1,5 @@ package br.edu.ladoss.entity; -import java.util.List; - import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; From 6fa21d040f8c8a43b80c43bc07bc5da4aa116bbc Mon Sep 17 00:00:00 2001 From: LADOSSIFPB Date: Sun, 17 Jul 2016 10:47:42 -0300 Subject: [PATCH 8/8] Merger PessoaController homologacao->master --- .../nutrif/controller/PessoaController.java | 317 ++++++++++-------- 1 file changed, 177 insertions(+), 140 deletions(-) diff --git a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java index d118e864..c7d666b2 100644 --- a/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java +++ b/NutrIF_Service/src/br/edu/ifpb/nutrif/controller/PessoaController.java @@ -1,140 +1,177 @@ -package br.edu.ifpb.nutrif.controller; - -import java.io.UnsupportedEncodingException; -import java.util.Date; - -import javax.annotation.security.PermitAll; -import javax.ws.rs.Consumes; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.ResponseBuilder; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - -import br.edu.ifpb.nutrif.dao.LoginDAO; -import br.edu.ifpb.nutrif.dao.PessoaDAO; -import br.edu.ifpb.nutrif.exception.ErrorFactory; -import br.edu.ifpb.nutrif.exception.SQLExceptionNutrIF; -import br.edu.ifpb.nutrif.validation.Validate; -import br.edu.ladoss.entity.Error; -import br.edu.ladoss.entity.Login; -import br.edu.ladoss.entity.Pessoa; -import br.edu.ladoss.entity.PessoaAcesso; - -@Path("pessoa") -public class PessoaController { - - private static Logger logger = LogManager.getLogger(PessoaController.class); - - /** - * Login para Pessoa. Retorna a chave de autenticação caso o usuário esteja - * com o e-mail e senha corretos. - * - * @param pessoaAcesso - * @return - */ - @PermitAll - @POST - @Path("/login") - @Consumes("application/json") - @Produces("application/json") - public Response login(PessoaAcesso pessoaAcesso) { - - ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST); - builder.expires(new Date()); - - logger.info("Login usuário"); - - // Validação dos dados de entrada. - int validacao = Validate.acessoPessoa(pessoaAcesso); - - if (validacao == Validate.VALIDATE_OK) { - - try { - - //Login Pessoa. - Pessoa pessoa = PessoaDAO.getInstance().login( - pessoaAcesso.getEmail(), - pessoaAcesso.getSenha()); - - if (pessoa != null) { - - // Registro do Login - Date agora = new Date(); - - Login login = new Login(); - login.setPessoa(pessoa); - login.setRegistro(agora); - - // Registro de Login para a Pessoa. - LoginDAO.getInstance().insert(login); - - // Pessoa - pessoaAcesso = PessoaAcesso.getInstance( - pessoa); - - // Operação realizada com sucesso. - builder.status(Response.Status.OK); - builder.entity(pessoaAcesso); - - } else { - - builder.status(Response.Status.UNAUTHORIZED); - } - - } catch (SQLExceptionNutrIF exception) { - - builder.status(Response.Status.INTERNAL_SERVER_ERROR).entity( - exception.getError()); - - } catch (UnsupportedEncodingException - exception) { - - builder.status(Response.Status.INTERNAL_SERVER_ERROR).entity( - ErrorFactory.getErrorFromIndex( - ErrorFactory.IMPOSSIVEL_CRIPTOGRAFAR_VALOR)); - } - - } else { - - Error erro = ErrorFactory.getErrorFromIndex(validacao); - builder.status(Response.Status.NOT_ACCEPTABLE).entity(erro); - } - - return builder.build(); - } - - - /** - * Reiniciar senha para aluno e funcionário. - * - * @param pessoaAcesso - * @return - */ - @PermitAll - @POST - @Path("/login") - @Consumes("application/json") - @Produces("application/json") - public Response requestResetSenha(PessoaAcesso pessoaAcesso) { - return null; - } - - /** - * Reiniciar senha para aluno e funcionário. - * - * @param pessoaAcesso - * @return - */ - @PermitAll - @POST - @Path("/login") - @Consumes("application/json") - @Produces("application/json") - public Response resetSenha(PessoaAcesso pessoaAcesso) { - return null; - } -} +package br.edu.ifpb.nutrif.controller; + +import java.io.UnsupportedEncodingException; +import java.util.Date; + +import javax.annotation.security.PermitAll; +import javax.ws.rs.Consumes; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.ResponseBuilder; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import br.edu.ifpb.nutrif.dao.LoginDAO; +import br.edu.ifpb.nutrif.dao.PessoaDAO; +import br.edu.ifpb.nutrif.exception.ErrorFactory; +import br.edu.ifpb.nutrif.exception.SQLExceptionNutrIF; +import br.edu.ifpb.nutrif.validation.Validate; +import br.edu.ladoss.entity.Error; +import br.edu.ladoss.entity.Login; +import br.edu.ladoss.entity.Pessoa; +import br.edu.ladoss.entity.PessoaAcesso; + +@Path("pessoa") +public class PessoaController { + + private static Logger logger = LogManager.getLogger(PessoaController.class); + + /** + * Login para Pessoa. Retorna a chave de autenticação caso o usuário esteja + * com o e-mail e senha corretos. + * + * @param pessoaAcesso + * @return + */ + @PermitAll + @POST + @Path("/login") + @Consumes("application/json") + @Produces("application/json") + public Response login(PessoaAcesso pessoaAcesso) { + + ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST); + builder.expires(new Date()); + + logger.info("Login usuário"); + + // Validação dos dados de entrada. + int validacao = Validate.acessoPessoa(pessoaAcesso); + + if (validacao == Validate.VALIDATE_OK) { + + try { + + //Login Pessoa. + Pessoa pessoa = PessoaDAO.getInstance().login( + pessoaAcesso.getEmail(), + pessoaAcesso.getSenha()); + + if (pessoa != null) { + + // Registro do Login + Date agora = new Date(); + + Login login = new Login(); + login.setPessoa(pessoa); + login.setRegistro(agora); + + // Registro de Login para a Pessoa. + LoginDAO.getInstance().insert(login); + + // Pessoa + pessoaAcesso = PessoaAcesso.getInstance( + pessoa); + + // Operação realizada com sucesso. + builder.status(Response.Status.OK); + builder.entity(pessoaAcesso); + + } else { + + builder.status(Response.Status.UNAUTHORIZED); + } + + } catch (SQLExceptionNutrIF exception) { + + builder.status(Response.Status.INTERNAL_SERVER_ERROR).entity( + exception.getError()); + + } catch (UnsupportedEncodingException + exception) { + + builder.status(Response.Status.INTERNAL_SERVER_ERROR).entity( + ErrorFactory.getErrorFromIndex( + ErrorFactory.IMPOSSIVEL_CRIPTOGRAFAR_VALOR)); + } + + } else { + + Error erro = ErrorFactory.getErrorFromIndex(validacao); + builder.status(Response.Status.NOT_ACCEPTABLE).entity(erro); + } + + return builder.build(); + } + + /** + * Gerar e-mail com url para reinicialização da senha para aluno e funcionário. + * + * @param pessoaAcesso + * @return + */ + @PermitAll + @POST + @Path("/login/request") + @Consumes("application/json") + @Produces("application/json") + public Response requestResetSenha(PessoaAcesso pessoaAcesso) { + + ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST); + builder.expires(new Date()); + + logger.info("Reset senha usuário"); + + //TODO: Validação dos dados de entrada. + int validacao = Validate.VALIDATE_OK; + + if (validacao == Validate.VALIDATE_OK) { + + //TODO: Mudar senha do usuário. + + } else { + + Error erro = ErrorFactory.getErrorFromIndex(validacao); + builder.status(Response.Status.NOT_ACCEPTABLE).entity(erro); + } + + return builder.build(); + } + + /** + * Reiniciar senha para aluno e funcionário. + * + * @param pessoaAcesso + * @return + */ + @PermitAll + @POST + @Path("/login/reset") + @Consumes("application/json") + @Produces("application/json") + public Response resetSenha(PessoaAcesso pessoaAcesso) { + + ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST); + builder.expires(new Date()); + + logger.info("Reset senha usuário"); + + //TODO: Validação dos dados de entrada. + int validacao = Validate.VALIDATE_OK; + + if (validacao == Validate.VALIDATE_OK) { + + //TODO: Mudar senha do usuário. + + } else { + + Error erro = ErrorFactory.getErrorFromIndex(validacao); + builder.status(Response.Status.NOT_ACCEPTABLE).entity(erro); + } + + return builder.build(); + } +}