Added variant update functionality.
This commit is contained in:
@@ -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.');
|
||||
}
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user