12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- using Censtar_31064V105OrV106_Pump.MessageEntity.Incoming;
- using Edge.Core.Parser.BinaryParser;
- using Edge.Core.Parser.BinaryParser.MessageEntity;
- namespace Censtar_31064V105OrV106_Pump
- {
- /// <summary>
- /// </summary>
- public class MessageTemplateLookup : IMessageTemplateLookup
- {
- /// <summary>
- ///
- /// </summary>
- /// <param name="bytes">同步头: 3 Byte。 所有命令和应答均以 3 个 0FCH 为同步头。命令: 1 Byte</param>
- /// <returns></returns>
- public MessageTemplateBase GetMessageTemplateByRawBytes(byte[] bytes)
- {
- var cmd = bytes[3];
- switch (cmd)
- {
- case 0x00:
- return new GenericErrorAnswer();
- case 0x02:
- return new PresetAmountAnswer();
- case 0x03:
- return new ChangePriceAnswer();
- case 0x04:
- return new SetDensityAnswer();
- case 0x05:
- return new StopAnswer();
- case 0x06:
- return new StartAnswer();
- case 0x07:
- return new SetMonitoringModeAnswer();
- case 0x08:
- return new ReadTotalizerAnswer();
- case 0x09:
- return new CancelPresetAnswer();
- case 0x0E:
- return new ReadCoefficientOfFlowRateAnswer();
- case 0x10:
- return new ReadUnitOfMeasurementAnswer();
- case 0x12:
- return new SetDateAndTimeAnswer();
- case 0x13:
- return new ConsoleAllowDispenserForTrialAnswer();
- case 0x14:
- return new StopTrialAnswer();
- case 0x15:
- return new ReadVersionAnswer();
- case 0x17:
- return new InformToUnlockAnswer();
- case 0x31:
- return new SetPostFuelingLockTypeAnswer();
- case 0x32:
- return new RegistrationOfShiftTransferAnswer();
- case 0x33:
- return new SetAllowFuelingOrNotWhenOffDutyAnswer();
- case 0x34:
- return new ReadRealTimeFuelingDataInPumpFuelingStateAnswer();
- case 0x35:
- return new ReadRealTimeFuelingVolumeDataInPumpNonFuelingStateAnswer();
- case 0x36:
- return new ReadTransactionDataAndHasDataAnswer();
- case 0x38:
- return new ReadTransactionDataAndHasNoDataAnswer();
- //case 0x37:
- // return new ConsoleOnlyForReadAvailableTransactionDataAnswer();
- }
- return null;
- }
- }
- }
|