@@ -28,6 +36,10 @@ export default defineComponent({
type: String,
default: "",
},
+ ident: {
+ type: String,
+ default: "",
+ },
title: {
type: String,
default: "",
@@ -69,7 +81,7 @@ export default defineComponent({
},
},
currentEditors() {
- return this.awareness.getEditorObjsByField(this.title);
+ return this.awareness.getEditorObjsByField(this.ident || this.title);
},
},
mounted() {
@@ -78,7 +90,7 @@ export default defineComponent({
methods: {
focused() {
this.awareness.publishMyState({
- field: this.title,
+ field: this.ident || this.title,
});
},
blured() {
diff --git a/src/components/admin/operation/mission/DetailFormVehicle.vue b/src/components/admin/operation/mission/DetailFormVehicle.vue
new file mode 100644
index 0000000..bd58bb9
--- /dev/null
+++ b/src/components/admin/operation/mission/DetailFormVehicle.vue
@@ -0,0 +1,82 @@
+
+
+
+
Eingesetzte Fahrzeuge
+
+
+
+ addVehicle(v)"
+ />
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/admin/operation/mission/DetailFormVehicleItem.vue b/src/components/admin/operation/mission/DetailFormVehicleItem.vue
new file mode 100644
index 0000000..4eef0e0
--- /dev/null
+++ b/src/components/admin/operation/mission/DetailFormVehicleItem.vue
@@ -0,0 +1,120 @@
+
+
+
+
+
+ {{ selectedVehicle?.name }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/admin/operation/mission/MissionDetail.vue b/src/components/admin/operation/mission/MissionDetail.vue
index 05b94cb..0bb3906 100644
--- a/src/components/admin/operation/mission/MissionDetail.vue
+++ b/src/components/admin/operation/mission/MissionDetail.vue
@@ -1,5 +1,5 @@
-
+
@@ -64,9 +64,7 @@
/>
-
-
Eingesetzte Fahrzeuge
-
+
@@ -79,14 +77,13 @@
diff --git a/src/stores/admin/configuration/vehicle.ts b/src/stores/admin/configuration/vehicle.ts
index 53fd240..14ee072 100644
--- a/src/stores/admin/configuration/vehicle.ts
+++ b/src/stores/admin/configuration/vehicle.ts
@@ -11,6 +11,7 @@ export const useVehicleStore = defineStore("vehicle", {
state: () => {
return {
vehicles: [] as Array
,
+ availableVehicles: [] as Array,
totalCount: 0 as number,
loading: "loading" as "loading" | "fetched" | "failed",
};
@@ -40,6 +41,15 @@ export const useVehicleStore = defineStore("vehicle", {
this.loading = "failed";
});
},
+ getAvailableVehicles() {
+ this.availableVehicles = [];
+ http
+ .get(`/admin/vehicle?available=true`)
+ .then((res) => {
+ this.availableVehicles = res.data.vehicles;
+ })
+ .catch((err) => {});
+ },
async getAllVehicles(): Promise> {
return await http.get(`/admin/vehicle?noLimit=true`).then((res) => {
return { ...res, data: res.data.vehicles };
diff --git a/src/views/admin/configuration/vehicle/Vehicle.vue b/src/views/admin/configuration/vehicle/Vehicle.vue
index c7ecba9..4db5c5f 100644
--- a/src/views/admin/configuration/vehicle/Vehicle.vue
+++ b/src/views/admin/configuration/vehicle/Vehicle.vue
@@ -40,7 +40,6 @@ import { useModalStore } from "@/stores/modal";
import Pagination from "@/components/Pagination.vue";
import type { VehicleViewModel } from "@/viewmodels/admin/configuration/vehicle.models";
import { useAbilityStore } from "@/stores/ability";
-import { DocumentTextIcon, PencilIcon } from "@heroicons/vue/24/outline";