diff --git a/src/components/admin/ForceSelect.vue b/src/components/admin/ForceSelect.vue new file mode 100644 index 0000000..54b74a9 --- /dev/null +++ b/src/components/admin/ForceSelect.vue @@ -0,0 +1,135 @@ + + + + {{ title }} + + + + + + + + + + + Keine Auswahl verfügbar + + + + Keine Treffer + + + + + + {{ person.firstname }} {{ person.lastname }} + + + + + + + + + + + + + + + + diff --git a/src/main.css b/src/main.css index f23dcde..156052a 100644 --- a/src/main.css +++ b/src/main.css @@ -81,7 +81,7 @@ a[button].disabled { input:not([type="checkbox"]), textarea, select { - @apply rounded-md shadow-sm relative block w-full px-3 py-2 border border-gray-300 focus:border-primary placeholder-gray-500 text-gray-900 rounded-b-md focus:outline-none focus:ring-0 focus:z-10 sm:text-sm resize-none; + @apply rounded-md shadow-sm relative block w-full px-3 py-2 border border-gray-300 focus:border-primary placeholder-gray-500 text-gray-900 focus:outline-none focus:ring-0 focus:z-10 sm:text-sm resize-none; } input[readonly], diff --git a/src/stores/admin/configuration/force.ts b/src/stores/admin/configuration/force.ts index 596ba61..51f6857 100644 --- a/src/stores/admin/configuration/force.ts +++ b/src/stores/admin/configuration/force.ts @@ -11,6 +11,7 @@ export const useForceStore = defineStore("force", { state: () => { return { forces: [] as Array, + availableForces: [] as Array, totalCount: 0 as number, loading: "loading" as "loading" | "fetched" | "failed", }; @@ -40,6 +41,15 @@ export const useForceStore = defineStore("force", { this.loading = "failed"; }); }, + getAvailableForces() { + this.availableForces = []; + http + .get(`/admin/force?available=true`) + .then((res) => { + this.availableForces = res.data.forces; + }) + .catch((err) => {}); + }, async getAllForces(): Promise> { return await http.get(`/admin/force?noLimit=true`).then((res) => { return { ...res, data: res.data.forces }; diff --git a/src/views/admin/operation/mission/MissionDetail.vue b/src/views/admin/operation/mission/MissionDetail.vue new file mode 100644 index 0000000..a0ab8bf --- /dev/null +++ b/src/views/admin/operation/mission/MissionDetail.vue @@ -0,0 +1,102 @@ + + + + Einsatztitel + + + + + + + + + Einsatzbeginn + + + + Einsatzende + + + + Dauer + + 00h 00m + + + + + Stichwort + + + + Einsatzort + + + + Weitere Anwesende (andere Wehren, Polizei, Rettungsdienst) + + + + + Anzahl getretteter Personen + + + + Anzahl geborgener Personen + + + + + Einsatzbeschreibung + + + + + Eingesetzte Fahrzeuge + + + Eingesetztes Material + + + Kontaktdaten + + + + + + + + diff --git a/src/views/admin/operation/mission/MissionOverview.vue b/src/views/admin/operation/mission/MissionOverview.vue index 7538e69..fbc357d 100644 --- a/src/views/admin/operation/mission/MissionOverview.vue +++ b/src/views/admin/operation/mission/MissionOverview.vue @@ -4,15 +4,15 @@ zurück zur Liste - + - + hi + @@ -37,8 +37,10 @@ import { defineComponent } from "vue"; import { mapActions, mapState } from "pinia"; import MainTemplate from "@/templates/Main.vue"; -import { useAbilityStore } from "@/stores/ability"; import { useConnectionStore } from "@/stores/admin/operation/connection"; +import MissionDetail from "./MissionDetail.vue"; +import { useForceStore } from "@/stores/admin/configuration/force"; +import type { ForceViewModel } from "@/viewmodels/admin/configuration/force.models";
Dauer
+ 00h 00m +
Eingesetzte Fahrzeuge
Eingesetztes Material
Kontaktdaten
hi