From 537896503f51f7e9f94a2e38a20b85ae988bb735 Mon Sep 17 00:00:00 2001 From: flfeders Date: Thu, 21 Dec 2023 16:05:13 +0100 Subject: [PATCH] Some Changes --- spaces/components/DocumentDisplay.vue | 74 ++---- spaces/pages/contracts/[mode]/[[id]].vue | 219 ++++++++++++++++++ spaces/pages/contracts/index.vue | 81 +++++++ .../pages/inventory/spaces/[mode]/[[id]].vue | 1 + spaces/pages/vendorinvoices/[mode]/[[id]].vue | 21 +- spaces/pages/vendorinvoices/index.vue | 12 +- spaces/stores/data.ts | 8 + 7 files changed, 356 insertions(+), 60 deletions(-) create mode 100644 spaces/pages/contracts/[mode]/[[id]].vue create mode 100644 spaces/pages/contracts/index.vue diff --git a/spaces/components/DocumentDisplay.vue b/spaces/components/DocumentDisplay.vue index f093f1d..21ceab3 100644 --- a/spaces/components/DocumentDisplay.vue +++ b/spaces/components/DocumentDisplay.vue @@ -2,6 +2,7 @@ const toast = useToast() const supabase = useSupabaseClient() +const router = useRouter() const props = defineProps({ document: { type: Object, @@ -14,7 +15,7 @@ const props = defineProps({ }) const {document, openShowModal:openShowModalProp } = props; -const {fetchDocuments, getDocumentTags} = useDataStore() +const {fetchDocuments, getDocumentTags, fetchVendorInvoices} = useDataStore() const {projects, customers} = storeToRefs(useDataStore()) const tags = getDocumentTags const openShowModal = ref(false) @@ -26,7 +27,7 @@ const openDocument = async () => { openShowModal.value = true } -const uploadFiles = async () => { +/*const uploadFiles = async () => { const uploadSingleFile = async (file) => { const {data, error} = await supabase @@ -76,7 +77,7 @@ const uploadFiles = async () => { uploadModalOpen.value = false; uploadInProgress.value = false; fetchDocuments() -} +}*/ const updateDocument = async () => { @@ -101,7 +102,21 @@ const updateDocument = async () => { } +const createVendorInvoice = async () => { + const {data,error} = await supabase + .from("vendorInvoices") + .insert([{ + document: document.id, + }]) + .select() + if(error) { + console.log(error) + } else if(data) { + fetchVendorInvoices() + await router.push("/vendorinvoices") + } +} @@ -108,7 +110,7 @@ const supabase = useSupabaseClient() const route = useRoute() const {vendors} = storeToRefs(useDataStore()) - +const {getVendorInvoiceById, getDocumentById} = useDataStore() const invoice = ref({ @@ -126,12 +128,13 @@ const labelDueDate = computed(() => invoice.value.dueDate.toLocaleDateString('de -//const currentVendorInvoice = (await supabase.from('vendorInvoices').select().eq('id', route.params.id)).data -const document = (await supabase.from('documents').select().eq("id",18)).data[0] +const currentVendorInvoice = ref(getVendorInvoiceById(Number(route.params.id))) +console.log(currentVendorInvoice) +const currentDocument = getDocumentById(Number(currentVendorInvoice.document)) +console.log(currentDocument) +//console.log(document) -console.log(document) - -let fileurl = (await supabase.storage.from('documents').createSignedUrl(document.path,60*60)).data.signedUrl +//let fileurl = (await supabase.storage.from('documents').createSignedUrl(document.path,60*60)).data.signedUrl let vendorInvoiceData = ref({ diff --git a/spaces/pages/vendorinvoices/index.vue b/spaces/pages/vendorinvoices/index.vue index 61707db..d0922b4 100644 --- a/spaces/pages/vendorinvoices/index.vue +++ b/spaces/pages/vendorinvoices/index.vue @@ -36,6 +36,16 @@ const {vendorInvoices } = storeToRefs(useDataStore()) const mode = ref("show") const itemColumns = [ + { + key: 'id', + label: "Id", + sortable: true + }, + { + key: 'state', + label: "Status.", + sortable: true + }, { key: 'vendor', label: "Lieferantennr.", @@ -50,7 +60,7 @@ const itemColumns = [ key: "date", label: "Datum", sortable: true - } + }, ] diff --git a/spaces/stores/data.ts b/spaces/stores/data.ts index 60ff4ea..7a5d07d 100644 --- a/spaces/stores/data.ts +++ b/spaces/stores/data.ts @@ -32,6 +32,7 @@ export const useDataStore = defineStore('data', { products: [] as any[], movements: [] as any[], forms: [] as any[], + contracts: [] as any[], jobs: [] as any[], formSubmits: [] as any[], contacts: [] as any[], @@ -52,6 +53,7 @@ export const useDataStore = defineStore('data', { await this.fetchCustomers() + await this.fetchContracts() await this.fetchForms() await this.fetchFormSubmits() await this.fetchProducts() @@ -77,6 +79,10 @@ export const useDataStore = defineStore('data', { // @ts-ignore this.events = (await supabase.from("events").select()).data }, + async fetchContracts() { + // @ts-ignore + this.contracts = (await supabase.from("contracts").select()).data + }, async fetchCustomers() { // @ts-ignore this.customers = (await supabase.from("customers").select().order('customerNumber', {ascending: true})).data @@ -160,6 +166,8 @@ export const useDataStore = defineStore('data', { getProductById: (state) => (productId:number) => state.products.find(product => product.id === productId), getVendorById: (state) => (itemId:number) => state.vendors.find(item => item.id === itemId), getVendorInvoiceById: (state) => (itemId:number) => state.vendorInvoices.find(item => item.id === itemId), + getContractById: (state) => (itemId:number) => state.contracts.find(item => item.id === itemId), + getDocumentById: (state) => (itemId:number) => state.documents.find(item => item.id === itemId), getSpaceById: (state) => (itemId:number) => state.spaces.find(item => item.id === itemId), getProjectById: (state) => (projectId:number) => { let project = state.projects.find(project => project.id === projectId)