MeterValuesRequest.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Newtonsoft.Json;
  2. using EVCB_OCPP.Packet.Utilities;
  3. using EVCB_OCPP.Packet.Messages.SubTypes;
  4. using System.Collections.Generic;
  5. using System.ComponentModel.DataAnnotations;
  6. using EVCB_OCPP.Packet.Features;
  7. namespace EVCB_OCPP.Packet.Messages.Core
  8. {
  9. public class MeterValuesRequest : IRequest
  10. {
  11. public MeterValuesRequest()
  12. {
  13. Action = Actions.MeterValues.ToString();
  14. }
  15. [JsonIgnore]
  16. public string Action { set; get; }
  17. /// <summary>
  18. /// 充電槍號(開始為1)
  19. /// </summary>
  20. [Required]
  21. public int connectorId { set; get; }
  22. /// <summary>
  23. /// 交易 Id
  24. /// </summary>
  25. public int? transactionId { set; get; }
  26. /// <summary>
  27. /// 電表資訊
  28. /// </summary>
  29. [Required]
  30. public List<MeterValue> meterValue { set; get; }
  31. public bool TransactionRelated()
  32. {
  33. return true;
  34. }
  35. public bool Validate()
  36. {
  37. return Validator.TryValidateObject(this, new ValidationContext(this), null, true);
  38. }
  39. }
  40. }