using System;
using System.Xml.Serialization;
using System.Collections.Generic;

namespace Top.Api.Response
{
    /// <summary>
    /// TbkDgMaterialOptionalUpgradeResponse.
    /// </summary>
    public class TbkDgMaterialOptionalUpgradeResponse : TopResponse
    {
        /// <summary>
        /// resultList
        /// </summary>
        [XmlArray("result_list")]
        [XmlArrayItem("map_data")]
        public List<MapDataDomain> ResultList { get; set; }

        /// <summary>
        /// 搜索到符合条件的结果总数
        /// </summary>
        [XmlElement("total_results")]
        public long TotalResults { get; set; }

        /// <summary>
        /// uvid结果信息，传入但未使用uvid时会返回原因
        /// </summary>
        [XmlElement("uvid_msg")]
        public string UvidMsg { get; set; }

	/// <summary>
/// TopNInfoDTODomain Data Structure.
/// </summary>
[Serializable]

public class TopNInfoDTODomain : TopObject
{
	        /// <summary>
	        /// 前N件佣金结束时间
	        /// </summary>
	        [XmlElement("topn_end_time")]
	        public string TopnEndTime { get; set; }
	
	        /// <summary>
	        /// 前N件剩余库存
	        /// </summary>
	        [XmlElement("topn_quantity")]
	        public long TopnQuantity { get; set; }
	
	        /// <summary>
	        /// 前N件佣金率
	        /// </summary>
	        [XmlElement("topn_rate")]
	        public string TopnRate { get; set; }
	
	        /// <summary>
	        /// 前N件佣金开始时间
	        /// </summary>
	        [XmlElement("topn_start_time")]
	        public string TopnStartTime { get; set; }
	
	        /// <summary>
	        /// 前N件初始总库存
	        /// </summary>
	        [XmlElement("topn_total_count")]
	        public long TopnTotalCount { get; set; }
}

	/// <summary>
/// SpCampaignDomain Data Structure.
/// </summary>
[Serializable]

public class SpCampaignDomain : TopObject
{
	        /// <summary>
	        /// 定向计划申请链接
	        /// </summary>
	        [XmlElement("sp_apply_link")]
	        public string SpApplyLink { get; set; }
	
	        /// <summary>
	        /// 定向计划活动ID
	        /// </summary>
	        [XmlElement("sp_cid")]
	        public string SpCid { get; set; }
	
	        /// <summary>
	        /// 定向是否锁佣，0=不锁佣 1=锁佣
	        /// </summary>
	        [XmlElement("sp_lock_status")]
	        public string SpLockStatus { get; set; }
	
	        /// <summary>
	        /// 定向计划名称
	        /// </summary>
	        [XmlElement("sp_name")]
	        public string SpName { get; set; }
	
	        /// <summary>
	        /// 定向佣金率
	        /// </summary>
	        [XmlElement("sp_rate")]
	        public string SpRate { get; set; }
	
	        /// <summary>
	        /// 定向计划是否可用 1-可用 0-不可用
	        /// </summary>
	        [XmlElement("sp_status")]
	        public string SpStatus { get; set; }
}

	/// <summary>
/// FinalIncomeInfoDomain Data Structure.
/// </summary>
[Serializable]

public class FinalIncomeInfoDomain : TopObject
{
	        /// <summary>
	        /// 商品佣金金额
	        /// </summary>
	        [XmlElement("commission_amount")]
	        public string CommissionAmount { get; set; }
	
	        /// <summary>
	        /// 商品佣金比率
	        /// </summary>
	        [XmlElement("commission_rate")]
	        public string CommissionRate { get; set; }
	
	        /// <summary>
	        /// 补贴金额
	        /// </summary>
	        [XmlElement("subsidy_amount")]
	        public string SubsidyAmount { get; set; }
	
	        /// <summary>
	        /// 补贴比率
	        /// </summary>
	        [XmlElement("subsidy_rate")]
	        public string SubsidyRate { get; set; }
	
	        /// <summary>
	        /// 补贴类型
	        /// </summary>
	        [XmlElement("subsidy_type")]
	        public string SubsidyType { get; set; }
	
	        /// <summary>
	        /// 补贴上限；仅在单笔订单命中补贴上限时返回结果否则出参为空
	        /// </summary>
	        [XmlElement("subsidy_upper_limit")]
	        public string SubsidyUpperLimit { get; set; }
}

	/// <summary>
/// PublishInfoDomain Data Structure.
/// </summary>
[Serializable]

public class PublishInfoDomain : TopObject
{
	        /// <summary>
	        /// 链接-宝贝推广链接
	        /// </summary>
	        [XmlElement("click_url")]
	        public string ClickUrl { get; set; }
	
