mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-30 12:18:11 +00:00
add dispute functionality for contract duty and implement collection dates
This commit is contained in:
@@ -285,13 +285,23 @@ export type IContractDocumentChange =
|
||||
toOrder: number;
|
||||
}
|
||||
| { kind: 'DOCUMENT_TITLE_CHANGED'; title: string; fromTitle: string | null }
|
||||
| { kind: 'WHEREAS_CHANGED'; added: number; removed: number };
|
||||
| { kind: 'WHEREAS_CHANGED'; added: number; removed: number }
|
||||
/** A contract field (not a document article) changed on a customer edit. */
|
||||
| {
|
||||
kind: 'FIELD_CHANGED';
|
||||
field: string;
|
||||
label: string;
|
||||
from: string | null;
|
||||
to: string | null;
|
||||
};
|
||||
|
||||
/** An audit entry for one edit to a contract's document. */
|
||||
export interface IContractDocumentRevision {
|
||||
id: string;
|
||||
contractId: string;
|
||||
actorId: string | null;
|
||||
/** Who made the edit, captured at the time (survives renames/deletions). */
|
||||
actorName?: string | null;
|
||||
/** The approval step's required role at the time of the edit. */
|
||||
actorRole: string | null;
|
||||
stepId: string | null;
|
||||
@@ -451,6 +461,9 @@ export interface ContractClearanceView {
|
||||
roHold?: boolean;
|
||||
roHoldReason?: string | null;
|
||||
vesselDepartureDate?: string | null;
|
||||
/** Import DO: vessel arrival + DO collection dates, recorded by GL Djibouti. */
|
||||
vesselArrivalDate?: string | null;
|
||||
doCollectedDate?: string | null;
|
||||
roAmendmentRequestedAt?: string | null;
|
||||
bookingReady?: boolean;
|
||||
preClearanceFinalized?: boolean;
|
||||
@@ -464,12 +477,32 @@ export interface ContractClearanceView {
|
||||
linkedBookingReviewNote?: string | null;
|
||||
/** Shipment day the booking holds; the default when GL resubmits it. */
|
||||
linkedBookingScheduledDate?: string | null;
|
||||
/**
|
||||
* Pre-declaration handshake with GL Djibouti: who handles the shipment in
|
||||
* transit. `name` stays null until Djibouti answers, and GL Ethiopia cannot
|
||||
* file the customs declaration before it is set.
|
||||
*/
|
||||
transitAssignee?: {
|
||||
requestedAt: string | null;
|
||||
requestNote: string | null;
|
||||
name: string | null;
|
||||
assignedAt: string | null;
|
||||
} | null;
|
||||
dutyAdvice?: {
|
||||
amount: number;
|
||||
currency: string;
|
||||
declarationSerial?: string | null;
|
||||
noticeFile?: { id: string; name: string; url: string } | null;
|
||||
} | null;
|
||||
/**
|
||||
* The customer's open objection to the advised duty. Present only until GL
|
||||
* re-advises; `rounds` counts how many times it has been sent back.
|
||||
*/
|
||||
dutyDispute?: {
|
||||
note: string;
|
||||
raisedAt: string;
|
||||
rounds: number;
|
||||
} | null;
|
||||
/** Phased customs uploads (IM4, DO, transit permit, etc.) with friendly labels. */
|
||||
workflowFiles?: import("./clearance-files.catalog").ClearanceWorkflowFile[];
|
||||
/** Import post-allocation T1 transit document state (null until a booking is linked). */
|
||||
@@ -887,6 +920,8 @@ export interface CreateBulkLineDto {
|
||||
export interface CreateBookingUnderContractDto {
|
||||
/** Required for GENERAL multi-route contracts; ONE_TIME auto-selected. */
|
||||
contractRouteId?: string;
|
||||
/** Billing currency for this shipment. Intercity is always ETB. */
|
||||
paymentCurrency?: string;
|
||||
/** Binding shipment day. Omitted for intercity (DOMESTIC) bookings — staff assign a passing train later. */
|
||||
scheduledDate?: string;
|
||||
/** "WITH_RETURN" | "WITHOUT_RETURN" — per-shipment override; falls back to the contract's equipment return. */
|
||||
@@ -936,6 +971,8 @@ export interface IBookingRequest extends BaseEntity {
|
||||
scheduledDate?: string | null;
|
||||
status: BookingRequestStatus;
|
||||
requestedLines: RequestedShipmentLines;
|
||||
/** Billing currency the customer chose; GL books the shipment in it. */
|
||||
paymentCurrency?: string | null;
|
||||
notes?: string | null;
|
||||
/** Set when GL accepts and creates the booking. */
|
||||
createdBookingId?: string | null;
|
||||
@@ -992,6 +1029,8 @@ export interface CreateBookingRequestDto {
|
||||
itemCount?: number;
|
||||
hazardousQuantity?: number;
|
||||
};
|
||||
/** Billing currency for the shipment GL will book. Intercity is always ETB. */
|
||||
paymentCurrency?: string;
|
||||
notes?: string;
|
||||
}
|
||||
|
||||
|
||||
@@ -774,6 +774,9 @@ export interface ClearanceView {
|
||||
roHold?: boolean;
|
||||
roHoldReason?: string | null;
|
||||
vesselDepartureDate?: string | null;
|
||||
/** Import DO: vessel arrival + DO collection dates, recorded by GL Djibouti. */
|
||||
vesselArrivalDate?: string | null;
|
||||
doCollectedDate?: string | null;
|
||||
roAmendmentRequestedAt?: string | null;
|
||||
/** Boundary milestone complete — customer may proceed to operations. */
|
||||
operationReady?: boolean;
|
||||
|
||||
Reference in New Issue
Block a user