67,7 → 67,7 |
JSONValue propositions = observationJson.get("commentaires"); |
|
if(propositions != null && propositions.isObject() != null) { |
List<InterventionForum> interventions = hierarchiserInterventions(parserInterventions(propositions.isObject(), observation)); |
List<InterventionForum> interventions = parserInterventions(propositions.isObject(), observation); |
observation.setInterventionsForum(interventions); |
} else { |
observation.ajouterPropositionDetermination(creerPropositionDeterminationAPartirObservation(observation)); |
75,36 → 75,73 |
return observation; |
} |
|
public static List<InterventionForum> hierarchiserInterventions(HashMap<String, InterventionForum> interventions) { |
//TODO : gérer l'arborescence |
List<InterventionForum> interventionsHierarchisees = new ArrayList<InterventionForum>(); |
interventionsHierarchisees.addAll(interventions.values()); |
return interventionsHierarchisees; |
//Iterator<String> it = interventions. |
//return interventionsHierarchisees; |
} |
|
public static String getValeurOuVide(JSONObject objet, String index) { |
return (objet.get(index).isString() != null) ? objet.get(index).isString().stringValue() : ""; |
} |
|
public static PropositionDetermination creerPropositionDeterminationAPartirObservation(Observation observation) { |
public static List<InterventionForum> parserInterventions(JSONObject interventions, Observation observation) { |
List<InterventionForum> interventionsNonTypees = new ArrayList<InterventionForum>(); |
|
String utilisateurNom = observation.getNomAuteur(); |
String utilisateurPrenom = observation.getPrenomAuteur(); |
String utilisateurCourriel = observation.getCourrielAuteur(); |
String utilisateurId = observation.getIdAuteur(); |
PropositionDetermination propositionDetermination = new PropositionDetermination(observation); |
Contributeur contributeur = new Contributeur(utilisateurId, utilisateurNom, utilisateurPrenom, utilisateurCourriel); |
propositionDetermination.setContributeur(contributeur); |
java.util.Date datePropDeter = parserDateObservation(observation.getDateReleve()); |
propositionDetermination.setDate(datePropDeter); |
propositionDetermination.setEspece(observation.getNomRetenu()); |
//parcourir les interventions et en faire un tableau |
Iterator<String> itInterventions = interventions.keySet().iterator(); |
while (itInterventions.hasNext()) { |
JSONObject jsonIntervention = interventions.get(itInterventions.next()).isObject(); |
String nomSel = getValeurOuVide(jsonIntervention, "nom_sel"); |
|
String id = getValeurOuVide(jsonIntervention, "id_commentaire"); |
String idParent = getValeurOuVide(jsonIntervention, "ce_commentaire_parent"); |
String texte = getValeurOuVide(jsonIntervention, "texte"); |
|
String idUtilisateur = getValeurOuVide(jsonIntervention, "ce_utilisateur"); |
String nom = getValeurOuVide(jsonIntervention, "utilisateur_nom"); |
String prenom = getValeurOuVide(jsonIntervention, "utilisateur_prenom"); |
String courriel = getValeurOuVide(jsonIntervention, "utilisateur_courriel"); |
Contributeur contributeur = new Contributeur(idUtilisateur, nom, prenom, courriel); |
|
//TODO : parser date |
Date date = new Date(); |
|
if (!nomSel.equals("")) { |
String nom_sel = getValeurOuVide(jsonIntervention, "nom_sel"); |
String nom_sel_nn = getValeurOuVide(jsonIntervention, "nom_sel_nn"); |
String nom_ret = getValeurOuVide(jsonIntervention, "nom_ret"); |
String nom_ret_nn = getValeurOuVide(jsonIntervention, "nom_ret_nn"); |
String famille = getValeurOuVide(jsonIntervention, "famille"); |
String nom_referentiel = getValeurOuVide(jsonIntervention, "nom_referentiel"); |
|
PropositionDetermination intervention = new PropositionDetermination(id, contributeur, texte); |
intervention.setObservation(observation); |
intervention.setEspece(nom_sel); |
if (!idParent.equals("")) { |
intervention.setIdParent(idParent); |
} |
|
if(jsonIntervention.get("votes") != null && jsonIntervention.get("votes").isObject() != null) { |
intervention.setVotesDeterminations(parserVotesDetermination(jsonIntervention.get("votes").isObject(), intervention)); |
} |
|
intervention.setDate(date); |
interventionsNonTypees.add(intervention); |
|
|
} else { |
Commentaire intervention = new Commentaire(contributeur, date, texte); |
intervention.setDate(date); |
interventionsNonTypees.add(intervention); |
|
} |
} |
|
Iterator<InterventionForum> itIntervention = interventionsNonTypees.iterator(); |
/*while (itIntervention ) { |
|
}*/ |
|
return propositionDetermination; |
|
return interventionsNonTypees; |
} |
|
public static HashMap<String, InterventionForum> parserInterventions(JSONObject interventions, Observation observation) { |
|
/** |
* Analyser les interventions associées à une proposition pour en faire un objet commentaire ou proposition |
* */ |
public static HashMap<String, InterventionForum> parserInterventions2(JSONObject interventions, Observation observation) { |
HashMap<String, InterventionForum> listeInterventions = new HashMap<String, InterventionForum>(); |
|
boolean propositionDeterminationCreee = false; |
164,6 → 201,43 |
return id; |
} |
|
public static List<InterventionForum> hierarchiserInterventions(HashMap<String, InterventionForum> interventions) { |
|
List<InterventionForum> interventionsHierarchisees = new ArrayList<InterventionForum>(); |
interventionsHierarchisees.addAll(interventions.values()); |
|
Iterator<InterventionForum> it = interventions.values().iterator(); |
while (it.hasNext()) { |
InterventionForum intervention = it.next(); |
String id = intervention.getId(); |
} |
|
return interventionsHierarchisees; |
|
} |
|
public static String getValeurOuVide(JSONObject objet, String index) { |
return (objet.get(index).isString() != null) ? objet.get(index).isString().stringValue() : ""; |
} |
|
public static PropositionDetermination creerPropositionDeterminationAPartirObservation(Observation observation) { |
|
String utilisateurNom = observation.getNomAuteur(); |
String utilisateurPrenom = observation.getPrenomAuteur(); |
String utilisateurCourriel = observation.getCourrielAuteur(); |
String utilisateurId = observation.getIdAuteur(); |
PropositionDetermination propositionDetermination = new PropositionDetermination(observation); |
Contributeur contributeur = new Contributeur(utilisateurId, utilisateurNom, utilisateurPrenom, utilisateurCourriel); |
propositionDetermination.setContributeur(contributeur); |
java.util.Date datePropDeter = parserDateObservation(observation.getDateReleve()); |
propositionDetermination.setDate(datePropDeter); |
propositionDetermination.setEspece(observation.getNomRetenu()); |
|
return propositionDetermination; |
} |
|
|
|
public static HashMap<String, VoteDetermination> parserVotesDetermination(JSONObject votes, PropositionDetermination proposition) { |
HashMap<String, VoteDetermination> votesDetermination = new HashMap<String, VoteDetermination>(); |
java.util.Iterator<String> itVotes = votes.keySet().iterator(); |