	        /// <summary>
	        /// 推广信息-商品信息-佣金类型。MKT表示营销计划，SP表示定向计划，COMMON表示通用计划，ZX表示自选计划
	        /// </summary>
	        [XmlElement("commission_type")]
	        public string CommissionType { get; set; }
	
	        /// <summary>
	        /// 链接-宝贝+券二合一页面链接   
	        /// </summary>
	        [XmlElement("coupon_share_url")]
	        public string CouponShareUrl { get; set; }
	
	        /// <summary>
	        /// 额外奖励活动金额，活动奖励金额的类型与cpa_reward_type字段对应，如果一个商品有多个奖励类型，返回结果使用空格分割
	        /// </summary>
	        [XmlElement("cpa_reward_amount")]
	        public string CpaRewardAmount { get; set; }
	
	        /// <summary>
	        /// 额外奖励活动类型，如果一个商品有多个奖励类型，返回结果使用空格分割，0=预售单单奖励，1=618超级U选单单补
	        /// </summary>
	        [XmlElement("cpa_reward_type")]
	        public string CpaRewardType { get; set; }
	
	        /// <summary>
	        /// 预热活动到手价对应的佣金比率
	        /// </summary>
	        [XmlElement("future_activity_commission_rate")]
	        public string FutureActivityCommissionRate { get; set; }
	
	        /// <summary>
	        /// 预热价活动开始时间
	        /// </summary>
	        [XmlElement("future_activity_time")]
	        public string FutureActivityTime { get; set; }
	
	        /// <summary>
	        /// 商品是否包含定向计划
	        /// </summary>
	        [XmlElement("include_dxjh")]
	        public string IncludeDxjh { get; set; }
	
	        /// <summary>
	        /// 商品佣金信息
	        /// </summary>
	        [XmlElement("income_info")]
	        public FinalIncomeInfoDomain IncomeInfo { get; set; }
	
	        /// <summary>
	        /// 商品信息-收入比率(%)；商品佣金比率+补贴比率
	        /// </summary>
	        [XmlElement("income_rate")]
	        public string IncomeRate { get; set; }
	
	        /// <summary>
	        /// 榜单url
	        /// </summary>
	        [XmlElement("rank_page_url")]
	        public string RankPageUrl { get; set; }
	
	        /// <summary>
	        /// 定向计划集合-仅支持联系商务或运营小二申请定向计划合集字段权限
	        /// </summary>
	        [XmlArray("sp_campaign_list")]
	        [XmlArrayItem("sp_campaign")]
	        public List<SpCampaignDomain> SpCampaignList { get; set; }
	
	        /// <summary>
	        /// 前N件佣金信息-前N件佣金生效或预热时透出以下字段
	        /// </summary>
	        [XmlElement("topn_info")]
	        public TopNInfoDTODomain TopnInfo { get; set; }
}

	/// <summary>
/// MorePromotionMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class MorePromotionMapDataDomain : TopObject
{
	        /// <summary>
	        /// 优惠利益点文案，如“1件7.92折”、“每200减20”等
	        /// </summary>
	        [XmlElement("promotion_desc")]
	        public string PromotionDesc { get; set; }
	
	        /// <summary>
	        /// 优惠结束时间
	        /// </summary>
	        [XmlElement("promotion_end_time")]
	        public string PromotionEndTime { get; set; }
	
	        /// <summary>
	        /// 优惠ID
	        /// </summary>
	        [XmlElement("promotion_id")]
	        public string PromotionId { get; set; }
	
	        /// <summary>
	        /// 优惠开始时间
	        /// </summary>
	        [XmlElement("promotion_start_time")]
	        public string PromotionStartTime { get; set; }
	
	        /// <summary>
	        /// 优惠名称，如“商品券”、“跨店满减”、“单品直降”等
	        /// </summary>
	        [XmlElement("promotion_title")]
	        public string PromotionTitle { get; set; }
}

