Subversion Repositories eFlore/Applications.del

Rev

Rev 2082 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2082 Rev 2091
Line 127... Line 127...
127
		if (propositions != null && propositions.isObject() != null) {
127
		if (propositions != null && propositions.isObject() != null) {
128
			List<InterventionForum> interventions = parserInterventions(propositions.isObject());
128
			List<InterventionForum> interventions = parserInterventions(propositions.isObject());
Line 129... Line 129...
129
			
129
			
130
			for (InterventionForum interventionForum : interventions) {
130
			for (InterventionForum interventionForum : interventions) {
131
				interventionForum.setObservation(observation);
-
 
132
				// Si une proposition avec le même nom retenu que l'observation est déjà présente,
-
 
133
				// alors il n'est pas nécessaire de créer la proposition "factice"
131
				interventionForum.setObservation(observation);
134
				if (interventionForum instanceof PropositionDetermination) {
132
				if (interventionForum instanceof PropositionDetermination) {
135
					PropositionDetermination proposition = (PropositionDetermination) interventionForum;
133
					PropositionDetermination proposition = (PropositionDetermination) interventionForum;
-
 
134
					// Si une proposition avec les même nums noms et référentiel que l'observation est déjà présente,
136
					// Si la proposition correspond au nom retenu (non vide) en cours
135
					// alors il n'est pas nécessaire de créer la proposition "factice"
137
					if (!nomRetenu.equals("") && proposition.getEspece().equals(nomRetenu)) {
136
					if (especePropositionEtObservationCorrespondent(observation, proposition)) {	
138
						creerPropositionAPartirObs = false;
-
 
139
					}
-
 
-
 
137
						creerPropositionAPartirObs = false;
140
					
138
						// Si de plus les auteurs correspondent, alors nous avons affaire à la proposition initiale
141
					if (proposition.getEspece().equals(observation.getNomRetenu()) && proposition.getContributeur().getNomComplet().equals(observation.getAuteur())) {
139
						if(proposition.getContributeur().getNomComplet().equals(observation.getAuteur())) {
142
						propositionPotentiellementInitiale = proposition;
140
							propositionPotentiellementInitiale = proposition;
-
 
141
						}
Line 143... Line 142...
143
					}
142
					}
144
					
143
					
145
					if (proposition.estPropositionInitiale()) {
144
					if (proposition.estPropositionInitiale()) {
146
						propositionInitialeExiste = true;
145
						propositionInitialeExiste = true;
147
					}
146
					}
148
				}
147
				}
149
			}
148
			}
Line 150... Line 149...
150
			observation.setInterventionsForum(interventions);
149
			observation.setInterventionsForum(interventions);
-
 
150
		}
151
		}
151
		
152
		
152
		if (!propositionInitialeExiste && propositionPotentiellementInitiale != null) {
Line 153... Line -...
153
		if (!propositionInitialeExiste && propositionPotentiellementInitiale != null) {
-
 
154
			propositionPotentiellementInitiale.setEstPropositionInitiale(true);
153
			// Ceci permet à la la proposition d'être mise en valeur différemment dans l'interface
155
		}
154
			propositionPotentiellementInitiale.setEstPropositionInitiale(true);
156
		
155
		}
157
		// Pas la peine de créer une proposition sur un texte vide ! 
156
		 
158
		if (creerPropositionAPartirObs) {
157
		if (creerPropositionAPartirObs) {
Line 159... Line 158...
159
			// Si elle est nécessaire, la proposition factice est ajoutée au début
158
			// Si elle est nécessaire, la proposition factice est ajoutée au début
Line -... Line 159...
-
 
159
			observation.getInterventionsForum().add(0, creerPropositionDeterminationAPartirObservation(observation, propositionInitialeExiste));
-
 
160
		}
-
 
161
		return observation;
-
 
162
 
-
 
163
	}
-
 
164
	
-
 
165
	public static boolean especePropositionEtObservationCorrespondent(Observation observation, PropositionDetermination proposition) {
-
 
166
		boolean correspondent = false;
-
 
167
		// pas la peine de comparer deux choses pourraient éventuellement être vide 
-
 
168
		if(!observation.getNumNomenclatural().isEmpty() && !observation.getReferentiel().isEmpty()) {
-
 
169
			// Vérification si les num noms et référentiels correspondent
Line 160... Line 170...
160
			observation.getInterventionsForum().add(0, creerPropositionDeterminationAPartirObservation(observation, propositionInitialeExiste));
170
			correspondent = (observation.getNumNomenclatural().equals(proposition.getNumNomenclatural())) && (observation.getReferentiel().equals(proposition.getReferentiel()));
161
		}
171
		}
162
		return observation;
172
		
163
 
173
		return correspondent;