From bd74044ed93df0fb77b9c0bc7ed6aaf8aa18221f Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 21 Apr 2025 16:23:01 +1000 Subject: [PATCH] Display "default expiry" on part detail page (#9549) --- src/frontend/src/pages/part/PartDetail.tsx | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/frontend/src/pages/part/PartDetail.tsx b/src/frontend/src/pages/part/PartDetail.tsx index e6e2bea46e..767276df73 100644 --- a/src/frontend/src/pages/part/PartDetail.tsx +++ b/src/frontend/src/pages/part/PartDetail.tsx @@ -159,7 +159,7 @@ export default function PartDetail() { data.latest_serial_number = serials.latest; } - // Construct the details tables + // Top left - core part information const tl: DetailsField[] = [ { type: 'string', @@ -246,6 +246,7 @@ export default function PartDetail() { } ]; + // Top right - stock availability information const tr: DetailsField[] = [ { type: 'string', @@ -327,6 +328,7 @@ export default function PartDetail() { } ]; + // Bottom left - part attributes const bl: DetailsField[] = [ { type: 'boolean', @@ -389,6 +391,7 @@ export default function PartDetail() { } ]; + // Bottom right - other part information const br: DetailsField[] = [ { type: 'string', @@ -416,6 +419,16 @@ export default function PartDetail() { label: t`Default Supplier`, model: ModelType.supplierpart, hidden: !part.default_supplier + }, + { + name: 'default_expiry', + label: t`Default Expiry`, + hidden: !part.default_expiry, + icon: 'calendar', + type: 'string', + value_formatter: () => { + return `${part.default_expiry} ${t`days`}`; + } } ];