	/// <summary>
/// FinalPromotionPathMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class FinalPromotionPathMapDataDomain : TopObject
{
	        /// <summary>
	        /// 优惠利益点文案，如“1件7.92折”、“每200减20”等
	        /// </summary>
	        [XmlElement("promotion_desc")]
	        public string PromotionDesc { get; set; }
	
	        /// <summary>
	        /// 优惠结束时间
	        /// </summary>
	        [XmlElement("promotion_end_time")]
	        public string PromotionEndTime { get; set; }
	
	        /// <summary>
	        /// 实际优惠金额（元）
	        /// </summary>
	        [XmlElement("promotion_fee")]
	        public string PromotionFee { get; set; }
	
	        /// <summary>
	        /// 优惠ID
	        /// </summary>
	        [XmlElement("promotion_id")]
	        public string PromotionId { get; set; }
	
	        /// <summary>
	        /// 优惠开始时间
	        /// </summary>
	        [XmlElement("promotion_start_time")]
	        public string PromotionStartTime { get; set; }
	
	        /// <summary>
	        /// 优惠名称，如“商品券”、“跨店满减”、“单品直降”等   
	        /// </summary>
	        [XmlElement("promotion_title")]
	        public string PromotionTitle { get; set; }
}

	/// <summary>
/// FutureActivityPromotionPathMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class FutureActivityPromotionPathMapDataDomain : TopObject
{
	        /// <summary>
	        /// 预热优惠利益点文案，如“1件7.92折”、“每200减20”等
	        /// </summary>
	        [XmlElement("promotion_desc")]
	        public string PromotionDesc { get; set; }
	
	        /// <summary>
	        /// 优惠结束时间
	        /// </summary>
	        [XmlElement("promotion_end_time")]
	        public string PromotionEndTime { get; set; }
	
	        /// <summary>
	        /// 预热实际优惠金额（元）
	        /// </summary>
	        [XmlElement("promotion_fee")]
	        public string PromotionFee { get; set; }
	
	        /// <summary>
	        /// 优惠开始时间
	        /// </summary>
	        [XmlElement("promotion_start_time")]
	        public string PromotionStartTime { get; set; }
	
	        /// <summary>
	        /// 优惠名称，如“商品券”、“跨店满减”、“单品直降”等   
	        /// </summary>
	        [XmlElement("promotion_title")]
	        public string PromotionTitle { get; set; }
}

	/// <summary>
/// PromotionTagMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class PromotionTagMapDataDomain : TopObject
{
	        /// <summary>
	        /// 标签名称，如“88VIP”、“花呗免息”、“猫超买返”、“是否包邮”
	        /// </summary>
	        [XmlElement("tag_name")]
	        public string TagName { get; set; }
}

	/// <summary>
/// PromotionInfoMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class PromotionInfoMapDataDomain : TopObject
{
	        /// <summary>
	        /// 到手价优惠路径列表
	        /// </summary>
	        [XmlArray("final_promotion_path_list")]
	        [XmlArrayItem("final_promotion_path_map_data")]
	        public List<FinalPromotionPathMapDataDomain> FinalPromotionPathList { get; set; }
	
	        /// <summary>
	        /// 促销信息-预估到手价(元)。若属于预售商品，付定金时间内，预估到手价价=定金+尾款的预估到手价
	        /// </summary>
	        [XmlElement("final_promotion_price")]
	        public string FinalPromotionPrice { get; set; }
	
	        /// <summary>
	        /// 预热到手价优惠路径列表
	        /// </summary>
	        [XmlArray("future_activity_promotion_path_list")]
	        [XmlArrayItem("future_activity_promotion_path_map_data")]
	        public List<FutureActivityPromotionPathMapDataDomain> FutureActivityPromotionPathList { get; set; }
	
	        /// <summary>
	        /// 预热预估到手价（元）
	        /// </summary>
	        [XmlElement("future_activity_promotion_price")]
	        public string FutureActivityPromotionPrice { get; set; }
	
	        /// <summary>
	        /// 更多活动优惠
	        /// </summary>
	        [XmlArray("more_promotion_list")]
	        [XmlArrayItem("more_promotion_map_data")]
	        public List<MorePromotionMapDataDomain> MorePromotionList { get; set; }
	
	        /// <summary>
	        /// 促销信息-预估凑单价（元）。预估凑单叠加优惠后的商品单价
	        /// </summary>
	        [XmlElement("predict_rounding_up_price")]
	        public string PredictRoundingUpPrice { get; set; }
	
	        /// <summary>
	        /// 促销信息-凑单价说明，描述凑单价的实现说明。如 “可凑单”或“需买X件”
	        /// </summary>
	        [XmlElement("predict_rounding_up_price_desc")]
	        public string PredictRoundingUpPriceDesc { get; set; }
	
	        /// <summary>
	        /// 标签信息列表
	        /// </summary>
	        [XmlArray("promotion_tag_list")]
	        [XmlArrayItem("promotion_tag_map_data")]
	        public List<PromotionTagMapDataDomain> PromotionTagList { get; set; }
	
	        /// <summary>
	        /// 商品信息-一口价通常显示为划线价
	        /// </summary>
	        [XmlElement("reserve_price")]
	        public string ReservePrice { get; set; }
	
	        /// <summary>
	        /// 促销信息-销售价格，无促销时等于一口价，有促销时为促销价。若属于预售商品，付定金时间内，在线售卖价=预售价
	        /// </summary>
	        [XmlElement("zk_final_price")]
	        public string ZkFinalPrice { get; set; }
}

