- const compositeSchedule: OCPP16ChargingSchedule = {
- startSchedule: compositeScheduleStart,
- duration: compositeScheduleDuration,
- chargingRateUnit: chargingProfiles.every(
- (chargingProfile) =>
- chargingProfile.chargingSchedule.chargingRateUnit === OCPP16ChargingRateUnitType.AMPERE,
- )
- ? OCPP16ChargingRateUnitType.AMPERE
- : chargingProfiles.every(
- (chargingProfile) =>
- chargingProfile.chargingSchedule.chargingRateUnit === OCPP16ChargingRateUnitType.WATT,
- )
- ? OCPP16ChargingRateUnitType.WATT
- : OCPP16ChargingRateUnitType.AMPERE,
- chargingSchedulePeriod: compositeSchedulePeriods,
- minChargeRate: Math.min(
- ...chargingProfiles.map(
- (chargingProfile) => chargingProfile.chargingSchedule.minChargeRate ?? Infinity,
- ),
- ),
- };
- return {
- status: GenericStatus.Accepted,
- scheduleStart: compositeSchedule.startSchedule!,
- connectorId,
- chargingSchedule: compositeSchedule,
- };
+ previousCompositeSchedule = compositeSchedule;
+ }
+ if (compositeSchedule) {
+ return {
+ status: GenericStatus.Accepted,
+ scheduleStart: compositeSchedule.startSchedule!,
+ connectorId,
+ chargingSchedule: compositeSchedule,
+ };
+ }
+ return OCPP16Constants.OCPP_RESPONSE_REJECTED;