handle excluded ad in query and selector
This commit is contained in:
parent
0c29e522ed
commit
16ebe8d543
|
@ -26,6 +26,7 @@ export class MatchQuery extends QueryBase {
|
||||||
seatsRequested?: number;
|
seatsRequested?: number;
|
||||||
strict?: boolean;
|
strict?: boolean;
|
||||||
readonly waypoints: Waypoint[];
|
readonly waypoints: Waypoint[];
|
||||||
|
excludedAdId?: string;
|
||||||
algorithmType?: AlgorithmType;
|
algorithmType?: AlgorithmType;
|
||||||
remoteness?: number;
|
remoteness?: number;
|
||||||
useProportion?: boolean;
|
useProportion?: boolean;
|
||||||
|
@ -56,6 +57,7 @@ export class MatchQuery extends QueryBase {
|
||||||
this.seatsRequested = props.seatsRequested;
|
this.seatsRequested = props.seatsRequested;
|
||||||
this.strict = props.strict;
|
this.strict = props.strict;
|
||||||
this.waypoints = props.waypoints;
|
this.waypoints = props.waypoints;
|
||||||
|
this.excludedAdId = props.excludedAdId;
|
||||||
this.algorithmType = props.algorithmType;
|
this.algorithmType = props.algorithmType;
|
||||||
this.remoteness = props.remoteness;
|
this.remoteness = props.remoteness;
|
||||||
this.useProportion = props.useProportion;
|
this.useProportion = props.useProportion;
|
||||||
|
|
|
@ -136,6 +136,7 @@ export class PassengerOrientedSelector extends Selector {
|
||||||
this._whereStrict(),
|
this._whereStrict(),
|
||||||
this._whereDate(),
|
this._whereDate(),
|
||||||
this._whereSchedule(role),
|
this._whereSchedule(role),
|
||||||
|
this._whereExcludedAd(),
|
||||||
this._whereAzimuth(),
|
this._whereAzimuth(),
|
||||||
this._whereProportion(role),
|
this._whereProportion(role),
|
||||||
this._whereRemoteness(role),
|
this._whereRemoteness(role),
|
||||||
|
@ -206,6 +207,9 @@ export class PassengerOrientedSelector extends Selector {
|
||||||
return '';
|
return '';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private _whereExcludedAd = (): string =>
|
||||||
|
this.query.excludedAdId ? `ad.uuid <> '${this.query.excludedAdId}'` : '';
|
||||||
|
|
||||||
private _wherePassengerSchedule = (
|
private _wherePassengerSchedule = (
|
||||||
date: Date,
|
date: Date,
|
||||||
scheduleItem: ScheduleItem,
|
scheduleItem: ScheduleItem,
|
||||||
|
|
|
@ -47,6 +47,7 @@ const matchQuery = new MatchQuery(
|
||||||
],
|
],
|
||||||
strict: false,
|
strict: false,
|
||||||
waypoints: [originWaypoint, destinationWaypoint],
|
waypoints: [originWaypoint, destinationWaypoint],
|
||||||
|
excludedAdId: '758618c6-dd82-4199-a548-0205161b04d7',
|
||||||
},
|
},
|
||||||
bareMockGeorouter,
|
bareMockGeorouter,
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue