Revision 8de0560f
Added by Patrick Plitzner over 6 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/WorkingSetEditor.java | ||
---|---|---|
46 | 46 |
|
47 | 47 |
import eu.etaxonomy.cdm.api.conversation.ConversationHolder; |
48 | 48 |
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled; |
49 |
import eu.etaxonomy.cdm.api.service.IOccurrenceService; |
|
50 | 49 |
import eu.etaxonomy.cdm.api.service.ITermService; |
51 | 50 |
import eu.etaxonomy.cdm.api.service.IWorkingSetService; |
52 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
|
53 | 51 |
import eu.etaxonomy.cdm.model.common.DefinedTermBase; |
54 | 52 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
55 |
import eu.etaxonomy.cdm.model.description.SpecimenDescription; |
|
56 | 53 |
import eu.etaxonomy.cdm.model.description.WorkingSet; |
57 | 54 |
import eu.etaxonomy.cdm.model.location.NamedArea; |
58 | 55 |
import eu.etaxonomy.cdm.model.name.Rank; |
59 |
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase; |
|
60 | 56 |
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode; |
61 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
|
62 | 57 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode; |
63 | 58 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap; |
64 | 59 |
import eu.etaxonomy.taxeditor.model.IDirtyMarkable; |
... | ... | |
225 | 220 |
if(taxonTreeNode instanceof TaxonNode){ |
226 | 221 |
TaxonNode taxonNode = (TaxonNode)taxonTreeNode; |
227 | 222 |
workingSet.addTaxonSubtree(taxonNode); |
228 |
if(taxonNode.getTaxon()!=null){ |
|
229 |
Taxon taxon = HibernateProxyHelper.deproxy(taxonNode.getTaxon(), Taxon.class); |
|
230 |
Collection<SpecimenOrObservationBase> specimens = CdmStore.getService(IOccurrenceService.class).listByAssociatedTaxon(SpecimenOrObservationBase.class, null, taxon, null, null, null, null, null); |
|
231 |
for (SpecimenOrObservationBase specimen : specimens) { |
|
232 |
Set<SpecimenDescription> specimenDescriptions = specimen.getSpecimenDescriptions(); |
|
233 |
for (SpecimenDescription specimenDescription : specimenDescriptions) { |
|
234 |
workingSet.addDescription(specimenDescription); |
|
235 |
} |
|
236 |
} |
|
237 |
} |
|
238 | 223 |
} |
239 | 224 |
} |
240 | 225 |
} |
241 | 226 |
FeatureTree characters = composite.getCharacters(); |
242 |
//save characters because they can be modified in this editor |
|
243 |
characters.getDistinctFeatures().forEach(character->CdmStore.getService(ITermService.class).merge(character,true)); |
|
227 |
if(characters!=null){ |
|
228 |
//save characters because they can be modified in this editor |
|
229 |
characters.getDistinctFeatures().forEach(character->CdmStore.getService(ITermService.class).merge(character,true)); |
|
230 |
} |
|
244 | 231 |
|
245 | 232 |
|
246 | 233 |
DefinedTermBase rankMaxSelection = composite.getRankMax().getSelection(); |
Also available in: Unified diff
ref #7086, #7095 Add descriptions to WS initially in matrix editor