summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ManageEmployeesController.java45
-rw-r--r--src/main/resources/fxml/manageEmployees.fxml2
2 files changed, 17 insertions, 30 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ManageEmployeesController.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ManageEmployeesController.java
index a126cc7..655c7da 100644
--- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ManageEmployeesController.java
+++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ManageEmployeesController.java
@@ -18,9 +18,8 @@ public class ManageEmployeesController {
private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
@FXML private AnchorPane listEmployeesAP;
-
@FXML private AnchorPane containerHeader;
- @FXML private FlowPane flowPaneEmployeeList;
+ @FXML private EmployeeListController employeeListController;
private final EmployeeService employeeService;
private final SpringFXMLLoader fxmlLoader;
@@ -87,39 +86,27 @@ public class ManageEmployeesController {
}
private void updateEmployeeList(String searchString) {
+
try {
- flowPaneEmployeeList.getChildren().clear();
- employeeService
- .list()
- .stream()
- .filter(
- employee ->
- searchString.trim().isEmpty()
- || employee.name()
- .toLowerCase()
- .contains(searchString.toLowerCase()))
- .forEach(this::addEmployeeToFlowPane);
+ employeeListController.setData(
+ employeeService
+ .list()
+ .stream()
+ .filter(
+ employee ->
+ searchString.trim().isEmpty()
+ || employee.name()
+ .toLowerCase()
+ .contains(searchString.toLowerCase()))
+ .collect(Collectors.toList()),
+ this::openEditEmployee,
+ null);
+
} catch (ServiceException e) {
LOG.error("Could not fetch employee list: {}", e);
}
}
- private void addEmployeeToFlowPane(Employee employee) {
- Insets listItemMargins = new Insets(0, 5, 10, 5);
-
- try {
- EmployeeListItemController controller =
- EmployeeListItemController.createEmployeeListItemController(
- fxmlLoader, employee);
- Node rootElement = controller.getRootElement();
- flowPaneEmployeeList.getChildren().add(rootElement);
- FlowPane.setMargin(rootElement, listItemMargins);
- controller.setConsumerEditEmployeeClicked(this::openEditEmployee);
- } catch (IOException e) {
- LOG.error("Could not create a new EmployeeListItem: {}", e);
- }
- }
-
public void setVisible(boolean b) {
listEmployeesAP.setVisible(b);
}
diff --git a/src/main/resources/fxml/manageEmployees.fxml b/src/main/resources/fxml/manageEmployees.fxml
index e6efb89..c007c88 100644
--- a/src/main/resources/fxml/manageEmployees.fxml
+++ b/src/main/resources/fxml/manageEmployees.fxml
@@ -31,7 +31,7 @@
<Insets top="20.0" />
</VBox.margin>
<content>
- <FlowPane fx:id="flowPaneEmployeeList" prefHeight="346.0" prefWidth="742.0" style="-fx-background-color: #EFEBE8;" />
+ <fx:include fx:id="employeeList" source="employeeList.fxml"/>
</content>
</ScrollPane>
</children>