	/// <summary>
/// BasicMapDataDomain Data Structure.
/// </summary>
[Serializable]

public class BasicMapDataDomain : TopObject
{
	        /// <summary>
	        /// 年销量
	        /// </summary>
	        [XmlElement("annual_vol")]
	        public string AnnualVol { get; set; }
	
	        /// <summary>
	        /// 商品信息-品牌名称
	        /// </summary>
	        [XmlElement("brand_name")]
	        public string BrandName { get; set; }
	
	        /// <summary>
	        /// 商品信息-叶子类目id
	        /// </summary>
	        [XmlElement("category_id")]
	        public long CategoryId { get; set; }
	
	        /// <summary>
	        /// 商品信息-叶子类目名称
	        /// </summary>
	        [XmlElement("category_name")]
	        public string CategoryName { get; set; }
	
	        /// <summary>
	        /// 商品信息-一级类目ID
	        /// </summary>
	        [XmlElement("level_one_category_id")]
	        public long LevelOneCategoryId { get; set; }
	
	        /// <summary>
	        /// 商品信息-一级类目名称
	        /// </summary>
	        [XmlElement("level_one_category_name")]
	        public string LevelOneCategoryName { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品主图
	        /// </summary>
	        [XmlElement("pict_url")]
	        public string PictUrl { get; set; }
	
	        /// <summary>
	        /// 商品信息-宝贝所在地
	        /// </summary>
	        [XmlElement("provcity")]
	        public string Provcity { get; set; }
	
	        /// <summary>
	        /// 商品邮费
	        /// </summary>
	        [XmlElement("real_post_fee")]
	        public string RealPostFee { get; set; }
	
	        /// <summary>
	        /// 店铺信息-卖家id
	        /// </summary>
	        [XmlElement("seller_id")]
	        public long SellerId { get; set; }
	
	        /// <summary>
	        /// 店铺信息-店铺名称
	        /// </summary>
	        [XmlElement("shop_title")]
	        public string ShopTitle { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品短标题
	        /// </summary>
	        [XmlElement("short_title")]
	        public string ShortTitle { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品小图列表
	        /// </summary>
	        [XmlArray("small_images")]
	        [XmlArrayItem("string")]
	        public List<string> SmallImages { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品子标题
	        /// </summary>
	        [XmlElement("sub_title")]
	        public string SubTitle { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品标题
	        /// </summary>
	        [XmlElement("title")]
	        public string Title { get; set; }
	
	        /// <summary>
	        /// 商品信息-淘客30天推广量
	        /// </summary>
	        [XmlElement("tk_total_sales")]
	        public string TkTotalSales { get; set; }
	
	        /// <summary>
	        /// 店铺信息-卖家类型，0表示淘宝，1表示天猫，3表示特价版
	        /// </summary>
	        [XmlElement("user_type")]
	        public long UserType { get; set; }
	
	        /// <summary>
	        /// 商品信息-30天销量；数据统计截止昨日非实时更新
	        /// </summary>
	        [XmlElement("volume")]
	        public long Volume { get; set; }
	
	        /// <summary>
	        /// 商品信息-商品白底图
	        /// </summary>
	        [XmlElement("white_image")]
	        public string WhiteImage { get; set; }
}

	/// <summary>
/// TmallRankInfoDomain Data Structure.
/// </summary>
[Serializable]

public class TmallRankInfoDomain : TopObject
{
	        /// <summary>
	        /// 榜单排行描述
	        /// </summary>
	        [XmlElement("tmall_rank_text")]
	        public string TmallRankText { get; set; }
	
	        /// <summary>
	        /// 榜单url
	        /// </summary>
	        [XmlElement("tmall_rank_url")]
	        public string TmallRankUrl { get; set; }
}

	/// <summary>
/// PresaleInfoDomain Data Structure.
/// </summary>
[Serializable]

public class PresaleInfoDomain : TopObject
{
	        /// <summary>
	        /// 预售商品-定金（元）
	        /// </summary>
	        [XmlElement("presale_deposit")]
	        public string PresaleDeposit { get; set; }
	
	        /// <summary>
	        /// 预售商品-优惠信息
	        /// </summary>
	        [XmlElement("presale_discount_fee_text")]
	        public string PresaleDiscountFeeText { get; set; }
	
	        /// <summary>
	        /// 预售商品-付定金结束时间（毫秒）
	        /// </summary>
	        [XmlElement("presale_end_time")]
	        public long PresaleEndTime { get; set; }
	
	        /// <summary>
	        /// 预售商品-付定金开始时间（毫秒）
	        /// </summary>
	        [XmlElement("presale_start_time")]
	        public long PresaleStartTime { get; set; }
	
	        /// <summary>
	        /// 预售商品-付尾款结束时间（毫秒）
	        /// </summary>
	        [XmlElement("presale_tail_end_time")]
	        public long PresaleTailEndTime { get; set; }
	
	        /// <summary>
	        /// 预售商品-付尾款开始时间（毫秒）
	        /// </summary>
	        [XmlElement("presale_tail_start_time")]
	        public long PresaleTailStartTime { get; set; }
}

	/// <summary>
/// ScopeInfoDomain Data Structure.
/// </summary>
[Serializable]

public class ScopeInfoDomain : TopObject
{
	        /// <summary>
	        /// 是否品牌精选，0不是，1是
	        /// </summary>
	        [XmlElement("superior_brand")]
	        public string SuperiorBrand { get; set; }
}

	/// <summary>
/// MgcInfoDomain Data Structure.
/// </summary>
[Serializable]

public class MgcInfoDomain : TopObject
{
	        /// <summary>
	        /// 价格
	        /// </summary>
	        [XmlElement("price")]
	        public string Price { get; set; }
	
	        /// <summary>
	        /// 价格描述
	        /// </summary>
	        [XmlElement("price_desc")]
	        public string PriceDesc { get; set; }
	
	        /// <summary>
	        /// 文案
	        /// </summary>
	        [XmlElement("promotion_summary")]
	        public string PromotionSummary { get; set; }
	
	        /// <summary>
	        /// 发布时间，13位毫秒时间戳
	        /// </summary>
	        [XmlElement("publish_time")]
	        public string PublishTime { get; set; }
	
	        /// <summary>
	        /// 生效时间，实时线报为0，未来线报为13位毫秒时间戳
	        /// </summary>
	        [XmlElement("valid_time")]
	        public string ValidTime { get; set; }
}

	/// <summary>
/// MapDataDomain Data Structure.
/// </summary>
[Serializable]

public class MapDataDomain : TopObject
{
	        /// <summary>
	        /// 物料评估-收益分
	        /// </summary>
	        [XmlElement("commi_score")]
	        public string CommiScore { get; set; }
	
	        /// <summary>
	        /// 商品基础信息
	        /// </summary>
	        [XmlElement("item_basic_info")]
	        public BasicMapDataDomain ItemBasicInfo { get; set; }
	
	        /// <summary>
	        /// 商品信息-淘宝客新商品id；使用说明参考《淘宝客新商品ID升级》白皮书：https://www.yuque.com/taobaolianmengguanfangxiaoer/zmig94/tfyt0pahmlpzu2ud
	        /// </summary>
	        [XmlElement("item_id")]
	        public string ItemId { get; set; }
	
	        /// <summary>
	        /// 物料评估-匹配分
	        /// </summary>
	        [XmlElement("match_score")]
	        public string MatchScore { get; set; }
	
	        /// <summary>
	        /// 线报内容
	        /// </summary>
	        [XmlElement("mgc_info")]
	        public MgcInfoDomain MgcInfo { get; set; }
	
	        /// <summary>
	        /// 预售信息
	        /// </summary>
	        [XmlElement("presale_info")]
	        public PresaleInfoDomain PresaleInfo { get; set; }
	
	        /// <summary>
	        /// 价格促销信息
	        /// </summary>
	        [XmlElement("price_promotion_info")]
	        public PromotionInfoMapDataDomain PricePromotionInfo { get; set; }
	
	        /// <summary>
	        /// 淘客推广信息
	        /// </summary>
	        [XmlElement("publish_info")]
	        public PublishInfoDomain PublishInfo { get; set; }
	
	        /// <summary>
	        /// 商品库范围信息
	        /// </summary>
	        [XmlElement("scope_info")]
	        public ScopeInfoDomain ScopeInfo { get; set; }
	
	        /// <summary>
	        /// 天猫榜单信息
	        /// </summary>
	        [XmlElement("tmall_rank_info")]
	        public TmallRankInfoDomain TmallRankInfo { get; set; }
}

    }
}
