StartTransactionRequest.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Linq;
  5. using System.Web;
  6. using EVCB_OCPP.Packet.Messages.SubTypes;
  7. namespace EVCB_OCPP.WEBAPI.Models.WebAPI
  8. {
  9. public class StartTransactionRequest
  10. {
  11. public int? ConnectorId { set; get; }
  12. [Required]
  13. public string IdTag { set; get; }
  14. public ChargingProfilesBase ChargingProfile { set; get ;}
  15. }
  16. public class ChargingProfilesBase
  17. {
  18. [Required]
  19. public int chargingProfileId { get; set; }
  20. [Required]
  21. public int stackLevel { get; set; }
  22. [Required]
  23. public ChargingProfileKindType chargingProfileKind { get; set; }
  24. public RecurrencyKindType? recurrencyKind { get; set; }
  25. public DateTime? validFrom { get; set; }
  26. public DateTime? validTo { get; set; }
  27. [Required]
  28. public ChargingScheduleBase chargingSchedule { get; set; }
  29. }
  30. public class ChargingScheduleBase
  31. {
  32. public int? duration { get; set; }
  33. public DateTime? startSchedule { get; set; }
  34. [Required]
  35. public ChargingRateUnitType chargingRateUnit { get; set; }
  36. [Required]
  37. public List<ChargingSchedulePeriod> chargingSchedulePeriod { get; set; }
  38. public decimal? minChargingRate { get; set; }
  39. }
  40. }