123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- using System;
- using System.Collections.Generic;
- #if _SINP
- using Wayne.ForecourtControl.Nfs;
- #endif
- namespace Wayne.ForecourtControl.Fusion
- {
- public class FUSIONTankGroup : ITankGroup
- {
- #region Fields
- FUSIONManager manager;
- int id;
- List<ITank> tanks = new List<ITank>();
- bool blocked;
- int fuelGrade;
- #endregion
- #region Events
- public event EventHandler<FuelDeliveryEventArgs> OnFuelDelivery;
- #endregion
- #region Construction
- public FUSIONTankGroup(FUSIONManager manager, int id, int fuelGrade)
- {
- this.manager = manager;
- this.id = id;
- this.fuelGrade = fuelGrade;
- }
- #endregion
- #region Properties
- public int Id
- {
- get { return id; }
- }
- public System.Collections.ObjectModel.ReadOnlyCollection<ITank> Tanks
- {
- get { return tanks.AsReadOnly(); }
- }
- public bool Blocked
- {
- get { return blocked; }
- }
- public int FuelGrade
- {
- get { return fuelGrade; }
- }
- #endregion
- /*static public ITankGroup getTankGroupByIndex(int iTankGroupId)
- {
- foreach (ITankGroup tankgroup in FUSIONFactory.fusionForecourtControl.TankGroups)
- {
- if (tankgroup.Id == iTankGroupId)
- {
- return tankgroup;
- }
- }
- return null;
- }*/
- #region Methods
- public void BlockAsync(EventHandler<Wayne.Lib.AsyncCompletedEventArgs> blockCompleted, object userToken)
- {
- throw new NotImplementedException();
- }
- public void UnblockAsync(EventHandler<Wayne.Lib.AsyncCompletedEventArgs> unblockCompleted, object userToken)
- {
- throw new NotImplementedException();
- }
- public void RegisterManualDeliveryAsync(IManualFuelDeliveryParameters manualDeliveryParameters, EventHandler<Wayne.Lib.AsyncCompletedEventArgs> deliveryRegistrationCompleted, object userToken)
- {
- throw new NotImplementedException();
- //if (manualDeliveryParameters == null)
- // throw new ArgumentNullException("manualDeliveryParameters");
- //AsyncOperation<UInt16> operation = manager.AsyncManager.RegisterOperation(this, deliveryRegistrationCompleted, userToken);
- ////Get tank number. Get the first tank number of the tank group.
- //int tankNumber = 0;
- //if (tanks.Count > 0)
- // tankNumber = tanks[0].Id + 1;
- //manager.Send(new Function(Fid.RpcReqRegisterManualDelivery,
- // ParserDomain.FillingServer,
- // new PrimitiveParameter(Pid.SequenceNumber, PrimitiveType.Int16, operation.Id),
- // new PrimitiveParameter(Pid.TankDeliveryStartDateTime, PrimitiveType.DateTime, manualDeliveryParameters.StartDateTime),
- // new PrimitiveParameter(Pid.TankDeliveryEndDateTime, PrimitiveType.DateTime, manualDeliveryParameters.EndDateTime),
- // new PrimitiveParameter(Pid.TankNumber, PrimitiveType.Byte, tankNumber),
- // new PrimitiveParameter(Pid.FuelCode, PrimitiveType.Byte, fuelGrade + 1),
- // new PrimitiveParameter(Pid.TankDeliveryVolume, PrimitiveType.Decimal, manualDeliveryParameters.Quantity),
- // new PrimitiveParameter(Pid.TankProductTemp, PrimitiveType.Decimal, manualDeliveryParameters.TruckFuelTemperature),
- // new PrimitiveParameter(Pid.DeliveryNote, PrimitiveType.String, manualDeliveryParameters.ReferenceNote),
- // new PrimitiveParameter(Pid.PlannedVolume, PrimitiveType.Decimal, manualDeliveryParameters.PlannedQuantity),
- // new PrimitiveParameter(Pid.PlantInfo, PrimitiveType.String, manualDeliveryParameters.SourcePlantInfo)));
- }
- #endregion
- #region Writable Properties
- internal List<ITank> WritableTankList
- {
- get { return tanks; }
- }
- internal bool WritableBlocked
- {
- get { return blocked; }
- set { blocked = value; ; }
- }
- #endregion
- #region Event fire methods
- internal void FireOnFuelDelivery(FuelDeliveryEventArgs args)
- {
- if (OnFuelDelivery != null)
- OnFuelDelivery.BeginInvoke(this, args, null, null);
- }
- #endregion
- }
- }
|