From 80caf53164d47c04c4acdedafa6c88e9f06b29be Mon Sep 17 00:00:00 2001 From: Guilherme Cavalcanti Date: Fri, 4 Jul 2014 20:41:19 -0300 Subject: [PATCH 1/3] =?UTF-8?q?Atividade=205=20-=20Equipe=206=20(fcb=20e?= =?UTF-8?q?=20gjcc)=20-=20Feature=20Article:=20implementa=C3=A7=C3=A3o=20d?= =?UTF-8?q?a=20funcionalidade=20"filter".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rgms/publication/PeriodicoController.groovy | 13 +++++++++++++ grails-app/i18n/messages_pt_BR.properties | 1 + grails-app/views/periodico/list.gsp | 15 +++++++++++++-- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/grails-app/controllers/rgms/publication/PeriodicoController.groovy b/grails-app/controllers/rgms/publication/PeriodicoController.groovy index 239c6568..7f6d805e 100644 --- a/grails-app/controllers/rgms/publication/PeriodicoController.groovy +++ b/grails-app/controllers/rgms/publication/PeriodicoController.groovy @@ -191,5 +191,18 @@ class PeriodicoController { render(journalsFound as JSON) } //#end + + //#if($FilterArticlesByAuthor) + def filterByAuthor() { + params.max = Math.min(params.max ? params.int('max') : 10, 100) + def articles = Periodico.list(params) + def authorName = params.authorName + if(authorName!="") + articles = articles.findAll{it.authors.contains(authorName)} + render(view: "list", model: [periodicoInstanceList: articles, periodicoInstanceTotal: articles.size()]) + [periodicoInstanceList: articles, periodicoInstanceTotal: articles.size()] + } + //#end + } //#end diff --git a/grails-app/i18n/messages_pt_BR.properties b/grails-app/i18n/messages_pt_BR.properties index 6d3cc59d..f5015cbf 100644 --- a/grails-app/i18n/messages_pt_BR.properties +++ b/grails-app/i18n/messages_pt_BR.properties @@ -44,6 +44,7 @@ default.button.update.label=Alterar default.button.delete.label=Remover default.button.list.label=Listagem default.button.delete.confirm.message=Tem certeza? +default.button.search.label=Buscar typeMismatch.java.net.URL=O campo {0} deve ser uma URL válida. diff --git a/grails-app/views/periodico/list.gsp b/grails-app/views/periodico/list.gsp index c0f3585b..3a57beb6 100644 --- a/grails-app/views/periodico/list.gsp +++ b/grails-app/views/periodico/list.gsp @@ -13,16 +13,27 @@ default="Skip to content…"/> -
+
    - +
+ +
+
    + + + + + +
+
+

