Refactor invoice management components and PWA configuration:

- Updated `vite.config.js` to use an absolute base path for PWA manifest alignment.
- Removed unused imports and components for cleaner `collectedOrderInvoice` views.
- Fixed invoice data mapping by updating `raw_data.objects` to `raw_data.orders`.
- Enhanced user feedback with error handling modal in `collectedOrderInvoiceManageEconomic.vue`.
This commit is contained in:
Jeppe Bundgaard
2025-09-02 15:53:24 +02:00
parent 71ec2eeaac
commit 2fd510c682
3 changed files with 12 additions and 12 deletions
@@ -4,9 +4,7 @@ import RestrictedPageWrapper from "@/components/page/wrappers/RestrictedPageWrap
import { SessionUser } from "@/components/session/token/SessionUser.vue";
import PageTitle from "@/components/global/PageTitle.vue";
import { useRouter } from "vue-router";
import {ref, watch} from 'vue';
import CollectedOrderInvoiceOrdersTable
from "@/components/displays/superuser/tables/collectedOrderInvoiceOrdersTable.vue";
import { ref } from 'vue';
import CollectedOrderInvoiceOverview
from "@/views/dashboards/superUserDashboard/collectedOrderInvoice/displays/collectedOrderInvoiceOverview.vue";
import CollectedOrderInvoiceManage
@@ -16,7 +14,6 @@ import UserOtherSpecialArrangement
from "@/views/dashboards/superUserDashboard/user/displays/other/UserOtherSpecialArrangement.vue";
import UserOtherVaskeabonnement
from "@/views/dashboards/superUserDashboard/user/displays/other/UserOtherVaskeabonnement.vue";
import OrdersPagination from "@/components/displays/pagination/models/DepartmentPos/OrdersPagination.vue";
import CollectedOrderInvoiceCustomerNotes
from "@/views/dashboards/superUserDashboard/collectedOrderInvoice/displays/collectedOrderInvoiceCustomerNotes.vue";
import InvoiceOrdersPagination
@@ -43,7 +40,7 @@ const getCollectedOrderInvoice = async () => {
SessionUser.objects.collectedOrderInvoices.get.single(collectedOrderInvoiceId).then((response) => {
const raw_data = response;
console.log(raw_data);
orders.value = raw_data.objects || [];
orders.value = raw_data.orders || [];
user.value = raw_data.user;
collectedOrderInvoice.value = raw_data;
isLoading.value = false;
@@ -75,9 +72,9 @@ getCollectedOrderInvoice();
<template v-slot:default>
<!-- At A Glance -->
<collected-order-invoice-overview
v-bind:total="orders.length"
v-bind:invoices="orders"
v-bind:collectedOrderInvoice="collectedOrderInvoice"
:total="0"
/>
<!-- Special Arrangement -->
<UserOtherSpecialArrangement :user_id="user.id" class="mb-2" v-if="user" :readOnly="true"/>
@@ -1,8 +1,6 @@
<script setup>
import { defineProps, ref } from 'vue';
import { Colors } from "@/ThemeConfig.vue";
import { SessionUser } from "@/components/session/token/SessionUser.vue";
import GetOrderInvoicePDFButton from "@/components/search/economic/getOrderInvoicePDFButton.vue";
import Swal from "sweetalert2";
import ActionSettingsWheelButton from "@/components/displays/buttons/ActionSettingsWheelButton.vue";
import ActionSettingsWheelItem from "@/components/displays/buttons/ActionSettingsWheelItem.vue";
@@ -34,9 +32,14 @@ const onCreateInvoiceDraft = async () => {
location.reload();
});
}).catch((error) => {
console.log('Error creating invoice', error);
}
)
console.log('Error creating invoice', error)
Swal.fire({
icon: "error",
title: "Fejl",
text: "Der skete en fejl under oprettelse af fakturaen",
footer: error
});
})
}
const onSplitInvoiceCollection = async () => {
+1 -1
View File
@@ -26,7 +26,7 @@ export default defineConfig(({ mode }) => {
process.env.APP_VERSION = version
// Keep relative base for static hosting; align manifest with base
const base = './'
const base = '/'
const pwaScope = base === './' ? '.' : base
// Enable single-file build only when explicitly requested (disabled by default for PWA)