mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-30 11:08:12 +00:00
- Updated ContractRouteLineView to clarify that routes carry no quantity and are pure origin-destination lanes. - Modified GeneralContractService to reflect changes in route handling, removing quantity-related logic. - Adjusted BookingsService to persist contracted routes without quantities, aligning with the new contract structure. - Revised CreateBookingDto and CreateContractRouteDto to remove quantity fields, emphasizing shared pool usage. - Added ContractOrdersPanel component to display drawdown orders and their associated pool. - Implemented useContractOrders and useContractPool hooks for fetching order and pool data. - Created booking-orders.service.ts to manage API interactions for drawdown orders and pool data. - Updated BookingRequestDetailPage and PlaceOrderDialog to accommodate new order handling logic.
31 lines
1.1 KiB
TypeScript
31 lines
1.1 KiB
TypeScript
import { api as client } from "../auth/http";
|
|
import { unwrap } from "@/utils/endpoint";
|
|
import type { Freight } from "@edr/types";
|
|
|
|
/**
|
|
* Drawdown orders placed against a general contract (a booking with
|
|
* bookingType = GENERAL_CONTRACT). Each order spawns a child ONE_TIME booking
|
|
* that carries its own clearance/approval — managed on the child's detail page.
|
|
*/
|
|
export const bookingOrdersService = {
|
|
/** Orders placed against a general contract, with their lines + child status. */
|
|
listByContract: async (
|
|
contractBookingId: string,
|
|
): Promise<Freight.IBookingOrder[]> => {
|
|
const response = await client.get("/booking-orders", {
|
|
params: { contractBookingId },
|
|
});
|
|
return unwrap(response.data) as Freight.IBookingOrder[];
|
|
},
|
|
|
|
/** Contracted / ordered / remaining quantities for a general contract. */
|
|
pool: async (
|
|
contractBookingId: string,
|
|
): Promise<Freight.ContractQuantityLine[]> => {
|
|
const response = await client.get(
|
|
`/booking-orders/contract/${contractBookingId}/pool`,
|
|
);
|
|
return unwrap(response.data) as Freight.ContractQuantityLine[];
|
|
},
|
|
};
|