Revision 3c6e3fc6
Added by Patrick Plitzner over 5 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/DescriptiveDataSetEditor.java | ||
---|---|---|
65 | 65 |
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode; |
66 | 66 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode; |
67 | 67 |
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto; |
68 |
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
|
|
68 |
import eu.etaxonomy.cdm.persistence.dto.TermDto;
|
|
69 | 69 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap; |
70 | 70 |
import eu.etaxonomy.taxeditor.editor.l10n.Messages; |
71 | 71 |
import eu.etaxonomy.taxeditor.model.IDirtyMarkable; |
... | ... | |
156 | 156 |
public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) { |
157 | 157 |
AreasSelectionDialog areasSelectionDialog = new AreasSelectionDialog(composite.getShell(), composite.getAreas()); |
158 | 158 |
if(areasSelectionDialog.open()==Window.OK){ |
159 |
Set<UuidAndTitleCache> selectedAreas = areasSelectionDialog.getSelectedAreas();
|
|
159 |
Set<TermDto> selectedAreas = areasSelectionDialog.getSelectedAreas();
|
|
160 | 160 |
if(selectedAreas!=null){ |
161 | 161 |
composite.setAreas(selectedAreas); |
162 | 162 |
dirty.setDirty(true); |
... | ... | |
204 | 204 |
} |
205 | 205 |
Set<NamedArea> geoFilter = descriptiveDataSet.getGeoFilter(); |
206 | 206 |
if(geoFilter!=null && !geoFilter.isEmpty()){ |
207 |
Set<UuidAndTitleCache> uuidAndTitleCaches = geoFilter.stream().map(filter->new UuidAndTitleCache(filter.getUuid(), filter.getId(), filter.getTitleCache())).collect(Collectors.toSet()); |
|
208 |
composite.setAreas(uuidAndTitleCaches); |
|
207 |
Set<TermDto> terms = geoFilter.stream().map(filter->new TermDto( |
|
208 |
filter.getUuid(), |
|
209 |
filter.getRepresentations(), |
|
210 |
filter.getPartOf()!=null?filter.getPartOf().getUuid():null, |
|
211 |
filter.getVocabulary().getUuid(), |
|
212 |
filter.getOrderIndex())).collect(Collectors.toSet()); |
|
213 |
composite.setAreas(terms); |
|
209 | 214 |
} |
210 | 215 |
Set<TaxonNode> taxonSubtreeFilter = descriptiveDataSet.getTaxonSubtreeFilter(); |
211 | 216 |
if(taxonSubtreeFilter!=null){ |
... | ... | |
269 | 274 |
@Persist |
270 | 275 |
@Override |
271 | 276 |
public void save(IProgressMonitor monitor) { |
272 |
Set<UuidAndTitleCache> areas = composite.getAreas();
|
|
277 |
Set<TermDto> areas = composite.getAreas();
|
|
273 | 278 |
Object input = composite.getTaxonNodeTree().getInput(); |
274 | 279 |
if(input!=null){ |
275 | 280 |
descriptiveDataSet.setTaxonSubtreeFilter(new HashSet<>());//clear existing filter |
... | ... | |
303 | 308 |
descriptiveDataSet.setMinRank(rankMin); |
304 | 309 |
descriptiveDataSet.setDescriptiveSystem(characters); |
305 | 310 |
List<DefinedTermBase> terms = CdmStore.getService(ITermService.class) |
306 |
.loadByIds(areas.stream().map(area -> area.getId()).collect(Collectors.toList()), null);
|
|
311 |
.load(areas.stream().map(area -> area.getUuid()).collect(Collectors.toList()), null);
|
|
307 | 312 |
Set<NamedArea> areaTerms = new HashSet<>(); |
308 | 313 |
terms.forEach(term->areaTerms.add((NamedArea) term)); |
309 | 314 |
descriptiveDataSet.setGeoFilter(areaTerms); |
Also available in: Unified diff
ref #7875 Adapt to TermDto based services