diff --git a/components/DocumentDisplayModal.vue b/components/DocumentDisplayModal.vue index bc333de..2e121ea 100644 --- a/components/DocumentDisplayModal.vue +++ b/components/DocumentDisplayModal.vue @@ -129,21 +129,21 @@ const resourceOptions = ref([ const resourceToAssign = ref("project") const itemOptions = ref([]) const idToAssign = ref(null) -const getItemsBySelectedResource = () => { +const getItemsBySelectedResource = async () => { if(resourceToAssign.value === "project") { - itemOptions.value = dataStore.projects + itemOptions.value = await useSupabaseSelect("projects") } else if(resourceToAssign.value === "customer") { - itemOptions.value = dataStore.customers + itemOptions.value = await useSupabaseSelect("customers") } else if(resourceToAssign.value === "vendor") { - itemOptions.value = dataStore.vendors + itemOptions.value = await useSupabaseSelect("vendors") } else if(resourceToAssign.value === "vehicle") { - itemOptions.value = dataStore.vehicles + itemOptions.value = await useSupabaseSelect("vehicles") } else if(resourceToAssign.value === "product") { - itemOptions.value = dataStore.products + itemOptions.value = await useSupabaseSelect("products") } else if(resourceToAssign.value === "plant") { - itemOptions.value = dataStore.plants + itemOptions.value = await useSupabaseSelect("plants") } else if(resourceToAssign.value === "contract") { - itemOptions.value = dataStore.contracts + itemOptions.value = await useSupabaseSelect("contracts") } else { itemOptions.value = [] } diff --git a/components/EntityEdit.vue b/components/EntityEdit.vue index c554385..0659c89 100644 --- a/components/EntityEdit.vue +++ b/components/EntityEdit.vue @@ -76,12 +76,42 @@ const setupQuery = () => { if(route.query) { Object.keys(route.query).forEach(key => { if(dataType.templateColumns.find(i => i.key === key)) { - console.log(key) if (["customer", "contract", "plant", "contact", "project"].includes(key)) { item.value[key] = Number(route.query[key]) } else { item.value[key] = route.query[key] } + } else if(key === "resources") { + /*item.value[key] = route.query[key]*/ + JSON.parse(route.query[key]).forEach(async (i) => { + console.log(i) + let type = i.substring(0,1) + let id = i.substring(2,i.length) + console.log(type) + console.log(id) + let holder = "" + if(type === "P"){ + holder = "profiles" + } else if(type === "F"){ + holder = "vehicles" + id = Number(id) + } else if(type === "I"){ + holder = "inventoryitems" + id = Number(id) + } else if(type === "G"){ + holder = "inventoryitemgroups" + } + + if(typeof item.value[holder] === "object") { + item.value[holder].push(id) + } else { + item.value[holder] = [id] + } + + + }) + + } }) } @@ -128,12 +158,10 @@ const contentChanged = (content, datapoint) => { const saveAllowed = ref(false) const calcSaveAllowed = (item) => { - console.log(dataType.templateColumns) let allowedCount = 0 dataType.templateColumns.filter(i => i.inputType).forEach(datapoint => { if(datapoint.required) { - console.log("is required") if(datapoint.key.includes(".")){ if(item[datapoint.key.split('.')[0]][datapoint.key.split('.')[1]]) allowedCount += 1 @@ -225,8 +253,9 @@ watch(item.value, async (newItem, oldItem) => { Die Form Group darf nur in der ersten bearbeitet werden und muss dann runterkopiert werden --> +