namespace Wayne.FDCPOSLibrary
{
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlRootAttribute(ElementName = "ServiceRequest", Namespace = "")]
    public partial class ServiceRequestChangeFuelPrice : ServiceRequest
    {
        private ServiceRequestPOSdataChangeFuelPrice[] pOSdataField;

        [System.Xml.Serialization.XmlElementAttribute("POSdata", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceRequestPOSdataChangeFuelPrice[] POSdata
        {
            get
            {
                return this.pOSdataField;
            }
            set
            {
                this.pOSdataField = value;
            }
        }

        public ServiceRequestChangeFuelPrice()
        {
            RequestType = "ChangeFuelPrice";
        }
    }

    [System.SerializableAttribute()]
    public partial class ServiceRequestPOSdataChangeFuelPrice
    {
        private string pOSTimeStampField;
        private ServiceRequestProductChangeFuelPrice[] ProductField;


        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string POSTimeStamp
        {
            get
            {
                return this.pOSTimeStampField;
            }
            set
            {
                this.pOSTimeStampField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute("Product", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceRequestProductChangeFuelPrice[] Product
        {
            get
            {
                return this.ProductField;
            }
            set
            {
                this.ProductField = value;
            }
        }

    }


    [System.SerializableAttribute()]
    public partial class ServiceRequestProductChangeFuelPrice
    {
        private string ProductNoField;
        private string ModeNoField; // v03 field
        private ServiceRequestFuelModeChangeFuelPrice[] FuelModeField; // v05 and next field
        private string PriceNewField;
        private string EffectiveDateTimeField;


        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string ProductNo
        {
            get
            {
                return this.ProductNoField;
            }
            set
            {
                this.ProductNoField = value;
            }
        }

        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string ModeNo
        {
            get
            {
                return this.ModeNoField;
            }
            set
            {
                this.ModeNoField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute("FuelMode", Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public ServiceRequestFuelModeChangeFuelPrice[] FuelMode
        {
            get
            {
                return this.FuelModeField;
            }
            set
            {
                this.FuelModeField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string PriceNew
        {
            get
            {
                return this.PriceNewField;
            }
            set
            {
                this.PriceNewField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string EffectiveDateTime
        {
            get
            {
                return this.EffectiveDateTimeField;
            }
            set
            {
                this.EffectiveDateTimeField = value;
            }
        }   
    }

    [System.SerializableAttribute()]
    public partial class ServiceRequestFuelModeChangeFuelPrice
    {
        private string ModeNoField;
        private string PriceNewField;
        private string EffectiveDateTimeField;


        [System.Xml.Serialization.XmlAttributeAttribute("ModeNo")]
        public string ModeNo
        {
            get
            {
                return this.ModeNoField;
            }
            set
            {
                this.ModeNoField = value;
            }
        }
        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string PriceNew
        {
            get
            {
                return this.PriceNewField;
            }
            set
            {
                this.PriceNewField = value;
            }
        }

        [System.Xml.Serialization.XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string EffectiveDateTime
        {
            get
            {
                return this.EffectiveDateTimeField;
            }
            set
            {
                this.EffectiveDateTimeField = value;
            }
        }  
    }
}