mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-27 22:30:55 +00:00
- Introduced contract validity days, valid from and valid until fields in the booking model. - Updated booking acceptance logic to enforce validity window constraints. - Added customs clearing agent and first/last mile pickup/delivery coordinates to the booking model. - Implemented LocationPicker component for address selection with map integration using Leaflet. - Enhanced booking review step to display customs clearing agent details. - Updated API and DTOs to accommodate new booking fields. - Added migration scripts for database schema changes. - Implemented tests for booking acceptance and DTO transformations.
38 lines
1.4 KiB
TypeScript
38 lines
1.4 KiB
TypeScript
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
|
|
/**
|
|
* Contract validity window. When the backoffice accepts a price-confirmed
|
|
* booking, staff define how many days the contract stays valid. The window runs
|
|
* from the accept moment (valid_from) through valid_from + N days (valid_until).
|
|
* Outside that window the contract is considered expired.
|
|
*/
|
|
export class AddContractValidityWindow1820000000005
|
|
implements MigrationInterface
|
|
{
|
|
name = 'AddContractValidityWindow1820000000005';
|
|
|
|
public async up(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings ADD COLUMN IF NOT EXISTS contract_validity_days integer;`,
|
|
);
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings ADD COLUMN IF NOT EXISTS contract_valid_from timestamptz;`,
|
|
);
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings ADD COLUMN IF NOT EXISTS contract_valid_until timestamptz;`,
|
|
);
|
|
}
|
|
|
|
public async down(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings DROP COLUMN IF EXISTS contract_valid_until;`,
|
|
);
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings DROP COLUMN IF EXISTS contract_valid_from;`,
|
|
);
|
|
await queryRunner.query(
|
|
`ALTER TABLE freight.bookings DROP COLUMN IF EXISTS contract_validity_days;`,
|
|
);
|
|
}
|
|
}
|