NozzleState.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. using Edge.Core.Parser.BinaryParser.MessageEntity;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace HengshanPaymentTerminal.MessageEntity.Incoming
  8. {
  9. /// <summary>
  10. /// 油枪状态数据对象
  11. /// </summary>
  12. public class NozzleState : CommonMessage
  13. {
  14. public enum NozzleStateEnum
  15. {
  16. /// <summary>
  17. /// 离线
  18. /// </summary>
  19. OFF_LINE = 0x01,
  20. /// <summary>
  21. /// 锁枪
  22. /// </summary>
  23. LOCK = 0x02,
  24. /// <summary>
  25. /// 空闲
  26. /// </summary>
  27. IDLE = 0x03,
  28. /// <summary>
  29. /// 提枪
  30. /// </summary>
  31. LIFT = 0x04,
  32. /// <summary>
  33. /// 开始加油
  34. /// </summary>
  35. START = 0x05,
  36. /// <summary>
  37. /// 加油中
  38. /// </summary>
  39. FUELING = 0x06
  40. }
  41. /// <summary>
  42. /// 枪号
  43. /// </summary>
  44. public int nozzleNum { get; set; }
  45. /// <summary>
  46. /// 状态
  47. /// </summary>
  48. public NozzleStateEnum stateEnum { get; set; }
  49. public override byte[] ToCommonByteArray()
  50. {
  51. byte[] content = new byte[] { 0x55, this.Handle, 0x00, ((byte)RESULT.OVER) };
  52. return content2data(content);
  53. }
  54. public override CommonMessage ToObject(byte[] datas)
  55. {
  56. getBaseData(datas);
  57. this.nozzleNum = datas[7];
  58. this.stateEnum = (NozzleStateEnum)datas[8];
  59. return this;
  60. }
  61. }
  62. }