IForecourtConfiguration.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System.Collections.Generic;
  2. namespace Wayne.ForecourtControl
  3. {
  4. public interface IForecourtConfiguration
  5. {
  6. IEnumerable<IPumpConfiguration> Pumps { get; }
  7. IEnumerable<ITankConfiguration> Tanks { get; }
  8. IEnumerable<ITankSuctionConfiguration> TankSuctions { get; }
  9. IEnumerable<IFuelProductConfiguration> Products { get; }
  10. IEnumerable<IFuelGradeConfiguration> Grades { get; }
  11. IEnumerable<IFuelGradeConfiguration> GetPumpGrades(IDeviceIndex pump);
  12. IEnumerable<ITankMonitorConfiguration> TankMonitors { get; }
  13. IEnumerable<IPricePoleConfiguration> PricePoles { get; }
  14. IEnumerable<IFuelPrice> Prices { get; }
  15. int GetFuelMode(FuellingType fuellingType, PriceGroup priceGroup);
  16. int GetFuelMode(PriceGroup priceGroup, bool authInAdvance);
  17. int GetFuelMode(FuellingType fuellingType);
  18. int GetDefaultFuelMode(PriceGroup priceGroup);
  19. IEnumerable<int> GetFuelModes(PriceGroup priceGroup);
  20. PriceGroup GetPriceGroup(int fuelMode, FuellingType fuellingType);
  21. IEnumerable<int> GetPriceGroups(int fuelMode);
  22. FuellingType GetFuellingType(int fuelMode, PriceGroup priceGroup);
  23. bool WriteFuelPrice(int productId, int fuelMode, decimal newPrice);
  24. event AsyncCompletedEventHandler OnConfigurationChange;
  25. }
  26. }