Added variant update functionality.

This commit is contained in:
2026-01-23 23:12:47 +01:00
parent 897f154fae
commit ea482fab07
5 changed files with 144 additions and 19 deletions
+23 -2
View File
@@ -168,10 +168,10 @@ export const useLabelEditorStore = defineStore('label_editor_store', {
},
// Variant
async addVariant(articleID: number, variant: Variant) {
async addVariant(variant: Variant) {
if(this.article != null) {
try {
let createdVariant = await $fetch<Variant>(this.config.public.url + '/article/' + articleID + '/variant', {
let createdVariant = await $fetch<Variant>(this.config.public.url + '/article/' + this.article.id + '/variant', {
method: 'POST',
body: JSON.stringify(variant),
});
@@ -186,5 +186,26 @@ export const useLabelEditorStore = defineStore('label_editor_store', {
this.addNotification(true, 'Kann Variante nicht erstellen. Es ist kein Artikel ausgewählt.');
}
},
async updateVariant(variant: Variant) {
if(this.article != null) {
let variantIndex = this.article.variants.findIndex(i => i.id === variant.id);
try {
let updatedVariant = await $fetch<Variant>(this.config.public.url + '/variant/' + variant.id, {
method: 'POST',
body: JSON.stringify(variant),
});
this.article.variants[variantIndex] = updatedVariant;
this.addNotification(false, 'Variante aktualisiert.');
} catch {
this.addNotification(true, 'Fehler beim aktualisieren der Variante.');
}
} else {
this.addNotification(true, 'Kann Variante nicht aktualisiert werden. Es ist kein Artikel ausgewählt.');
}
},
},
});