feat(documents): persist & expose selected_custom_fields in services

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
BOHA
2026-06-16 20:11:10 +02:00
parent 2b3266a1cc
commit 0d9b5e9570
4 changed files with 77 additions and 0 deletions

View File

@@ -9,6 +9,10 @@ import {
isIssuedOrderNumberTaken,
} from "./numbering.service";
import { nasOrdersManager } from "./nas-financials-manager";
import {
encodeSelectedCustomFields,
parseSelectedCustomFields,
} from "../utils/custom-fields";
export interface IssuedOrderItemInput {
description?: string | null;
@@ -253,6 +257,9 @@ export async function getIssuedOrder(id: number) {
supplier: order.suppliers,
supplier_name: order.suppliers?.name || null,
valid_transitions: VALID_TRANSITIONS[order.status as string] || [],
selected_custom_fields: parseSelectedCustomFields(
rest.selected_custom_fields,
),
};
}
@@ -319,6 +326,9 @@ export async function createIssuedOrder(body: IssuedOrderInput) {
internal_notes: body.internal_notes
? String(body.internal_notes)
: null,
selected_custom_fields: encodeSelectedCustomFields(
body.selected_custom_fields,
),
},
});
@@ -424,6 +434,10 @@ export async function updateIssuedOrder(id: number, body: IssuedOrderInput) {
data.internal_notes = body.internal_notes
? String(body.internal_notes)
: null;
if (body.selected_custom_fields !== undefined)
data.selected_custom_fields = encodeSelectedCustomFields(
body.selected_custom_fields,
);
}
if (body.status !== undefined) data.status = String(body.status);