From aca122cc10bfa4da46f99e4a918a6a6ba49a2ad0 Mon Sep 17 00:00:00 2001 From: Guilherme Cavalcanti Date: Thu, 10 Jul 2014 15:30:42 -0300 Subject: [PATCH 2/3] =?UTF-8?q?Atividade=205=20-=20Equipe=206=20(fcb=20e?= =?UTF-8?q?=20gjcc)=20-=20Feature=20Article:=20implementa=C3=A7=C3=A3o=20d?= =?UTF-8?q?a=20funcionalidade=20"remove=20multiples".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../publication/PeriodicoController.groovy | 29 ++++++++++++++++++- .../rgms/publication/Publication.groovy | 4 ++- grails-app/i18n/messages_pt_BR.properties | 1 + grails-app/views/periodico/list.gsp | 23 +++++++++++++-- 4 files changed, 52 insertions(+), 5 deletions(-) diff --git a/grails-app/controllers/rgms/publication/PeriodicoController.groovy b/grails-app/controllers/rgms/publication/PeriodicoController.groovy index 7f6d805e..48976f45 100644 --- a/grails-app/controllers/rgms/publication/PeriodicoController.groovy +++ b/grails-app/controllers/rgms/publication/PeriodicoController.groovy @@ -203,6 +203,33 @@ class PeriodicoController { [periodicoInstanceList: articles, periodicoInstanceTotal: articles.size()] } //#end - + + //#if($RemoveMultiplesArticles) + def deleteMultiples() { + println params + def instancesId = params?.check + if (instancesId) { + if (instancesId.toString().indexOf("]") > 0 ) { + //mais de um checkbox foi selecionado + for (String instanceid: instancesId) { + Periodico periodicoInstance = Periodico.get(Long.parseLong(instanceid)) + periodicoInstance.removeFromPublications() + periodicoInstance.discardMembers() + periodicoInstance.discard() + periodicoInstance?.delete(flush: true) + } + } else { + //somente um checkbox foi selecionado + def periodicoInstance = Periodico.get(Long.parseLong(instancesId)) + periodicoInstance.removeFromPublications() + periodicoInstance?.delete(flush: true) + } + redirect(action: "list") + }else { + flash.message = "Nenhum item foi selecionado." + redirect(action: "list") + } + } + //#end } //#end diff --git a/grails-app/domain/rgms/publication/Publication.groovy b/grails-app/domain/rgms/publication/Publication.groovy index fd5ba019..efef9136 100644 --- a/grails-app/domain/rgms/publication/Publication.groovy +++ b/grails-app/domain/rgms/publication/Publication.groovy @@ -19,7 +19,9 @@ abstract class Publication { researchLine nullable: true, blank: true authors nullable: true, blank: true } - + + static mapping = { members lazy:false } + //#if($Bibtex) abstract String generateBib() //#end diff --git a/grails-app/i18n/messages_pt_BR.properties b/grails-app/i18n/messages_pt_BR.properties index f5015cbf..e0bd96e3 100644 --- a/grails-app/i18n/messages_pt_BR.properties +++ b/grails-app/i18n/messages_pt_BR.properties @@ -42,6 +42,7 @@ default.button.create.label=Criar default.button.edit.label=Editar default.button.update.label=Alterar default.button.delete.label=Remover +default.button.delete.multiples.label=Remover Selecionados default.button.list.label=Listagem default.button.delete.confirm.message=Tem certeza? default.button.search.label=Buscar diff --git a/grails-app/views/periodico/list.gsp b/grails-app/views/periodico/list.gsp index 3a57beb6..c2a1f789 100644 --- a/grails-app/views/periodico/list.gsp +++ b/grails-app/views/periodico/list.gsp @@ -1,4 +1,3 @@ - <%@ page import="rgms.publication.Periodico" %> @@ -35,6 +34,7 @@
+

