diff --git a/components/EntityList.vue b/components/EntityList.vue new file mode 100644 index 0000000..fbf0108 --- /dev/null +++ b/components/EntityList.vue @@ -0,0 +1,179 @@ + + + + + \ No newline at end of file diff --git a/components/columnRenderings/customer.vue b/components/columnRenderings/customer.vue new file mode 100644 index 0000000..139b2ea --- /dev/null +++ b/components/columnRenderings/customer.vue @@ -0,0 +1,13 @@ + + + diff --git a/components/columnRenderings/plant.vue b/components/columnRenderings/plant.vue new file mode 100644 index 0000000..3467c70 --- /dev/null +++ b/components/columnRenderings/plant.vue @@ -0,0 +1,13 @@ + + + diff --git a/components/columnRenderings/projecttype.vue b/components/columnRenderings/projecttype.vue new file mode 100644 index 0000000..fb1cd3a --- /dev/null +++ b/components/columnRenderings/projecttype.vue @@ -0,0 +1,13 @@ + + + diff --git a/pages/projects/index.vue b/pages/projects/index.vue index 6883229..09f3284 100644 --- a/pages/projects/index.vue +++ b/pages/projects/index.vue @@ -1,194 +1,36 @@ \ No newline at end of file diff --git a/stores/data.js b/stores/data.js index 89b847e..bcbbeb0 100644 --- a/stores/data.js +++ b/stores/data.js @@ -5,6 +5,10 @@ import {useNumberRange} from "~/composables/useNumberRange.js"; //const supabase = createClient('https://uwppvcxflrcsibuzsbil.supabase.co','eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InV3cHB2Y3hmbHJjc2lidXpzYmlsIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MDA5MzgxOTQsImV4cCI6MjAxNjUxNDE5NH0.CkxYSQH0uLfwx9GVUlO6AYMU2FMLAxGMrwEKvyPv7Oo') +import projecttype from "~/components/columnRenderings/projecttype.vue" +import customer from "~/components/columnRenderings/customer.vue" +import plant from "~/components/columnRenderings/plant.vue" + // @ts-ignore export const useDataStore = defineStore('data', () => { @@ -60,6 +64,54 @@ export const useDataStore = defineStore('data', () => { redirect:true, historyItemHolder: "project", numberRangeHolder: "projectNumber", + filters: [ + { + name: "Abgeschlossen", + default: true, + "filterFunction": function (row) { + if(row.phases && row.phases.length > 0) { + return row.phases.find(i => i.active).label !== "Abgeschlossen"; + } else { + return true + } + + } + } + ], + templateColumns: [ + { + key: "projectNumber", + label: "Projektnummer" + }, + { + key: "projecttype", + label: "Typ", + component: projecttype + },{ + key: "phase", + label: "Phase" + },{ + key: "name", + label: "Name" + }, + { + key: "customer", + label: "Kunde", + component: customer + }, + { + key: "notes", + label: "Notizen", + }, + { + key: "plant", + label: "Objekt", + component: plant + }, + { + key: "profiles", + label: "Benutzer" + }] }, vehicles: { label: "Fahrzeuge",