use of mom.trd.opentheso.bdd.helper.TermHelper in project opentheso by miledrousset.
the class NewTreeBean method editNomT.
/**
* Change le nom du terme courant avec mise à jour dans l'arbre Choix du
* type de d'objet sélectionné (Group, sousGroup, Concept)
*/
public void editNomT() {
duplicate = false;
if (selectedTerme == null) {
return;
}
// si c'est la même valeur, on fait rien
if (selectedTerme.getNom().trim().equals(selectedTerme.getNomEdit())) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("tree.error2")));
selectedTerme.setNomEdit(selectedTerme.getNom());
return;
}
// saisie d'une valeur vide
if (selectedTerme.getNomEdit().trim().equals("")) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("tree.error1")));
selectedTerme.setNomEdit(selectedTerme.getNom());
return;
}
// si le terme existe, il faut proposer le choix de valider ou non !!
if (!forced) {
// ici l'utilisateur a accepté de valider un doublon, donc on ne controle plus le terme
if (new TermHelper().isTermExistForEdit(connect.getPoolConnexion(), selectedTerme.getNomEdit().trim(), idThesoSelected, selectedTerme.getIdT(), selectedTerme.getIdlangue())) {
// traitement des doublons
duplicate = true;
editPassed = true;
return;
}
}
if (selectedTerme.getIdT() != null && !selectedTerme.getIdT().equals("")) {
selectedTerme.editTerme(1);
} else {
// le terme n'existe pas encore
if (!selectedTerme.editTerme(2)) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("error")));
selectedTerme.setNomEdit(selectedTerme.getNom());
return;
}
}
if (selectedNode != null) {
// ((MyTreeNode) selectedNode).setData(temp + " (Id_" + selectedTerme.getIdC() + ")");
((MyTreeNode) selectedNode).setData(selectedTerme.getNom());
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(langueBean.getMsg("info") + " :", selectedTerme.getNom() + " " + langueBean.getMsg("tree.info2")));
selectedTerme.setNomEdit(selectedTerme.getNom());
}
selectedTerme.setSelectedTermComp(new NodeAutoCompletion());
forced = false;
duplicate = false;
editPassed = true;
}
use of mom.trd.opentheso.bdd.helper.TermHelper in project opentheso by miledrousset.
the class SelectedThesaurus method creerCandidat.
/**
* Création d'un nouveau candidat avec vérification de la valeur en entrée
*/
public List<NodeCandidatValue> creerCandidat() {
if (candidat.getValueEdit() == null || candidat.getValueEdit().trim().equals("")) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("theso.error2")));
} else if (new CandidateHelper().isCandidatExist(connect.getPoolConnexion(), candidat.getValueEdit(), thesaurus.getId_thesaurus(), thesaurus.getLanguage())) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("theso.error3")));
vue.setAddCandidat(false);
String idCandidat = new CandidateHelper().getIdCandidatFromTitle(connect.getPoolConnexion(), new StringPlus().addQuotes(candidat.getValueEdit().trim()), thesaurus.getId_thesaurus());
if (idCandidat == null) {
cleanEditCandidat();
return null;
} else {
candidat.getSelected().setIdConcept(idCandidat);
vue.setAddPropCandidat(true);
// creerPropCdt();
return null;
}
} else if (new TermHelper().isTermExist(connect.getPoolConnexion(), candidat.getValueEdit(), thesaurus.getId_thesaurus(), thesaurus.getLanguage())) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("theso.error4")));
} else {
String temp = candidat.getValueEdit();
if (!candidat.newCandidat(thesaurus.getId_thesaurus(), thesaurus.getLanguage())) {
return null;
}
vue.setAddCandidat(false);
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(langueBean.getMsg("info") + " :", langueBean.getMsg("theso.info2.1") + " " + temp + " " + langueBean.getMsg("theso.info2.2")));
}
cleanEditCandidat();
List<NodeCandidatValue> candidats = new ArrayList<>();
if (thesaurus.getId_thesaurus() != null && thesaurus.getLanguage() != null && connect.getPoolConnexion() != null) {
candidats = new CandidateHelper().getListCandidatsWaiting(connect.getPoolConnexion(), thesaurus.getId_thesaurus(), thesaurus.getLanguage());
}
return candidats;
}
use of mom.trd.opentheso.bdd.helper.TermHelper in project opentheso by miledrousset.
the class SelectedThesaurus method getArrayFacette.
public ArrayList<Entry<String, String>> getArrayFacette() {
if (connect.getPoolConnexion() != null) {
if (thesaurus == null) {
return arrayFacette;
}
ArrayList<NodeFacet> temp = new FacetHelper().getAllFacetsOfThesaurus(connect.getPoolConnexion(), thesaurus.getId_thesaurus(), thesaurus.getLanguage());
Map<String, String> mapTemp = new HashMap<>();
Term value;
for (NodeFacet nf : temp) {
value = new TermHelper().getThisTerm(connect.getPoolConnexion(), nf.getIdConceptParent(), thesaurus.getId_thesaurus(), thesaurus.getLanguage());
if (value == null) {
mapTemp.put(String.valueOf(nf.getIdFacet()), nf.getLexicalValue() + " (" + nf.getIdConceptParent() + ")");
} else {
mapTemp.put(String.valueOf(nf.getIdFacet()), nf.getLexicalValue() + " (" + value.getLexical_value() + ")");
}
}
arrayFacette = new ArrayList<>(mapTemp.entrySet());
}
return arrayFacette;
}
use of mom.trd.opentheso.bdd.helper.TermHelper in project opentheso by miledrousset.
the class SelectedCandidat method toInsert.
/**
* Passe un candidat de son état courant à l'état inséré. Les modifications
* nécessaires en bases de données sont traitées ici.
*
* @return
*/
public boolean toInsert() {
setPreferences();
if (selectedNvx == null) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("sCdt.error4")));
return false;
}
niveauEdit = selectedNvx.getIdConcept();
/*else {
niveauEdit = null;
}*/
/* if (domaineEdit == null || domaineEdit.trim().equals("")) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("sCdt.error1")));
return false;
}*/
GroupHelper groupHelper = new GroupHelper();
ArrayList<String> idGroups = groupHelper.getListIdGroupOfConcept(connect.getPoolConnexion(), idTheso, niveauEdit);
if (tradInsert.isEmpty()) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("sCdt.error2")));
return false;
}
if (new TermHelper().isTermExist(connect.getPoolConnexion(), selected.getValue().trim(), idTheso, langueTheso)) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", langueBean.getMsg("tree.error2")));
return false;
}
if (idGroups.isEmpty()) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, langueBean.getMsg("error") + " :", "No Group Error !!"));
return false;
}
HashMap<String, String> trad = new HashMap<>();
if (tradInsert.contains(langueTheso)) {
trad.put(langueTheso, selected.getValue());
tradInsert.remove(langueTheso);
}
for (String l : tradInsert) {
for (NodeTraductionCandidat ntc : infoCdt.getNodeTraductions()) {
if (l.equals(ntc.getIdLang())) {
trad.put(l, ntc.getTitle());
}
}
}
ArrayList<Entry<String, String>> temp = new ArrayList<>(trad.entrySet());
ConceptHelper instance = new ConceptHelper();
instance.setNodePreference(user.getNodePreference());
Concept concept = new Concept();
concept.setIdGroup(idGroups.get(0));
concept.setIdThesaurus(idTheso);
concept.setStatus("D");
concept.setNotation("");
String langueTemp = temp.get(0).getKey();
Term terme = new Term();
terme.setId_thesaurus(idTheso);
terme.setLang(temp.get(0).getKey());
terme.setLexical_value(temp.get(0).getValue());
temp.remove(0);
String idc;
// if (niveauEdit == null || niveauEdit.trim().equals("")) { // Top concept
// idc = instance.addTopConcept(connect.getPoolConnexion(), idTheso, concept, terme, serverAdress, arkActive, theUser.getUser().getId());
// } else { // concept
idc = instance.addConcept(connect.getPoolConnexion(), niveauEdit, concept, terme, theUser.getUser().getId());
// permet d'ajouter les domaines au nouveau concept
for (String idGroup : idGroups) {
groupHelper.addConceptGroupConcept(connect.getPoolConnexion(), idGroup, niveauEdit, idTheso);
}
if (!temp.isEmpty()) {
String idt = new TermHelper().getThisTerm(connect.getPoolConnexion(), idc, idTheso, langueTemp).getId_term();
for (Entry<String, String> e : temp) {
terme = new Term();
terme.setId_concept(idc);
terme.setId_term(idt);
terme.setId_thesaurus(idTheso);
terme.setLang(e.getKey());
terme.setLexical_value(e.getValue());
new TermHelper().addTraduction(connect.getPoolConnexion(), terme, theUser.getUser().getId());
}
}
CandidateHelper ch = new CandidateHelper();
ch.updateCandidatStatus(connect.getPoolConnexion(), "i", idTheso, selected.getIdConcept());
ch.addAdminMessage(connect.getPoolConnexion(), selected.getIdConcept(), idTheso, theUser.getUser().getId(), msgValid);
// message d'alerte
/* ArrayList<NodeUser> contribs = ch.getListUsersOfCandidat(connect.getPoolConnexion(),
selected.getIdConcept(), idTheso);*/
/* for (NodeUser nodeUser : contribs) {
if (!lesMails.contains(contrib)) {
lesMails.add(contrib);
}
}*/
/*
for (NodeUser nodeUser : contribs) {
if (nodeUser.getMail() != null && !nodeUser.getMail().trim().equals("")) {
String message = "Votre candidat " + selected.getValue() + " a été intégré au thésaurus par le(a) terminologue : " + theUser.getUser().getName() + ".";
envoyerMailAlert(nodeUser.getMail(), message);
}
} */
msgValid = "";
selected.setEtat("i");
vue.setAddInsertCdt(false);
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(langueBean.getMsg("info") + " :", langueBean.getMsg("sCdt.info6")));
return true;
}
use of mom.trd.opentheso.bdd.helper.TermHelper in project opentheso by miledrousset.
the class SelectedTerme method majTerme.
/**
* *************************************** MISE A JOUR
* ****************************************
*/
/**
* Met à jour le terme à la sélection d'un node de l'arbre (traitement
* différent si Domaine/TopConcept/Concept)
*
* @param sN
*/
public void majTerme(MyTreeNode sN) {
// contrôler si la connexion est toujour valide
// connect.
selectedNode = sN;
reInitTerme();
majPref();
idC = sN.getIdConcept();
idTheso = sN.getIdTheso();
idlangue = sN.getLangue();
idDomaine = sN.getIdCurrentGroup();
idTopConcept = sN.getIdTopConcept();
type = sN.getTypeConcept();
status = "";
notation = "";
latitudLongitud = null;
totalConceptOfBranch = "";
totalNoticesOfBranch = "";
majTAsso();
GroupHelper groupHelper = new GroupHelper();
ConceptHelper conceptHelper = new ConceptHelper();
if (groupHelper.isIdOfGroup(connect.getPoolConnexion(), idC, idTheso)) {
microTheso = new GroupHelper().getLexicalValueOfGroup(connect.getPoolConnexion(), idDomaine, idTheso, idlangue);
NodeGroup ncg = new GroupHelper().getThisConceptGroup(connect.getPoolConnexion(), idC, idTheso, idlangue);
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
nom = ncg.getLexicalValue();
idArk = ncg.getConceptGroup().getIdARk();
nomEdit = nom;
idT = "";
if (ncg.getCreated() != null && ncg.getModified() != null) {
dateC = dateFormat.format(ncg.getCreated());
dateM = dateFormat.format(ncg.getModified());
}
majGroupTGen();
majLangueGroup();
majTSpeGroup();
majNotes();
} else {
Concept concept = conceptHelper.getThisConcept(connect.getPoolConnexion(), idC, idTheso);
if (concept == null) {
return;
}
status = concept.getStatus();
notation = concept.getNotation();
if (!idDomaine.equals("Orphan")) {
majGroup();
majTGen();
} else {
microTheso = idDomaine;
}
Term t = new TermHelper().getThisTerm(connect.getPoolConnexion(), idC, idTheso, idlangue);
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
nom = t.getLexical_value();
nomEdit = nom;
idT = t.getId_term();
dateC = dateFormat.format(t.getCreated());
dateM = dateFormat.format(t.getModified());
creator = t.getCreator();
contributor = t.getContributor();
images = new ImagesHelper().getImage(connect.getPoolConnexion(), idC, idTheso, user.getUser().getId());
majNotes();
majLangueConcept();
majSyno();
updateGps();
majTSpeConcept();
align = new AlignmentHelper().getAllAlignmentOfConcept(connect.getPoolConnexion(), idC, idTheso);
// ResourceBundle bundlePref = getBundlePref();
if (user.getNodePreference().isZ3950actif()) {
majNoticeZ3950();
}
if (user.getNodePreference().isBddActive()) {
majNoticeBdd();
}
idArk = conceptHelper.getIdArkOfConcept(connect.getPoolConnexion(), idC, idTheso);
idHandle = conceptHelper.getIdHandleOfConcept(connect.getPoolConnexion(), idC, idTheso);
reInitFacette();
initTree();
}
}
Aggregations