From 2e6f8fdb8a2b1f916b6dde6ff2426bc4d452dd24 Mon Sep 17 00:00:00 2001 From: Samir Boulahtit Date: Fri, 19 Dec 2025 21:38:02 +0100 Subject: [PATCH] feat: update frontend for unified order model MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update all frontend templates and JavaScript to use new unified Order model: - Orders tab: use status field, processing/cancelled values, items array - Order detail: use snapshot fields, items array, tracking_provider - JavaScript: update API params (status vs sync_status), orderStats fields - Tracking modal: use tracking_provider instead of tracking_carrier - Order items modal: use items array with item_state field All status mappings: - pending → pending (unconfirmed) - processing → confirmed (at least one item available) - cancelled → declined (all items unavailable) - shipped → shipped (with tracking) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .../admin/letzshop-order-detail.html | 100 +++++++++--------- app/templates/admin/marketplace-letzshop.html | 54 +++++----- .../admin/partials/letzshop-orders-tab.html | 30 +++--- docs/implementation/unified-order-view.md | 7 +- static/admin/js/marketplace-letzshop.js | 45 +++++--- 5 files changed, 126 insertions(+), 110 deletions(-) diff --git a/app/templates/admin/letzshop-order-detail.html b/app/templates/admin/letzshop-order-detail.html index f12b5ad2..5cf67cc0 100644 --- a/app/templates/admin/letzshop-order-detail.html +++ b/app/templates/admin/letzshop-order-detail.html @@ -20,7 +20,7 @@

- Order + Order

Letzshop Order Details @@ -32,12 +32,12 @@ x-show="order" class="px-3 py-1 text-sm rounded-full font-medium" :class="{ - 'bg-orange-100 text-orange-700 dark:bg-orange-900 dark:text-orange-300': order?.sync_status === 'pending', - 'bg-green-100 text-green-700 dark:bg-green-900 dark:text-green-300': order?.sync_status === 'confirmed', - 'bg-red-100 text-red-700 dark:bg-red-900 dark:text-red-300': order?.sync_status === 'rejected', - 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300': order?.sync_status === 'shipped' + 'bg-orange-100 text-orange-700 dark:bg-orange-900 dark:text-orange-300': order?.status === 'pending', + 'bg-green-100 text-green-700 dark:bg-green-900 dark:text-green-300': order?.status === 'processing', + 'bg-red-100 text-red-700 dark:bg-red-900 dark:text-red-300': order?.status === 'cancelled', + 'bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300': order?.status === 'shipped' }" - x-text="order?.sync_status === 'rejected' ? 'DECLINED' : order?.sync_status?.toUpperCase()" + x-text="order?.status === 'cancelled' ? 'DECLINED' : (order?.status === 'processing' ? 'CONFIRMED' : order?.status?.toUpperCase())" >

@@ -61,7 +61,7 @@
Order Number - +
Order Date @@ -69,7 +69,7 @@
Shipment ID - +
Total @@ -79,9 +79,9 @@ Confirmed At
-
+
Declined At - +
@@ -109,20 +109,21 @@ -
+

Shipping Address

-

-

-

-

-

-

+

+

+

+

+

+

+

Phone: - +

@@ -136,15 +137,15 @@
Carrier - +
Tracking Number
-
- Set At - +
+ Shipped At +
@@ -159,7 +160,7 @@ Order Items - ( items) + ( items) @@ -168,13 +169,14 @@ Product - EAN/SKU + GTIN/SKU + Qty Price Status -