diff --git a/frontend/src/App.vue b/frontend/src/App.vue index c4a6d8c..ccd898e 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -5,6 +5,7 @@ import CreateClientModal from "./components/modals/CreateClientModal.vue"; import CreateEstimateModal from "./components/modals/CreateEstimateModal.vue"; import CreateJobModal from "./components/modals/CreateJobModal.vue"; import CreateInvoiceModal from "./components/modals/CreateInvoiceModal.vue"; +import CreateWarrantyModal from "./components/modals/CreateWarrantyModal.vue"; import GlobalLoadingOverlay from "./components/common/GlobalLoadingOverlay.vue"; import ScrollPanel from "primevue/scrollpanel"; @@ -32,6 +33,7 @@ import ScrollPanel from "primevue/scrollpanel"; + diff --git a/frontend/src/api.js b/frontend/src/api.js index bbfcd7a..07287b7 100644 --- a/frontend/src/api.js +++ b/frontend/src/api.js @@ -433,6 +433,13 @@ class Api { return result } + static async createWarranty(warrantyData) { + const payload = DataUtils.toSnakeCaseObject(warrantyData); + const result = await this.request(FRAPPE_UPSERT_INVOICE_METHOD, { data: payload }); + console.log("DEBUG: API - Created Warranty: ", result); + return result + } + // External API calls /** diff --git a/frontend/src/components/SideBar.vue b/frontend/src/components/SideBar.vue index 3435baa..abe379f 100644 --- a/frontend/src/components/SideBar.vue +++ b/frontend/src/components/SideBar.vue @@ -41,7 +41,6 @@ const createButtons = ref([ label: "Job", command: () => { //frappe.new_doc("Job"); - console.log("New Job"); modalStore.openModal("createJob"); }, }, @@ -61,7 +60,7 @@ const createButtons = ref([ { label: "Warranty Claim", command: () => { - alert("Create Warranty Claim clicked"); + modalStore.openModal("createWarranty"); }, }, ]); diff --git a/frontend/src/components/modals/CreateWarrantyModal.vue b/frontend/src/components/modals/CreateWarrantyModal.vue new file mode 100644 index 0000000..e965a31 --- /dev/null +++ b/frontend/src/components/modals/CreateWarrantyModal.vue @@ -0,0 +1,331 @@ + + + Create New Warranty + + + + + {{ statusMessage }} + + + + + + + + +