Commit 2e002fe23947f9b063c255184c8cd17c9ea71760
1 parent
c2c07667
Exists in
master
Serviço para cancelar exclusão de template.
Showing
3 changed files
with
68 additions
and
5 deletions
Show diff stats
src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java
... | ... | @@ -79,6 +79,19 @@ public class TemplatesDAO { |
79 | 79 | return resultado.get(0); |
80 | 80 | } |
81 | 81 | |
82 | + public Template getTemplateExcluido(String nome){ | |
83 | + HashMap<String, Object> params = new HashMap<String, Object>(); | |
84 | + params.put("nome", nome); | |
85 | + | |
86 | + List<Template> resultado = dao.executeNamedQuery("Template.recuperarTemplateExcluidoPeloNome", params); | |
87 | + | |
88 | + if(resultado.size() < 1){ | |
89 | + return null; | |
90 | + } | |
91 | + | |
92 | + return resultado.get(0); | |
93 | + } | |
94 | + | |
82 | 95 | public String AndOrWhere(StringBuilder sql){ |
83 | 96 | if(sql.toString().contains("WHERE")){ |
84 | 97 | return "AND"; | ... | ... |
src/main/java/br/gov/ans/templates/modelo/Template.java
... | ... | @@ -29,7 +29,8 @@ import org.hibernate.annotations.Type; |
29 | 29 | @XmlRootElement |
30 | 30 | @Entity |
31 | 31 | @Table(schema="ANS_GERAL",name="TB_TEMPLATE_DOCUMENTO") |
32 | -@NamedQueries({@NamedQuery(name = "Template.recuperarPeloNome", query = "SELECT t FROM Template t WHERE upper(t.nome) = upper(:nome) AND t.dataExclusao is null")}) | |
32 | +@NamedQueries({@NamedQuery(name = "Template.recuperarPeloNome", query = "SELECT t FROM Template t WHERE upper(t.nome) = upper(:nome) AND t.dataExclusao is null"), | |
33 | + @NamedQuery(name = "Template.recuperarTemplateExcluidoPeloNome", query = "SELECT t FROM Template t WHERE upper(t.nome) = upper(:nome) AND t.dataExclusao is not null")}) | |
33 | 34 | public class Template implements Serializable{ |
34 | 35 | |
35 | 36 | private static final long serialVersionUID = 1L; | ... | ... |
src/main/java/br/gov/ans/templates/rest/TemplateResource.java
... | ... | @@ -81,7 +81,7 @@ public class TemplateResource { |
81 | 81 | * @apiSuccess (Sucesso - 200) {String} resultado.template.exemplo Exemplo de request para preenchimento do template. |
82 | 82 | * @apiSuccess (Sucesso - 200) {String} resultado.template.nome Identificador do template |
83 | 83 | * @apiSuccess (Sucesso - 200) {String} resultado.template.responsavel Analista responsável pelo template. |
84 | - * @apiSuccess (Sucesso - 200) {Boolean} resultado.template.restrito Flag identificando se a atualização deste template � restrita. | |
84 | + * @apiSuccess (Sucesso - 200) {Boolean} resultado.template.restrito Flag identificando se a atualização deste template é restrita. | |
85 | 85 | * |
86 | 86 | * @apiSuccessExample {json} Success-Response: |
87 | 87 | * HTTP/1.1 200 OK |
... | ... | @@ -139,7 +139,7 @@ public class TemplateResource { |
139 | 139 | * @apiSuccess (Sucesso - 200) {String} template.exemplo Exemplo de request para preenchimento do template. |
140 | 140 | * @apiSuccess (Sucesso - 200) {String} template.nome Identificador do template. |
141 | 141 | * @apiSuccess (Sucesso - 200) {String} template.responsavel Analista responsável pelo template. |
142 | - * @apiSuccess (Sucesso - 200) {Boolean} template.restrito Flag identificando se a atualização deste template � restrita. | |
142 | + * @apiSuccess (Sucesso - 200) {Boolean} template.restrito Flag identificando se a atualização deste template é restrita. | |
143 | 143 | * |
144 | 144 | * @apiSuccessExample {json} Success-Response: |
145 | 145 | * HTTP/1.1 200 OK |
... | ... | @@ -222,7 +222,7 @@ public class TemplateResource { |
222 | 222 | * @apiParam (Request Body) {String} exemplo Exemplo de request para preenchimento do template. |
223 | 223 | * @apiParam (Request Body) {String} nome Identificador do template. |
224 | 224 | * @apiParam (Request Body) {String} responsavel Analista responsável pelo template. |
225 | - * @apiParam (Request Body) {String} restrito Flag identificando se a atualização deste template � restrita. | |
225 | + * @apiParam (Request Body) {String} restrito Flag identificando se a atualização deste template é restrita. | |
226 | 226 | * |
227 | 227 | * @apiExample Exemplo de requisição: |
228 | 228 | * endpoint: [PUT] http://<host>/templates-broker/service/templates/confirmacao-cadastro |
... | ... | @@ -286,7 +286,7 @@ public class TemplateResource { |
286 | 286 | * @apiParam (Request Body) {String} exemplo Exemplo de request para preenchimento do template. |
287 | 287 | * @apiParam (Request Body) {String} nome Identificador do template. |
288 | 288 | * @apiParam (Request Body) {String} responsavel Analista responsável pelo template. |
289 | - * @apiParam (Request Body) {String} restrito Flag identificando se a atualização deste template � restrita. | |
289 | + * @apiParam (Request Body) {String} restrito Flag identificando se a atualização deste template é restrita. | |
290 | 290 | * |
291 | 291 | * @apiExample Exemplo de requisição: |
292 | 292 | * endpoint: [PUT] http://<host>/templates-broker/service/templates/confirmacao-cadastro |
... | ... | @@ -610,6 +610,55 @@ public class TemplateResource { |
610 | 610 | return Response.ok().entity(entity).build(); |
611 | 611 | } |
612 | 612 | |
613 | + | |
614 | + /** | |
615 | + * @api {delete} /templates/excluidos/:template Recuperar template | |
616 | + * @apiName undeleteTemplate | |
617 | + * @apiGroup Template | |
618 | + * @apiVersion 1.0.0 | |
619 | + * @apiPermission RO_ADMIN_TEMPLATE | |
620 | + * | |
621 | + * @apiDescription Recupera um template excluído. | |
622 | + * | |
623 | + * @apiParam (Path Parameters) {String} template Identificador do template | |
624 | + * | |
625 | + * @apiExample Exemplo de requisição: | |
626 | + * curl -X DELETE http://<host>/templates-broker/service/templates/excluidos/admp-template-novo-usuario | |
627 | + * | |
628 | + * @apiSuccessExample {json} Success-Response: | |
629 | + * HTTP/1.1 200 OK | |
630 | + * | |
631 | + * @apiErrorExample {json} Error-Response: | |
632 | + * HTTP/1.1 500 Internal Server Error | |
633 | + * { | |
634 | + * "error":"Mensagem de erro." | |
635 | + * "code":"código do erro" | |
636 | + * } | |
637 | + */ | |
638 | + @DELETE | |
639 | + @Path("excluidos/{template}") | |
640 | + @Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) | |
641 | + public Response undeleteTemplate(@PathParam("template") String nomeTemplate) throws ResourceNotFoundException{ | |
642 | + Template template = getTemplateExcluido(nomeTemplate); | |
643 | + | |
644 | + template.setDataExclusao(null); | |
645 | + | |
646 | + daoTemplate.merge(template); | |
647 | + | |
648 | + return Response.ok().build(); | |
649 | + } | |
650 | + | |
651 | + | |
652 | + public Template getTemplateExcluido(String nomeTemplate) throws ResourceNotFoundException{ | |
653 | + Template template = daoTemplate.getTemplateExcluido(nomeTemplate); | |
654 | + | |
655 | + if(template == null){ | |
656 | + throw new ResourceNotFoundException(messages.getMessage("erro.template.nao.encontrado", nomeTemplate)); | |
657 | + } | |
658 | + | |
659 | + return template; | |
660 | + } | |
661 | + | |
613 | 662 | public void registrarHistoricoVersao(Template template){ |
614 | 663 | Versao versao = new Versao(template); |
615 | 664 | ... | ... |