From 8919d020c5a487dad85046397be0fc10876f9588 Mon Sep 17 00:00:00 2001 From: yml2213 Date: Sun, 9 Aug 2026 12:38:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=92=8C=E5=B9=B3=E5=B0=8F?= =?UTF-8?q?=E5=BA=97=E5=95=86=E5=93=81=E5=9B=BE=E7=89=87=E5=92=8C=E5=BA=93?= =?UTF-8?q?=E5=AD=98=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/product/ProductCard.vue | 9 ++++- .../src/components/product/ProductList.vue | 14 +++++-- frontend/src/composables/useProducts.ts | 1 + internal/client/client.go | 40 +++++++++++++++++-- internal/client/client_test.go | 5 ++- internal/types/types.go | 15 ++++--- 6 files changed, 69 insertions(+), 15 deletions(-) diff --git a/frontend/src/components/product/ProductCard.vue b/frontend/src/components/product/ProductCard.vue index fa82071..899cbc3 100644 --- a/frontend/src/components/product/ProductCard.vue +++ b/frontend/src/components/product/ProductCard.vue @@ -12,9 +12,16 @@ const priceLabel = computed(() => { }) const stockText = computed(() => { if (!selectedProduct.value) return '' + if (isXiaodian.value && selectedProduct.value.stockLabel) return selectedProduct.value.stockLabel if (isXiaodian.value && selectedProduct.value.count < 0) return '库存未公开' return `库存 ${selectedProduct.value.count}` }) + +const stockIsLow = computed(() => { + if (!selectedProduct.value) return false + if (isXiaodian.value && selectedProduct.value.stockLabel) return false + return selectedProduct.value.count >= 0 && selectedProduct.value.count < 500 +})