GetCompositeScheduleConfirmation.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using EVCB_OCPP.Packet.Messages.SubTypes;
  2. using EVCB_OCPP.Packet.Utilities;
  3. using Newtonsoft.Json;
  4. using Newtonsoft.Json.Converters;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.ComponentModel.DataAnnotations;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. namespace EVCB_OCPP.Packet.Messages.SmartCharging
  12. {
  13. public class GetCompositeScheduleConfirmation : IConfirmation
  14. {
  15. private IRequest _request = null;
  16. [Required]
  17. [JsonConverter(typeof(StringEnumConverter))]
  18. public GetCompositeScheduleStatus status { set; get; }
  19. public int? connectorId { set; get; }
  20. [Required]
  21. [JsonConverter(typeof(UTCDateTimeConverter))]
  22. public DateTime? scheduleStart { set; get; }
  23. public ChargingSchedule chargingSchedule { set; get; }
  24. public IRequest GetRequest()
  25. {
  26. return _request;
  27. }
  28. public void SetRequest(IRequest request)
  29. {
  30. _request = request;
  31. }
  32. public bool Validate()
  33. {
  34. return Validator.TryValidateObject(this, new ValidationContext(this), null, true);
  35. }
  36. }
  37. }