${flash.message}
@@ -42,7 +42,10 @@ - + + + + + + + + @@ -85,7 +92,17 @@ + + +
+ + +
+
+ + - From 52c51b169ea74c75f98b141a22ef0f586f21112d Mon Sep 17 00:00:00 2001 From: Guilherme Date: Mon, 28 Jul 2014 11:35:02 -0300 Subject: [PATCH 3/3] =?UTF-8?q?resolu=C3=A7=C3=A3o=20de=20conflitos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ProductGeneration/ck.xml | 21 +++++++++++ ProductGeneration/featureModel.xml | 7 +++- .../publication/PeriodicoController.groovy | 37 ++++++++++--------- grails-app/i18n/messages.properties | 2 + grails-app/i18n/messages_pt_BR.properties | 1 + grails-app/views/periodico/list.gsp | 2 +- 6 files changed, 51 insertions(+), 19 deletions(-) diff --git a/ProductGeneration/ck.xml b/ProductGeneration/ck.xml index be484695..47ae85c6 100644 --- a/ProductGeneration/ck.xml +++ b/ProductGeneration/ck.xml @@ -104,6 +104,20 @@ visit + + removeMultiplesArticles + + createBuildEntries + removeMultiplesArticles + + + + filterArticlesByAuthor + + createBuildEntries + filterArticlesByAuthor + + rgms @@ -369,6 +383,13 @@ listPeriodico,grails-app/views/periodico/list.gsp + + Article + + preprocessFiles + grails-app/views/periodico/list.gsp + + Article diff --git a/ProductGeneration/featureModel.xml b/ProductGeneration/featureModel.xml index 95ffe747..6f95578f 100644 --- a/ProductGeneration/featureModel.xml +++ b/ProductGeneration/featureModel.xml @@ -16,7 +16,12 @@ - + + + + + + diff --git a/grails-app/controllers/rgms/publication/PeriodicoController.groovy b/grails-app/controllers/rgms/publication/PeriodicoController.groovy index 48976f45..ea87c811 100644 --- a/grails-app/controllers/rgms/publication/PeriodicoController.groovy +++ b/grails-app/controllers/rgms/publication/PeriodicoController.groovy @@ -200,35 +200,38 @@ class PeriodicoController { if(authorName!="") articles = articles.findAll{it.authors.contains(authorName)} render(view: "list", model: [periodicoInstanceList: articles, periodicoInstanceTotal: articles.size()]) - [periodicoInstanceList: articles, periodicoInstanceTotal: articles.size()] } //#end //#if($RemoveMultiplesArticles) def deleteMultiples() { - println params def instancesId = params?.check if (instancesId) { if (instancesId.toString().indexOf("]") > 0 ) { - //mais de um checkbox foi selecionado - for (String instanceid: instancesId) { - Periodico periodicoInstance = Periodico.get(Long.parseLong(instanceid)) - periodicoInstance.removeFromPublications() - periodicoInstance.discardMembers() - periodicoInstance.discard() - periodicoInstance?.delete(flush: true) - } + deletingFromMultipleSelectedCheckboxes(instancesId) } else { - //somente um checkbox foi selecionado - def periodicoInstance = Periodico.get(Long.parseLong(instancesId)) - periodicoInstance.removeFromPublications() - periodicoInstance?.delete(flush: true) + deletingFromUniqueSelectedCheckbox(instancesId) } - redirect(action: "list") }else { - flash.message = "Nenhum item foi selecionado." - redirect(action: "list") + flash.message = message(code: 'default.not.selected.message') } + redirect(action: "list") + } + + private def deletingFromMultipleSelectedCheckboxes(instancesId){ + for (String instanceid: instancesId) { + Periodico periodicoInstance = Periodico.get(Long.parseLong(instanceid)) + periodicoInstance.removeFromPublications() + periodicoInstance.discardMembers() + periodicoInstance.discard() + periodicoInstance?.delete(flush: true) + } + } + + private def deletingFromUniqueSelectedCheckbox(instancesId){ + def periodicoInstance = Periodico.get(Long.parseLong(instancesId)) + periodicoInstance.removeFromPublications() + periodicoInstance?.delete(flush: true) } //#end } diff --git a/grails-app/i18n/messages.properties b/grails-app/i18n/messages.properties index 05c696f1..651720d9 100644 --- a/grails-app/i18n/messages.properties +++ b/grails-app/i18n/messages.properties @@ -28,6 +28,7 @@ default.deleted.message={0} {1} deleted default.not.deleted.message={0} {1} could not be deleted default.not.found.message={0} not found with id {1} default.optimistic.locking.failure=Another user has updated this {0} while you were editing +default.not.selected.message=No item selected default.home.label=Home default.list.label={0} List @@ -43,6 +44,7 @@ default.button.update.label=Update default.button.delete.label=Delete default.button.list.label = List default.button.delete.confirm.message=Are you sure? +default.button.search.label=Search typeMismatch.java.net.URL=Property {0} must be a valid URL diff --git a/grails-app/i18n/messages_pt_BR.properties b/grails-app/i18n/messages_pt_BR.properties index e0bd96e3..7ce16249 100644 --- a/grails-app/i18n/messages_pt_BR.properties +++ b/grails-app/i18n/messages_pt_BR.properties @@ -29,6 +29,7 @@ default.deleted.message={0} {1} removido default.not.deleted.message={0} {1} não pode ser removido default.not.found.message={0} não foi encontrado com id {1} default.optimistic.locking.failure=Outro usuário atualizou este [{0}] enquanto você tentou salvá-lo +default.not.selected.message=Nenhum item foi selecionado default.home.label=Principal default.list.label={0} Listagem diff --git a/grails-app/views/periodico/list.gsp b/grails-app/views/periodico/list.gsp index c2a1f789..898af956 100644 --- a/grails-app/views/periodico/list.gsp +++ b/grails-app/views/periodico/list.gsp @@ -12,7 +12,7 @@ default="Skip to content…"/> -
+
${fieldValue(bean: periodicoInstance, field: "title")}