From 9a6036d184fb45e7a6e1bb7137f2e65449e86fd8 Mon Sep 17 00:00:00 2001 From: twsystem1004 Date: Wed, 24 Jun 2026 03:01:58 +0000 Subject: [PATCH 1/2] =?UTF-8?q?[FIX]=20=E9=A0=98=E8=97=A5=E5=96=AE?= =?UTF-8?q?=EF=BC=9A=E6=A0=B8=E9=8A=B7=E6=94=B9=E7=94=B1=E5=87=BA=E8=B2=A8?= =?UTF-8?q?finalize=E3=80=81B660=E5=9B=9E=E5=82=B3=E6=89=B9=E5=83=B9?= =?UTF-8?q?=E5=96=AE=E8=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - handlePickupVerify:移除掃碼驗證當下核銷領藥碼(usage_count++/used), 改由實際出貨 MQTT finalize 核銷;未取貨(逾時/取消)時領藥碼維持 active 可再掃, 修正「掃了未確定取貨、再掃顯示已領」問題。 - B660 回應新增 pricing_slip_no(批價單號),供機台確認領藥畫面備註欄顯示。 Co-Authored-By: Claude Opus 4.8 (1M context) --- .../Controllers/Api/V1/App/MachineController.php | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/Api/V1/App/MachineController.php b/app/Http/Controllers/Api/V1/App/MachineController.php index 0c08126..6a8053b 100644 --- a/app/Http/Controllers/Api/V1/App/MachineController.php +++ b/app/Http/Controllers/Api/V1/App/MachineController.php @@ -761,16 +761,14 @@ class MachineController extends Controller ], 409); } - // 標記碼已領(usage_count++;達上限轉 used)——僅領藥單,避免動到既有單貨道核銷流程 - $pickupCode->usage_count = (int) $pickupCode->usage_count + 1; - $pickupCode->used_at = $pickupCode->used_at ?? now(); - if ($pickupCode->usage_count >= (int) $pickupCode->usage_limit) { - $pickupCode->status = 'used'; - } - $pickupCode->save(); + // 不在「驗證/掃碼」當下核銷領藥碼。核銷統一改由機台實際出貨後的 + // MQTT finalize(TransactionService::finalizePharmacyDispense)標記為 used, + // 這樣顧客掃碼後若未按「確定取貨」(逾時/取消、未出貨),領藥碼仍維持 active 可再次掃碼領取。 + // (原本在此處 usage_count++/轉 used 會在尚未取貨時就把碼鎖死,導致再掃顯示「已領」。) $data['order_type'] = \App\Models\Transaction\Order::TYPE_PHARMACY_PICKUP; $data['order_no'] = $order->order_no; + $data['pricing_slip_no'] = $order->pricing_slip_no ?? ''; // 批價單號(藥師批價依據);機台「確認領藥」畫面備註欄顯示 $data['items'] = $items; // [{slot_no, product_id, product_name, qty}, ...] $data['status'] = $pickupCode->status; } From f8c6da3acc39bb694ce7f3e9332c22792b661253 Mon Sep 17 00:00:00 2001 From: twsystem1004 Date: Wed, 24 Jun 2026 03:10:29 +0000 Subject: [PATCH 2/2] =?UTF-8?q?[FIX]=20=E9=A0=98=E8=97=A5=E5=96=AE?= =?UTF-8?q?=E5=BB=BA=E7=AB=8B=E9=A0=81=E6=89=B9=E5=83=B9=E5=96=AE=E8=99=9F?= =?UTF-8?q?=E6=AC=84=E4=BD=8D=E6=94=94=E6=88=AA=20Enter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 批價單號 input 加上 @keydown.enter.prevent,避免掃碼器掃完批價單 QR 後自動送出的 Enter 誤觸「建立並產生 QR」、跳出「請至少勾選一項藥品並填寫數量」提示。 2. 單號仍正常自動帶入,攔截僅作用於此欄位,不影響其他欄位與按鈕送出。 --- resources/views/admin/sales/pharmacy-pickup/index.blade.php | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/views/admin/sales/pharmacy-pickup/index.blade.php b/resources/views/admin/sales/pharmacy-pickup/index.blade.php index 3092973..90f7224 100644 --- a/resources/views/admin/sales/pharmacy-pickup/index.blade.php +++ b/resources/views/admin/sales/pharmacy-pickup/index.blade.php @@ -268,6 +268,7 @@