using Edge.Core.IndustryStandardInterface.ATG;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;

namespace Application.ATG_Classic_App.Model
{
    public class Inventory
    {
        public static Inventory From(int tankNumber, TankReading tankReading, DateTime readingTime)
        {
            var result = new Inventory();
            result.TankNumber = tankNumber;
            result.TimeStamp = readingTime;
            result.FuelHeight = tankReading.Height ?? -1;
            result.FuelVolume = tankReading.Volume ?? -1;
            result.FuelTCVolume = tankReading.TcVolume ?? -1;
            result.WaterHeight = tankReading.Water ?? -1;
            result.Temperture = tankReading.Temperature ?? double.MinValue;
            return result;
        }

        [Key]
        public int Id { get; set; }

        public int TankNumber { get; set; }

        public DateTime TimeStamp { get; set; }
        public double FuelHeight { get; set; }
        public double FuelVolume { get; set; }
        public double FuelTCVolume { get; set; }

        public double WaterHeight { get; set; }

        public double Temperture { get; set; }

        public string Description { get; set; }
    }
}