branch develop updated (8ff27cb -> 624bb54)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository echobase. See http://git.codelutin.com/echobase.git from 8ff27cb fixes #6056: Impossible d'exporter une table depuis le menu "modifier données" d'Echobase new 624bb54 fixes #4874: Comment supprimer une ligne dans une table dans "modifier les données"? The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 624bb54ae0ea87cec78c2d60c681b86fa7126c14 Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Dec 8 15:26:05 2014 +0100 fixes #4874: Comment supprimer une ligne dans une table dans "modifier les données"? Summary of changes: .../echobase/services/service/DbEditorService.java | 15 ++++++ .../echobase/ui/actions/dbeditor/DeleteEntity.java | 63 ++++++++++++++++++++++ .../src/main/resources/config/struts-dbeditor.xml | 6 +++ .../resources/i18n/echobase-ui_en_GB.properties | 2 + .../resources/i18n/echobase-ui_fr_FR.properties | 4 ++ .../main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp | 4 ++ 6 files changed, 94 insertions(+) create mode 100644 echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/DeleteEntity.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 624bb54ae0ea87cec78c2d60c681b86fa7126c14 Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Dec 8 15:26:05 2014 +0100 fixes #4874: Comment supprimer une ligne dans une table dans "modifier les données"? --- .../echobase/services/service/DbEditorService.java | 15 ++++++ .../echobase/ui/actions/dbeditor/DeleteEntity.java | 63 ++++++++++++++++++++++ .../src/main/resources/config/struts-dbeditor.xml | 6 +++ .../resources/i18n/echobase-ui_en_GB.properties | 2 + .../resources/i18n/echobase-ui_fr_FR.properties | 4 ++ .../main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp | 4 ++ 6 files changed, 94 insertions(+) diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/DbEditorService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/DbEditorService.java index 4d40bee..56bd3c3 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/DbEditorService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/DbEditorService.java @@ -203,6 +203,21 @@ public class DbEditorService extends EchoBaseServiceSupport { } } + public <E extends TopiaEntity> void deleteEntity(EchoBaseUserEntityEnum entityEnum, String topiaId, EchoBaseUser user) { + + TopiaDao<E> dao = (TopiaDao<E>) persistenceContext.getDao(entityEnum.getContract()); + + E entity = dao.findByTopiaId(topiaId); + if (entity == null) { + throw new EchoBaseTechnicalException("Could not find entity of type " + entityEnum + " with id: " + topiaId); + } + + dao.delete(entity); + + persistenceContext.commit(); + + } + public void saveEntity(TableMeta<EchoBaseUserEntityEnum> meta, Map<String, String> properties, EchoBaseUser user) { diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/DeleteEntity.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/DeleteEntity.java new file mode 100644 index 0000000..2d80957 --- /dev/null +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/DeleteEntity.java @@ -0,0 +1,63 @@ +package fr.ifremer.echobase.ui.actions.dbeditor; + +import fr.ifremer.echobase.EchoBaseTechnicalException; +import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; +import fr.ifremer.echobase.services.service.DbEditorService; +import fr.ifremer.echobase.services.service.spatial.SpatialService; +import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport; + +import javax.inject.Inject; + +/** + * Created on 12/8/14. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.6.1 + */ +public class DeleteEntity extends EchoBaseActionSupport { + + private static final long serialVersionUID = 1L; + + /** Type of entity to delete. */ + protected EchoBaseUserEntityEnum entityType; + + public void setEntityType(EchoBaseUserEntityEnum entityType) { + this.entityType = entityType; + } + + public EchoBaseUserEntityEnum getEntityType() { + return entityType; + } + + /** id of entity to delete. */ + protected String topiaId; + + public void setTopiaId(String topiaId) { + this.topiaId = topiaId; + } + + @Override + public String execute() throws Exception { + + try { + dbEditorService.deleteEntity(entityType, topiaId, getEchoBaseSession().getUser()); + addFlashMessage(t("echobase.info.delete.entity", entityType)); + } catch (EchoBaseTechnicalException e) { + throw e; + } catch (Exception e) { + addFlashError(t("echobase.error.delete.entity", entityType, topiaId)); + } + + return SUCCESS; + } + + //------------------------------------------------------------------------// + //-- Injected objects // + //------------------------------------------------------------------------// + + @Inject + protected transient DbEditorService dbEditorService; + + @Inject + protected transient SpatialService spatialService; +} diff --git a/echobase-ui/src/main/resources/config/struts-dbeditor.xml b/echobase-ui/src/main/resources/config/struts-dbeditor.xml index dbe59e9..c571650 100644 --- a/echobase-ui/src/main/resources/config/struts-dbeditor.xml +++ b/echobase-ui/src/main/resources/config/struts-dbeditor.xml @@ -69,6 +69,12 @@ <result name="success" type="redirectToDbEditor"/> </action> + <!-- Delete the modified entity (no result as a grid json edit action)--> + <action name="deleteTableData" + class="fr.ifremer.echobase.ui.actions.dbeditor.DeleteEntity"> + <result name="success" type="redirectToDbEditor"/> + </action> + <!-- Import some entities from a csv file --> <action name="doImport" class="fr.ifremer.echobase.ui.actions.dbeditor.ImportTable"> diff --git a/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties b/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties index c8f613e..955a24f 100644 --- a/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties +++ b/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties @@ -14,6 +14,7 @@ echobase.action.createWorkingDbConfiguration=Save echobase.action.delete=Delete echobase.action.delete.selectedImport=Delete selected imports echobase.action.deleteConfiguration=Delete +echobase.action.deleteEntity=Delete echobase.action.downloadEmbeddedApplicationFile=Download the portable database echobase.action.downloadExportCoserFile=Download Coser export file echobase.action.downloadExportDbFile=Download database export file @@ -67,6 +68,7 @@ echobase.common.cellRegionResultFile= echobase.common.cellRegionsFile= echobase.common.comment=Comment echobase.common.communityIndicator=Community indicators +echobase.common.confirmDelete=Confirm to delete selected data echobase.common.dataCentre=Data center echobase.common.dataCentreEmail=Data center email echobase.common.dataProcessing=DataProcessing diff --git a/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties b/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties index 505571e..a757f8c 100644 --- a/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties +++ b/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties @@ -14,6 +14,7 @@ echobase.action.createWorkingDbConfiguration=Enregistrer echobase.action.delete=Suppression echobase.action.delete.selectedImport=Supprimer les imports sélectionnés echobase.action.deleteConfiguration=Supprimer +echobase.action.deleteEntity=Supprimer echobase.action.downloadEmbeddedApplicationFile=Télécharger l'application embarquée echobase.action.downloadExportCoserFile=Télécharger le fichier d'export Coser echobase.action.downloadExportDbFile=Télécharger le fichier d'export de la base complète @@ -67,6 +68,7 @@ echobase.common.cellRegionResultFile= echobase.common.cellRegionsFile= echobase.common.comment=Commentaire echobase.common.communityIndicator=indicateurs de communauté +echobase.common.confirmDelete=Confirmer la suppression de la donnée echobase.common.dataCentre=Centre de données echobase.common.dataCentreEmail=Courriel du centre de données echobase.common.dataProcessing=DataProcessing @@ -172,6 +174,7 @@ echobase.common.zone=Zone (Coser) echobase.confirm.delete.query=Confirmer la suppression de la requête echobase.confirm.delete.selected.importData=Confirmer la suppression des imports sélectionnés echobase.confirm.delete.workingDbConfiguration=Confirmer la suppression de la configuration suivante +echobase.error.delete.entity=Impossible de supprimer la donnée de type '%s' et d'identifiant '%s' (elle est probablement utilisée ailleurs). echobase.error.email.already.used=Nom d'utilisateur déjà utilisé echobase.error.export.description.requiredstring=La description de l'export est obligatoire echobase.error.export.name.requiredstring=Le nom de l'export est obligatoire @@ -259,6 +262,7 @@ echobase.info.click.to.select=Vous pouvez sélectionner la valeur en un simple c echobase.info.createEmbedded.failed=Création de l'application embarqué réussi echobase.info.createEmbedded.succeded=Création de l'application embarqué a échoué echobase.info.dbeditor.propertyDiffsResult=Résultat d'import de données +echobase.info.delete.entity=La donnée de type '%s' a été supprimée echobase.info.documentation=Documentation en ligne d'EchoBase echobase.info.downloadFiles=Télécharger l'application ou des fichiers d'imports echobase.info.echoR=Projet EchoR diff --git a/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp b/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp index 409277b..0366ac1 100644 --- a/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp +++ b/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp @@ -378,6 +378,10 @@ <li><s:submit name="submitAction" key="echobase.action.save" action="editTableData" theme="simple"/> </li> + <li> + <s:submit name="deleteAction" key="echobase.action.deleteEntity" action="deleteTableData" theme="simple" + onclick="return confirm(\"%{getText('echobase.common.confirmDelete')}\");"/> + </li> </ul> </div> </s:if> -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm