Suche + getTourData/getTourNamen doppelte Daten bugfix
This commit is contained in:
		@@ -175,4 +175,19 @@ public class TourPlaner{
 | 
			
		||||
            FileHelper.openDefault(path);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sucht alle touren die den gegebenen tournamen enthalten
 | 
			
		||||
     * @param tourname Name der zu suchen ist
 | 
			
		||||
     * @return Alle touren die auf den Suchterm passen
 | 
			
		||||
     */
 | 
			
		||||
    public static ArrayList<Tour> sucheTour(String tourname){
 | 
			
		||||
        ArrayList<Tour> touren = new ArrayList<>();
 | 
			
		||||
        getAllTours().forEach(t ->{
 | 
			
		||||
            if(t.getName().contains(tourname)){
 | 
			
		||||
                touren.add(t);
 | 
			
		||||
            }
 | 
			
		||||
        });
 | 
			
		||||
        return touren;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -92,18 +92,18 @@ public class TourplanerController implements Initializable {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void syncTour(String selectedItem){
 | 
			
		||||
        beschreibungTableView.getItems().removeIf(s -> true); //Leert die Table View komplett
 | 
			
		||||
        beschreibungTableView.getItems().clear(); //Leert die Table View komplett
 | 
			
		||||
        beschreibungTableView.getItems().add(this.viewModel.getTour(selectedItem));
 | 
			
		||||
        mapImageView.setImage(this.viewModel.getImage(selectedItem));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void syncTourNamen(){
 | 
			
		||||
        TourListView.getItems().removeIf(s -> true);
 | 
			
		||||
        TourListView.getItems().clear();
 | 
			
		||||
        TourListView.setItems(this.viewModel.getTourNamen());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void syncLogs(){
 | 
			
		||||
        logTableView.getItems().removeIf(s -> true);
 | 
			
		||||
        logTableView.getItems().clear();
 | 
			
		||||
        logTableView.setItems(this.viewModel.getLogData());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -126,7 +126,7 @@ public class TourplanerController implements Initializable {
 | 
			
		||||
 | 
			
		||||
        //Log anzeigen
 | 
			
		||||
        logTableView.setPlaceholder(new Label( ConfigHelper.getLangIniString("keinelogsvorhanden")));
 | 
			
		||||
        logTableView.getItems().removeIf(s -> true);
 | 
			
		||||
        logTableView.getItems().clear();
 | 
			
		||||
        logTableView.setItems(this.viewModel.getLogData());
 | 
			
		||||
        logDauerCol.setCellValueFactory(new PropertyValueFactory<Log, String>("dauer"));
 | 
			
		||||
        logStreckeCol.setCellValueFactory(new PropertyValueFactory<Log, String>("strecke"));
 | 
			
		||||
@@ -138,6 +138,10 @@ public class TourplanerController implements Initializable {
 | 
			
		||||
        logBemerkungCol.setCellValueFactory(new PropertyValueFactory<Log, String>("bemerkung"));
 | 
			
		||||
 | 
			
		||||
        mapImageView.setImage(this.viewModel.getImage(this.viewModel.getSelectedTour().getName()));
 | 
			
		||||
        if(this.viewModel.isSucheAktiv()){
 | 
			
		||||
            this.viewModel.setSucheAktiv(false);
 | 
			
		||||
            syncTourNamen();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
@@ -165,7 +169,7 @@ public class TourplanerController implements Initializable {
 | 
			
		||||
     */
 | 
			
		||||
    @FXML
 | 
			
		||||
    private void delTour(){
 | 
			
		||||
        this.beschreibungTableView.getItems().removeIf(s -> true); //löscht alles aus der tabelle
 | 
			
		||||
        this.beschreibungTableView.getItems().clear(); //löscht alles aus der tabelle
 | 
			
		||||
        this.titleTextView.setText(ConfigHelper.getLangIniString("keinetourselected"));
 | 
			
		||||
        this.viewModel.delTour();
 | 
			
		||||
        logTableView.setPlaceholder(new Label( ConfigHelper.getLangIniString("keinetourselected")));
 | 
			
		||||
 
 | 
			
		||||
@@ -28,7 +28,8 @@ public class ViewModel {
 | 
			
		||||
    //Log
 | 
			
		||||
    private final ObservableList<Log> logData = FXCollections.observableArrayList();
 | 
			
		||||
    private Log selectedLog;
 | 
			
		||||
 | 
			
		||||
// Suche
 | 
			
		||||
    private boolean sucheAktiv;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    public Image getImage(String tourname){
 | 
			
		||||
@@ -457,7 +458,7 @@ public class ViewModel {
 | 
			
		||||
        getTourData().forEach(s -> {
 | 
			
		||||
            namen.add(s.getName());
 | 
			
		||||
        });
 | 
			
		||||
        tourNamen.removeAll();
 | 
			
		||||
        tourNamen.clear();
 | 
			
		||||
        tourNamen.addAll(namen);
 | 
			
		||||
        return tourNamen;
 | 
			
		||||
    }
 | 
			
		||||
@@ -479,7 +480,7 @@ public class ViewModel {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public ObservableList<Tour> getTourData() {
 | 
			
		||||
        tourData.removeAll();
 | 
			
		||||
        tourData.clear();
 | 
			
		||||
        tourData.addAll(TourPlaner.getAllTours());
 | 
			
		||||
        return tourData;
 | 
			
		||||
    }
 | 
			
		||||
@@ -514,7 +515,20 @@ public class ViewModel {
 | 
			
		||||
                    ConfigHelper.getLangIniString("suchfeldleer"),
 | 
			
		||||
                    ConfigHelper.getLangIniString("suchtextzuerst"));
 | 
			
		||||
        }
 | 
			
		||||
            // TODO: 19.03.2021 Suchlogik
 | 
			
		||||
         ArrayList<Tour> result = TourPlaner.sucheTour(sucheInput);
 | 
			
		||||
        tourNamen.clear();
 | 
			
		||||
        for (Tour tour:result) {
 | 
			
		||||
            tourNamen.add(tour.getName());
 | 
			
		||||
        }
 | 
			
		||||
        this.sucheAktiv = true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isSucheAktiv() {
 | 
			
		||||
        return sucheAktiv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setSucheAktiv(boolean sucheAktiv) {
 | 
			
		||||
        this.sucheAktiv = sucheAktiv;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user