improve candidate entity for empty driver or passenger schedule
This commit is contained in:
parent
212b609e26
commit
739d05b095
|
@ -60,7 +60,7 @@ export class CandidateEntity extends AggregateRoot<CandidateProps> {
|
||||||
* This is a tedious process : additional information can be found in deeper methods !
|
* This is a tedious process : additional information can be found in deeper methods !
|
||||||
*/
|
*/
|
||||||
createJourneys = (): CandidateEntity => {
|
createJourneys = (): CandidateEntity => {
|
||||||
// driver and passenger schedules are mandatory
|
// driver and passenger schedules are eventually mandatory
|
||||||
if (!this.props.driverSchedule) this._createDriverSchedule();
|
if (!this.props.driverSchedule) this._createDriverSchedule();
|
||||||
if (!this.props.passengerSchedule) this._createPassengerSchedule();
|
if (!this.props.passengerSchedule) this._createPassengerSchedule();
|
||||||
try {
|
try {
|
||||||
|
@ -96,9 +96,7 @@ export class CandidateEntity extends AggregateRoot<CandidateProps> {
|
||||||
* Create the driver schedule based on the passenger schedule
|
* Create the driver schedule based on the passenger schedule
|
||||||
*/
|
*/
|
||||||
private _createDriverSchedule = (): void => {
|
private _createDriverSchedule = (): void => {
|
||||||
if (this.props.passengerSchedule) {
|
let driverSchedule: ScheduleItemProps[] = this.props.passengerSchedule!.map(
|
||||||
let driverSchedule: ScheduleItemProps[] =
|
|
||||||
this.props.passengerSchedule.map(
|
|
||||||
(scheduleItemProps: ScheduleItemProps) => ({
|
(scheduleItemProps: ScheduleItemProps) => ({
|
||||||
day: scheduleItemProps.day,
|
day: scheduleItemProps.day,
|
||||||
time: scheduleItemProps.time,
|
time: scheduleItemProps.time,
|
||||||
|
@ -139,7 +137,6 @@ export class CandidateEntity extends AggregateRoot<CandidateProps> {
|
||||||
margin: scheduleItemProps.margin,
|
margin: scheduleItemProps.margin,
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -162,9 +159,7 @@ export class CandidateEntity extends AggregateRoot<CandidateProps> {
|
||||||
* Create the passenger schedule based on the driver schedule
|
* Create the passenger schedule based on the driver schedule
|
||||||
*/
|
*/
|
||||||
private _createPassengerSchedule = (): void => {
|
private _createPassengerSchedule = (): void => {
|
||||||
if (this.props.driverSchedule) {
|
let passengerSchedule: ScheduleItemProps[] = this.props.driverSchedule!.map(
|
||||||
let passengerSchedule: ScheduleItemProps[] =
|
|
||||||
this.props.driverSchedule.map(
|
|
||||||
(scheduleItemProps: ScheduleItemProps) => ({
|
(scheduleItemProps: ScheduleItemProps) => ({
|
||||||
day: scheduleItemProps.day,
|
day: scheduleItemProps.day,
|
||||||
time: scheduleItemProps.time,
|
time: scheduleItemProps.time,
|
||||||
|
@ -205,7 +200,6 @@ export class CandidateEntity extends AggregateRoot<CandidateProps> {
|
||||||
margin: scheduleItemProps.margin,
|
margin: scheduleItemProps.margin,
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
private _createJourney = (driverScheduleItem: ScheduleItem): Journey =>
|
private _createJourney = (driverScheduleItem: ScheduleItem): Journey =>
|
||||||
|
|
Loading…
Reference in New Issue