123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace Dfs.WayneChina.IMisPlus.Models
- {
- /// <summary>
- /// Settings/parameters of pump (fueling point) of legacy iFuel system.
- /// </summary>
- public class Pump
- {
- #region Constructor
- public Pump()
- {
- Nozzles = new List<Nozzle>();
- }
- #endregion
- /// <summary>
- /// Id of the pump.
- /// Sps Field: `LgNode`, type: tinyint(1)
- /// </summary>
- public byte Id { get; set; }
- /// <summary>
- /// Type of dispenser, 0=Hengshan,1=TQC
- /// Sps Field: `DspNo`, type: char(6).
- /// </summary>
- public byte DispType { get; set; }
- /// <summary>
- /// Type of the dispenser, Fuel dispenser or CNG or LNG dispenser.
- /// ** This is a custom field.
- /// </summary>
- public string DispTypeName { get; set; }
- /// <summary>
- /// Fueling point type, 0=Fuel, 1=LNG, 2=CNG
- /// Sps Field: `PumpType`, type: byte.
- /// </summary>
- public byte PumpType { get; set; }
- /// <summary>
- /// Number of the fuel tank.
- /// Sps Field: `TankNo`, type: int(2)
- /// </summary>
- public ushort TankId { get; set; }
- /// <summary>
- /// ID of the associated POS.
- /// Sps Field: `PosID`, type: tinyint(1)
- /// </summary>
- public byte PosId { get; set; }
- /// <summary>
- /// Application protocol, 1=IFSF, 2=Hengshan...
- /// Sps Field: `Protocol`, type: int(2)
- /// </summary>
- public ushort AppProtocol { get; set; }
- /// <summary>
- /// Type of communication protocol, 0=TCP, 1=COM.
- /// Sps Field: `ProtcType`, type: byte
- /// </summary>
- public byte ProtocolType { get; set; }
- /// <summary>
- /// Listening port.
- /// Sps Field: `Port`, type: char(16).
- /// </summary>
- public string Port { get; set; }
- /// <summary>
- /// Serial port number in case that serial communication is used.
- /// Sps Field: `LinkPort`, type: int(2)
- /// </summary>
- public ushort SerialPort { get; set; }
- /// <summary>
- /// Communication node.
- /// Sps Field: `Node`, type: int(2)
- /// </summary>
- public ushort Node { get; set; }
- /// <summary>
- /// Sub-address of the pump, multiple pumps on the same serial port is supported.
- /// Sps Field: `SubNode`, type: int(2)
- /// </summary>
- public byte SubAddress { get; set; }
- /// <summary>
- /// The work mode of the pump. 0=Locked, 1=Auto Auth, 2=Manual Auth.
- /// Sps Field: `Mode`, type: byte.
- /// </summary>
- public byte Mode { get; set; }
- /// <summary>
- /// Mode of checkout, e.g self-service, manual etc.
- /// </summary>
- public byte CheckOutMode { get; set; }
- /// <summary>
- /// Count of nozzles.
- /// `NozzleNum`
- /// </summary>
- public byte NozzleCount
- {
- get
- {
- if (Nozzles != null)
- {
- return Convert.ToByte(Nozzles.Count);
- }
- return 0;
- }
- }
- /// <summary>
- /// Delay parameter.
- /// Sps Field: `DelayPara`, type: byte.
- /// </summary>
- public byte DelayParam { get; set; }
- /// <summary>
- /// Size of the unpaid transactions stack
- /// Sps Field: `BuffSize`, type: byte
- /// </summary>
- public byte PayStackSize { get; set; }
- /// <summary>
- /// Maximum amount of an authorized filling.
- /// Sps Field: `MaxMON`, type: uint(4)
- /// </summary>
- public uint MaxAmount { get; set; }
- /// <summary>
- /// Maximum volume of an authorized filling.
- /// Sps Field: `MaxVOL`, type: uint(4)
- /// </summary>
- public uint MaxVolume { get; set; }
- /// <summary>
- /// Associated nozzles of a fueling poing.
- /// </summary>
- public IList<Nozzle> Nozzles { get; set; }
- }
- }
|