From 7d32bd6d88c459713bf354406da07cce1a45b095 Mon Sep 17 00:00:00 2001 From: Oliver Date: Tue, 19 Aug 2025 11:37:27 +1000 Subject: [PATCH] bug fix: PO Lines (#685) * bug fix: PO Lines - Correctly display part images for purchase order line items * Refactor * Code formatting --- assets/release_notes.md | 1 + lib/api.dart | 1 - lib/inventree/model.dart | 2 ++ lib/inventree/orders.dart | 10 +++++++++- lib/widget/order/po_line_list.dart | 4 ++-- 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/assets/release_notes.md b/assets/release_notes.md index 3aab9fb9..4eb7f293 100644 --- a/assets/release_notes.md +++ b/assets/release_notes.md @@ -2,6 +2,7 @@ --- - Improved UX across the entire app +- Fix bug which prevented display of part images for purchase order line items ### 0.19.1 - July 2025 --- diff --git a/lib/api.dart b/lib/api.dart index d8639f36..a63f1ccf 100644 --- a/lib/api.dart +++ b/lib/api.dart @@ -118,7 +118,6 @@ class InvenTreeFileService extends FileService { if (_client != null) { _client!.badCertificateCallback = (cert, host, port) { - print("BAD CERTIFICATE CALLBACK FOR IMAGE REQUEST"); return !strictHttps; }; } diff --git a/lib/inventree/model.dart b/lib/inventree/model.dart index c3fc8b68..532d1c2e 100644 --- a/lib/inventree/model.dart +++ b/lib/inventree/model.dart @@ -732,6 +732,8 @@ class InvenTreeModel { var response = await api.get(URL, params: params); + print("paginated: ${URL}: ${params}"); + if (!response.isValid()) { return null; } diff --git a/lib/inventree/orders.dart b/lib/inventree/orders.dart index a558092e..8ffc4782 100644 --- a/lib/inventree/orders.dart +++ b/lib/inventree/orders.dart @@ -114,7 +114,15 @@ class InvenTreeOrderLine extends InvenTreeModel { String get partName => getString("name", subKey: "part_detail"); - String get partImage => getString("thumbnail", subKey: "part_detail"); + String get partImage { + String img = getString("thumbnail", subKey: "part_detail"); + + if (img.isEmpty) { + img = getString("image", subKey: "part_detail"); + } + + return img; + } String get targetDate => getDateString("target_date"); } diff --git a/lib/widget/order/po_line_list.dart b/lib/widget/order/po_line_list.dart index 2de44c4a..7dbafd5a 100644 --- a/lib/widget/order/po_line_list.dart +++ b/lib/widget/order/po_line_list.dart @@ -67,7 +67,7 @@ class _PaginatedPOLineListState final page = await InvenTreePOLineItem().listPaginated( limit, offset, - filters: params, + filters: {...params}, ); return page; } @@ -85,7 +85,7 @@ class _PaginatedPOLineListState item.progressString, color: item.isComplete ? COLOR_SUCCESS : COLOR_WARNING, ), - leading: InvenTreeAPI().getThumbnail(supplierPart.partImage), + leading: InvenTreeAPI().getThumbnail(item.partImage), onTap: () async { showLoadingOverlay(); await item.reload();