From 8a64de8611b371a98ff31262b4155876aee27e8c Mon Sep 17 00:00:00 2001 From: Galen Charlton Date: Tue, 11 Jan 2022 17:52:32 -0500 Subject: [PATCH] LP#1942220: (follow-up) properly style 'delayed' LI dispositions Signed-off-by: Galen Charlton --- .../src/app/staff/acq/lineitem/lineitem-list.component.html | 2 +- .../src/app/staff/acq/lineitem/lineitem-list.component.ts | 6 +++++- .../src/eg2/src/app/staff/acq/lineitem/lineitem.service.ts | 13 +++++++++++++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.html b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.html index 1a54b813d1..061124c4cd 100644 --- a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.html +++ b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.html @@ -253,7 +253,7 @@ -
+
diff --git a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.ts b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.ts index 6a4f479254..6e6d81c769 100644 --- a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem-list.component.ts @@ -8,7 +8,7 @@ import {IdlService, IdlObject} from '@eg/core/idl.service'; import {NetService} from '@eg/core/net.service'; import {AuthService} from '@eg/core/auth.service'; import {ServerStoreService} from '@eg/core/server-store.service'; -import {LineitemService} from './lineitem.service'; +import {LineitemService, LINEITEM_DISPOSITION} from './lineitem.service'; import {PoService} from '../po/po.service'; import {ComboboxEntry} from '@eg/share/combobox/combobox.component'; import {HoldingsService} from '@eg/staff/share/holdings/holdings.service'; @@ -961,5 +961,9 @@ export class LineitemListComponent implements OnInit { Boolean(this.poId) ); } + + lineitemDisposition(li: IdlObject): LINEITEM_DISPOSITION { + return this.liService.lineitemDisposition(li); + } } diff --git a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem.service.ts b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem.service.ts index 7c73ad531c..7bc5b94a82 100644 --- a/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem.service.ts +++ b/Open-ILS/src/eg2/src/app/staff/acq/lineitem/lineitem.service.ts @@ -9,6 +9,10 @@ import {ComboboxEntry} from '@eg/share/combobox/combobox.component'; import {ItemLocationService} from '@eg/share/item-location-select/item-location-select.service'; import {saveAs} from 'file-saver'; +const LINEITEM_DISPOSITIONS: + 'new' | 'selector-ready' | 'order-ready' | 'pending-order' | 'on-order' | 'received' | 'delayed' = null; +export type LINEITEM_DISPOSITION = typeof LINEITEM_DISPOSITIONS; + const COPY_ORDER_DISPOSITIONS: 'canceled' | 'delayed' | 'received' | 'on-order' | 'pre-order' = null; export type COPY_ORDER_DISPOSITION = typeof COPY_ORDER_DISPOSITIONS; @@ -404,6 +408,15 @@ export class LineitemService { } else { return 'pre-order'; } } + // state/disposition of a single lineitem + lineitemDisposition(lineitem: IdlObject): LINEITEM_DISPOSITION { + if (lineitem.cancel_reason() && lineitem.cancel_reason().keep_debits() === 't') { + return 'delayed'; + } else { + return lineitem.state(); + } + } + // convenience function for sorting values nullableCompare(a_val: any, b_val: any): number { return a_val === b_val ? 0 : -- 2.11.0