add lashing surcharge for cargo types with hasLashing flag

add lashing surcharge for cargo types with hasLashing flag
This commit is contained in:
Marshal
2026-07-17 23:25:53 +00:00
parent 6467173c76
commit 3a1a08b1e1
59 changed files with 1919 additions and 140 deletions

View File

@@ -25,6 +25,22 @@ export class RatesRepository implements IRatesRepository {
.getMany();
}
findLiveRatesDetailed(): Promise<Rate[]> {
return this.repo
.createQueryBuilder('rate')
.leftJoinAndSelect('rate.originYard', 'originYard')
.leftJoinAndSelect('rate.destinationYard', 'destinationYard')
.leftJoinAndSelect('rate.containerType', 'containerType')
.leftJoinAndSelect('rate.cargoType', 'cargoType')
.where('rate.status = :status', { status: 'LIVE' })
.orderBy('rate.appliesTo', 'ASC')
.addOrderBy('rate.tradeDirection', 'ASC')
.addOrderBy('originYard.label', 'ASC')
.addOrderBy('destinationYard.label', 'ASC')
.addOrderBy('rate.rateValue', 'ASC')
.getMany();
}
/**
* Find a non-superseded rate matching an identity pattern — the same tuple the
* `UQ_rates_pattern` unique index enforces. Used to reject duplicates before