From d2139fee45e982405487aa8da5fb6cb7b8d5c326 Mon Sep 17 00:00:00 2001 From: seb Date: Sun, 1 Nov 2026 05:57:38 +0100 Subject: [PATCH] u --- src/api/labeltemplate.js | 7 ++++--- src/components/article/tabs/ArticleLabelTab.jsx | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/api/labeltemplate.js b/src/api/labeltemplate.js index 6ee060c..670d005 100644 --- a/src/api/labeltemplate.js +++ b/src/api/labeltemplate.js @@ -5,10 +5,11 @@ import { http } from './http.js'; * Shape: LabelTemplate = { id, company_id, name, width, height, dpi, type, content, thumb } */ export const labeltemplate = { - /** GET /api/labeltemplate → { labeltemplates: LabelTemplate[] } */ + /** GET /api/labeltemplate(?sku=...) → { labeltemplates: LabelTemplate[] } */ // #region GET /api/labeltemplate — list - list() { - return http('/api/labeltemplate'); + list(params) { + const search = params?.sku ? `?sku=${encodeURIComponent(params.sku)}` : ''; + return http(`/api/labeltemplate${search}`); }, // #endregion diff --git a/src/components/article/tabs/ArticleLabelTab.jsx b/src/components/article/tabs/ArticleLabelTab.jsx index 66c9c75..976e29d 100644 --- a/src/components/article/tabs/ArticleLabelTab.jsx +++ b/src/components/article/tabs/ArticleLabelTab.jsx @@ -82,15 +82,27 @@ export default class ArticleLabelTab extends PureComponent { this.loadData(); } + componentDidUpdate(prevProps) { + if ( + prevProps.article?.sku !== this.props.article?.sku || + prevProps.article?.name !== this.props.article?.name || + prevProps.article?.prices !== this.props.article?.prices || + prevProps.article?.eans !== this.props.article?.eans + ) { + this.loadData(); + } + } + componentWillUnmount() { this.unsub?.(); } async loadData() { this.setState({ loading: true, error: null }); + const sku = this.props.article?.sku; try { const [resTemplates] = await Promise.all([ - labeltemplate.list(), + labeltemplate.list(sku ? { sku } : undefined), companyAutomat.actions.loadAgentPrinters().catch(() => companyAutomat.state.agentprinters), ]); @@ -139,6 +151,7 @@ export default class ArticleLabelTab extends PureComponent { try { await article.printLabel(articleData.sku, { templateId: selectedTemplateId, + agentprinterId: selectedPrinterId, printerId: selectedPrinterId, quantity, });