Subversion Repositories eFlore/Applications.del

Rev

Rev 2080 | Rev 2102 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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