using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Xml.Serialization;
namespace HakanSoftwareAPI.Models
{
[XmlRoot(ElementName = "auth")]
public class Auth
{
[XmlElement(ElementName = "appKey")]
public string AppKey { get; set; }
[XmlElement(ElementName = "appSecret")]
public string AppSecret { get; set; }
}
[XmlRoot(ElementName = "category")]
public class Category
{
[XmlElement(ElementName = "id")]
public string Id { get; set; }
}
[XmlRoot(ElementName = "image")]
public class Image
{
[XmlElement(ElementName = "url")]
public string Url { get; set; }
[XmlElement(ElementName = "order")]
public string Order { get; set; }
}
[XmlRoot(ElementName = "images")]
public class Images
{
[XmlElement(ElementName = "image")]
public Image Image { get; set; }
}
[XmlRoot(ElementName = "attribute")]
public class Attribute
{
[XmlElement(ElementName = "name")]
public string Name { get; set; }
[XmlElement(ElementName = "value")]
public string Value { get; set; }
}
[XmlRoot(ElementName = "attributes")]
public class Attributes
{
[XmlElement(ElementName = "attribute")]
public List<Attribute> Attribute { get; set; }
}
[XmlRoot(ElementName = "discount")]
public class Discount
{
[XmlElement(ElementName = "startDate")]
public string StartDate { get; set; }
[XmlElement(ElementName = "endDate")]
public string EndDate { get; set; }
[XmlElement(ElementName = "type")]
public string Type { get; set; }
[XmlElement(ElementName = "value")]
public string Value { get; set; }
}
[XmlRoot(ElementName = "stockItem")]
public class StockItem
{
[XmlElement(ElementName = "bundle")]
public string Bundle { get; set; }
[XmlElement(ElementName = "mpn")]
public string Mpn { get; set; }
[XmlElement(ElementName = "gtin")]
public string Gtin { get; set; }
[XmlElement(ElementName = "quantity")]
public string Quantity { get; set; }
[XmlElement(ElementName = "sellerStockCode")]
public string SellerStockCode { get; set; }
[XmlElement(ElementName = "optionPrice")]
public string OptionPrice { get; set; }
}
[XmlRoot(ElementName = "stockItems")]
public class StockItems
{
[XmlElement(ElementName = "stockItem")]
public StockItem StockItem { get; set; }
}
[XmlRoot(ElementName = "product")]
public class Product
{
[XmlElement(ElementName = "productSellerCode")]
public string ProductSellerCode { get; set; }
[XmlElement(ElementName = "title")]
public string Title { get; set; }
[XmlElement(ElementName = "subtitle")]
public string Subtitle { get; set; }
[XmlElement(ElementName = "description")]
public string Description { get; set; }
[XmlElement(ElementName = "category")]
public Category Category { get; set; }
[XmlElement(ElementName = "specialProductInfoList")]
public string SpecialProductInfoList { get; set; }
[XmlElement(ElementName = "price")]
public string Price { get; set; }
[XmlElement(ElementName = "currencyType")]
public string CurrencyType { get; set; }
[XmlElement(ElementName = "images")]
public Images Images { get; set; }
[XmlElement(ElementName = "approvalStatus")]
public string ApprovalStatus { get; set; }
[XmlElement(ElementName = "attributes")]
public Attributes Attributes { get; set; }
[XmlElement(ElementName = "saleStartDate")]
public string SaleStartDate { get; set; }
[XmlElement(ElementName = "saleEndDate")]
public string SaleEndDate { get; set; }
[XmlElement(ElementName = "productionDate")]
public string ProductionDate { get; set; }
[XmlElement(ElementName = "expirationDate")]
public string ExpirationDate { get; set; }
[XmlElement(ElementName = "productCondition")]
public string ProductCondition { get; set; }
[XmlElement(ElementName = "preparingDay")]
public string PreparingDay { get; set; }
[XmlElement(ElementName = "discount")]
public Discount Discount { get; set; }
[XmlElement(ElementName = "shipmentTemplate")]
public string ShipmentTemplate { get; set; }
[XmlElement(ElementName = "stockItems")]
public StockItems StockItems { get; set; }
}
[XmlRoot(ElementName = "SaveProductRequest", Namespace = "http://www.n11.com/ws/schemas")]
public class SaveProductRequest
{
[XmlElement(ElementName = "auth")]
public Auth Auth { get; set; }
[XmlElement(ElementName = "product")]
public Product Product { get; set; }
}
[XmlRoot(ElementName = "Body", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
public class Body
{
[XmlElement(ElementName = "SaveProductRequest", Namespace = "http://www.n11.com/ws/schemas")]
public SaveProductRequest SaveProductRequest { get; set; }
}
[XmlRoot(ElementName = "Envelope", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
public class Envelope
{
[XmlElement(ElementName = "Header", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
public string Header { get; set; }
[XmlElement(ElementName = "Body", Namespace = "http://schemas.xmlsoap.org/soap/envelope/")]
public Body Body { get; set; }
[XmlAttribute(AttributeName = "soapenv", Namespace = "http://www.w3.org/2000/xmlns/")]
public string Soapenv { get; set; }
[XmlAttribute(AttributeName = "sch", Namespace = "http://www.w3.org/2000/xmlns/")]
public string Sch { get; set; }
}
}