From 6fc7c0033e7e48c4e1f717d21db70552460676c1 Mon Sep 17 00:00:00 2001
From: Viktoria Pundy <viktoria.pundy@aon.at>
Date: Sun, 3 Jun 2018 12:48:46 +0200
Subject: Added label for status of archived operation, added statistics
 {#27299]

---
 .../controller/ArchiveOperationController.java     | 41 ++++++++++++----------
 1 file changed, 23 insertions(+), 18 deletions(-)

(limited to 'src/main/java/at/ac/tuwien/sepm')

diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ArchiveOperationController.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ArchiveOperationController.java
index d66ad40..5e89b66 100644
--- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ArchiveOperationController.java
+++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/controller/ArchiveOperationController.java
@@ -31,9 +31,10 @@ import org.springframework.stereotype.Controller;
 public class ArchiveOperationController {
 
     @FXML private ImageView imvVehicleDetail;
+    @FXML private Label lblStatus;
     @FXML private AnchorPane apMainDetails;
     @FXML private Label lblOperations;
-    @FXML private Label lblClosed;
+    @FXML private Label lblCompleted;
     @FXML private Label lblCancelled;
     @FXML private AnchorPane backApMain;
     @FXML private AnchorPane backApDetails;
@@ -70,6 +71,15 @@ public class ArchiveOperationController {
         list.clear();
         try {
             list.addAll(operationService.list(EnumSet.of(Status.CANCELLED, Status.COMPLETED)));
+            long cancelledAmount = 0;
+            long completedAmount = 0;
+            for (Operation operation : list) {
+                if (operation.status() == Status.CANCELLED) cancelledAmount++;
+                else completedAmount++;
+            }
+            lblCancelled.setText("storniert: " + cancelledAmount);
+            lblCompleted.setText("abgeschlossen: " + completedAmount);
+            lblOperations.setText("Einsätze: " + list.size());
         } catch (ServiceException e) {
             Alert alert = new Alert(AlertType.ERROR);
             alert.setTitle("Fehler");
@@ -97,7 +107,7 @@ public class ArchiveOperationController {
                                     backApDetails.setVisible(true);
                                     setOperation();
                                     setDetailsVisible(true);
-                                    imvVehicleDetail.setImage(new Image(("/images/Vehicle.png")));
+                                    imvVehicleDetail.setImage(new Image("/images/Vehicle.png"));
                                 });
                 archiveOperationFlowPane.getChildren().add(opInAController.getRoot());
             }
@@ -110,6 +120,8 @@ public class ArchiveOperationController {
         }
     }
 
+    private Operation detailOperation;
+
     private List<Operation> sortSet(Set<Operation> operationsSet) {
         Operation[] array = operationsSet.toArray(new Operation[operationsSet.size()]);
         for (int i = array.length - 1; i > 0; i--) {
@@ -130,26 +142,27 @@ public class ArchiveOperationController {
         return Arrays.asList(array);
     }
 
-    private Operation detailOperation;
-
     private void setOperation() {
         lblCodeHeader.setText(detailOperation.opCode());
-        String date = "am ";
         if (detailOperation.created() != null) {
             LocalDateTime dateTime =
                     LocalDateTime.ofInstant(
                             Objects.requireNonNull(detailOperation.created()), ZoneOffset.UTC);
-            date +=
-                    dateTime.getDayOfMonth()
+            lblDate.setText(
+                    "am "
+                            + dateTime.getDayOfMonth()
                             + "."
                             + dateTime.getMonth().getValue()
                             + "."
-                            + dateTime.getYear();
-            lblDate.setText(date);
+                            + dateTime.getYear());
         } else {
             lblDate.setText("---");
         }
-
+        lblStatus.setText(
+                "Status: "
+                        + (detailOperation.status() == Status.CANCELLED
+                                ? "storniert"
+                                : "abgeschlossen"));
         lblOpCode.setText(detailOperation.opCode());
         Collection<String> elements =
                 detailOperation.vehicles().stream().map(Vehicle::name).collect(Collectors.toList());
@@ -175,14 +188,6 @@ public class ArchiveOperationController {
             alert.setContentText("Die Element konnte nicht geladen werden!");
             alert.showAndWait();
         }
-
-        /*for (Vehicle vehicle : detailOperation.vehicles()) {
-            Button b = new Button();
-            b.setPrefHeight(200);
-            b.setPrefWidth(600 / 2);
-            b.setText(vehicle.name());
-            fpVehicles.getChildren().add(b);
-        }*/
     }
 
     public void setListVisible(boolean b) {
-- 
cgit v1.2.3-70-g09d2