OpenmallTradeGetResponse.cs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378
  1. using System;
  2. using System.Xml.Serialization;
  3. using System.Collections.Generic;
  4. namespace Top.Api.Response
  5. {
  6. /// <summary>
  7. /// OpenmallTradeGetResponse.
  8. /// </summary>
  9. public class OpenmallTradeGetResponse : TopResponse
  10. {
  11. /// <summary>
  12. /// 返回结果
  13. /// </summary>
  14. [XmlElement("result")]
  15. public TopTradeDetailVoDomain Result { get; set; }
  16. /// <summary>
  17. /// TopOrderVoDomain Data Structure.
  18. /// </summary>
  19. [Serializable]
  20. public class TopOrderVoDomain : TopObject
  21. {
  22. /// <summary>
  23. /// 子订单发货时间,当卖家对订单进行了多次发货,子订单的发货时间和主订单的发货时间可能不一样了,那么就需要以子订单的时间为准。(没有进行多次发货的订单,主订单的发货时间和子订单的发货时间都一样)
  24. /// </summary>
  25. [XmlElement("consign_time")]
  26. public string ConsignTime { get; set; }
  27. /// <summary>
  28. /// 子订单的交易结束时间说明:子订单有单独的结束时间,与主订单的结束时间可能有所不同,在有退款发起的时候或者是主订单分阶段付款的时候,子订单的结束时间会早于主订单的结束时间,所以开放这个字段便于订单结束状态的判断
  29. /// </summary>
  30. [XmlElement("end_time")]
  31. public string EndTime { get; set; }
  32. /// <summary>
  33. /// 子订单预计发货时间
  34. /// </summary>
  35. [XmlElement("estimate_con_time")]
  36. public string EstimateConTime { get; set; }
  37. /// <summary>
  38. /// 子订单包裹运输号
  39. /// </summary>
  40. [XmlElement("invoice_no")]
  41. public string InvoiceNo { get; set; }
  42. /// <summary>
  43. /// 是否发货
  44. /// </summary>
  45. [XmlElement("is_sh_ship")]
  46. public bool IsShShip { get; set; }
  47. /// <summary>
  48. /// 商品备注
  49. /// </summary>
  50. [XmlElement("item_memo")]
  51. public string ItemMemo { get; set; }
  52. /// <summary>
  53. /// 物流公司名称
  54. /// </summary>
  55. [XmlElement("logistics_company")]
  56. public string LogisticsCompany { get; set; }
  57. /// <summary>
  58. /// 购买数量。取值范围:大于零的整数
  59. /// </summary>
  60. [XmlElement("num")]
  61. public long Num { get; set; }
  62. /// <summary>
  63. /// 商品数字ID
  64. /// </summary>
  65. [XmlElement("num_iid")]
  66. public long NumIid { get; set; }
  67. /// <summary>
  68. /// 子订单编号
  69. /// </summary>
  70. [XmlElement("oid")]
  71. public long Oid { get; set; }
  72. /// <summary>
  73. /// 外部网店自己定义的Sku编号
  74. /// </summary>
  75. [XmlElement("outer_sku_id")]
  76. public string OuterSkuId { get; set; }
  77. /// <summary>
  78. /// 子订单实付金额。精确到2位小数,单位:元。如:200.07,表示:200元7分。对于多子订单的交易,计算公式如下:payment = price * num + adjust_fee - discount_fee ;单子订单交易,payment与主订单的payment一致,对于退款成功的子订单,由于主订单的优惠分摊金额,会造成该字段可能不为0.00元。建议使用退款前的实付金额减去退款单中的实际退款金额计算。
  79. /// </summary>
  80. [XmlElement("payment")]
  81. public string Payment { get; set; }
  82. /// <summary>
  83. /// 商品价格。精确到2位小数;单位:元。如:200.07,表示:200元7分
  84. /// </summary>
  85. [XmlElement("price")]
  86. public string Price { get; set; }
  87. /// <summary>
  88. /// 最近退款ID
  89. /// </summary>
  90. [XmlElement("refund_id")]
  91. public long RefundId { get; set; }
  92. /// <summary>
  93. /// 退款状态。退款状态。可选值 WAIT_SELLER_AGREE(买家已经申请退款,等待卖家同意) WAIT_BUYER_RETURN_GOODS(卖家已经同意退款,等待买家退货) WAIT_SELLER_CONFIRM_GOODS(买家已经退货,等待卖家确认收货) SELLER_REFUSE_BUYER(卖家拒绝退款) CLOSED(退款关闭) SUCCESS(退款成功)
  94. /// </summary>
  95. [XmlElement("refund_status")]
  96. public string RefundStatus { get; set; }
  97. /// <summary>
  98. /// 商品SKUID
  99. /// </summary>
  100. [XmlElement("sku_id")]
  101. public string SkuId { get; set; }
  102. /// <summary>
  103. /// SKU的值。如:机身颜色:黑色;手机套餐:官方标配
  104. /// </summary>
  105. [XmlElement("sku_properties_name")]
  106. public string SkuPropertiesName { get; set; }
  107. /// <summary>
  108. /// 订单状态。可选值: TRADE_NO_CREATE_PAY(没有创建支付宝交易,暂无) WAIT_BUYER_PAY(等待买家付款) WAIT_SELLER_SEND_GOODS(等待卖家发货,即:买家已付款) WAIT_BUYER_CONFIRM_GOODS(等待买家确认收货,即:卖家已发货) TRADE_BUYER_SIGNED(买家已签收,货到付款专用,暂无) TRADE_FINISHED(交易成功) TRADE_CLOSED(付款以后用户退款成功,交易自动关闭) TRADE_CLOSED_BY_TAOBAO(付款以前,卖家或买家主动关闭交易) PAY_PENDING(国际信用卡支付付款确认中,暂无)
  109. /// </summary>
  110. [XmlElement("status")]
  111. public string Status { get; set; }
  112. /// <summary>
  113. /// 商品标题
  114. /// </summary>
  115. [XmlElement("title")]
  116. public string Title { get; set; }
  117. /// <summary>
  118. /// 应付金额(商品价格 * 商品数量 + 手工调整金额 - 子订单级订单优惠金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分
  119. /// </summary>
  120. [XmlElement("total_fee")]
  121. public string TotalFee { get; set; }
  122. }
  123. /// <summary>
  124. /// TopTradeDetailVoDomain Data Structure.
  125. /// </summary>
  126. [Serializable]
  127. public class TopTradeDetailVoDomain : TopObject
  128. {
  129. /// <summary>
  130. /// 支付宝交易号
  131. /// </summary>
  132. [XmlElement("alipay_no")]
  133. public string AlipayNo { get; set; }
  134. /// <summary>
  135. /// 下单用户渠道
  136. /// </summary>
  137. [XmlElement("buyer_channel")]
  138. public string BuyerChannel { get; set; }
  139. /// <summary>
  140. /// 下单用户渠道openid
  141. /// </summary>
  142. [XmlElement("buyer_channel_id")]
  143. public string BuyerChannelId { get; set; }
  144. /// <summary>
  145. /// 买家备注
  146. /// </summary>
  147. [XmlElement("buyer_memo")]
  148. public string BuyerMemo { get; set; }
  149. /// <summary>
  150. /// 卖家发货时间。格式:yyyy-MM-dd HH:mm:ss
  151. /// </summary>
  152. [XmlElement("consign_time")]
  153. public string ConsignTime { get; set; }
  154. /// <summary>
  155. /// 交易创建时间。格式:yyyy-MM-dd HH:mm:ss
  156. /// </summary>
  157. [XmlElement("created")]
  158. public string Created { get; set; }
  159. /// <summary>
  160. /// 下单媒体渠道
  161. /// </summary>
  162. [XmlElement("distributor")]
  163. public string Distributor { get; set; }
  164. /// <summary>
  165. /// 交易结束时间。交易成功时间(更新交易状态为成功的同时更新)/确认收货时间或者交易关闭时间 。格式:yyyy-MM-dd HH:mm:ss
  166. /// </summary>
  167. [XmlElement("end_time")]
  168. public string EndTime { get; set; }
  169. /// <summary>
  170. /// 商家的预计发货时间
  171. /// </summary>
  172. [XmlElement("est_con_time")]
  173. public string EstConTime { get; set; }
  174. /// <summary>
  175. /// 是否包含邮费
  176. /// </summary>
  177. [XmlElement("has_post_fee")]
  178. public bool HasPostFee { get; set; }
  179. /// <summary>
  180. /// 订单出现异常问题的时候,给予用户的描述,没有异常的时候,此值为空
  181. /// </summary>
  182. [XmlElement("mark_desc")]
  183. public string MarkDesc { get; set; }
  184. /// <summary>
  185. /// 交易修改时间(用户对订单的任何修改都会更新此字段)。格式:yyyy-MM-dd HH:mm:ss
  186. /// </summary>
  187. [XmlElement("modified")]
  188. public string Modified { get; set; }
  189. /// <summary>
  190. /// 商品购买数量。取值范围:大于零的整数,对于一个trade对应多个order的时候(一笔主订单,对应多笔子订单),num=0,num是一个跟商品关联的属性,一笔订单对应多比子订单的时候,主订单上的num无意义。
  191. /// </summary>
  192. [XmlElement("num")]
  193. public long Num { get; set; }
  194. /// <summary>
  195. /// 商品数字编号
  196. /// </summary>
  197. [XmlElement("num_iid")]
  198. public long NumIid { get; set; }
  199. /// <summary>
  200. /// 订单列表
  201. /// </summary>
  202. [XmlArray("orders")]
  203. [XmlArrayItem("top_order_vo")]
  204. public List<TopOrderVoDomain> Orders { get; set; }
  205. /// <summary>
  206. /// 付款时间。格式:yyyy-MM-dd HH:mm:ss。订单的付款时间即为物流订单的创建时间。
  207. /// </summary>
  208. [XmlElement("pay_time")]
  209. public string PayTime { get; set; }
  210. /// <summary>
  211. /// 实付金额。精确到2位小数;单位:元。如:200.07,表示:200元7分
  212. /// </summary>
  213. [XmlElement("payment")]
  214. public string Payment { get; set; }
  215. /// <summary>
  216. /// 邮费。精确到2位小数;单位:元。如:200.07,表示:200元7分
  217. /// </summary>
  218. [XmlElement("post_fee")]
  219. public string PostFee { get; set; }
  220. /// <summary>
  221. /// 商品价格。精确到2位小数;单位:元。如:200.07,表示:200元7分
  222. /// </summary>
  223. [XmlElement("price")]
  224. public string Price { get; set; }
  225. /// <summary>
  226. /// 收货人的详细地址
  227. /// </summary>
  228. [XmlElement("receiver_address")]
  229. public string ReceiverAddress { get; set; }
  230. /// <summary>
  231. /// 收货人的所在城市 注:因为国家对于城市和地区的划分的有:省直辖市和省直辖县级行政区(区级别的)划分的,淘宝这边根据这个差异保存在不同字段里面比如:广东广州:广州属于一个直辖市是放在的receiver_city的字段里面;而河南济源:济源属于省直辖县级行政区划分,是区级别的,放在了receiver_district里面 建议:程序依赖于城市字段做物流等判断的操作,最好加一个判断逻辑:如果返回值里面只有receiver_district参数,该参数作为城市
  232. /// </summary>
  233. [XmlElement("receiver_city")]
  234. public string ReceiverCity { get; set; }
  235. /// <summary>
  236. /// 收货人国籍
  237. /// </summary>
  238. [XmlElement("receiver_country")]
  239. public string ReceiverCountry { get; set; }
  240. /// <summary>
  241. /// 收货人的所在地区 注:因为国家对于城市和地区的划分的有:省直辖市和省直辖县级行政区(区级别的)划分的,淘宝这边根据这个差异保存在不同字段里面比如:广东广州:广州属于一个直辖市是放在的receiver_city的字段里面;而河南济源:济源属于省直辖县级行政区划分,是区级别的,放在了receiver_district里面 建议:程序依赖于城市字段做物流等判断的操作,最好加一个判断逻辑:如果返回值里面只有receiver_district参数,该参数作为城市
  242. /// </summary>
  243. [XmlElement("receiver_district")]
  244. public string ReceiverDistrict { get; set; }
  245. /// <summary>
  246. /// 收货人手机号
  247. /// </summary>
  248. [XmlElement("receiver_mobile")]
  249. public string ReceiverMobile { get; set; }
  250. /// <summary>
  251. /// 收货人姓名
  252. /// </summary>
  253. [XmlElement("receiver_name")]
  254. public string ReceiverName { get; set; }
  255. /// <summary>
  256. /// 收货人电话
  257. /// </summary>
  258. [XmlElement("receiver_phone")]
  259. public string ReceiverPhone { get; set; }
  260. /// <summary>
  261. /// 收货人的所在省份
  262. /// </summary>
  263. [XmlElement("receiver_state")]
  264. public string ReceiverState { get; set; }
  265. /// <summary>
  266. /// 收货人街道地址
  267. /// </summary>
  268. [XmlElement("receiver_town")]
  269. public string ReceiverTown { get; set; }
  270. /// <summary>
  271. /// 收货人的邮编
  272. /// </summary>
  273. [XmlElement("receiver_zip")]
  274. public string ReceiverZip { get; set; }
  275. /// <summary>
  276. /// 商家
  277. /// </summary>
  278. [XmlElement("seller_nick")]
  279. public string SellerNick { get; set; }
  280. /// <summary>
  281. /// 创建交易时的物流方式(交易完成前,物流方式有可能改变,但系统里的这个字段一直不变)。可选值:free(卖家包邮),post(平邮),express(快递)
  282. /// </summary>
  283. [XmlElement("shipping_type")]
  284. public string ShippingType { get; set; }
  285. /// <summary>
  286. /// 运单号,订单实际物流单号取 orders中的invoice_no和logistics_company
  287. /// </summary>
  288. [XmlElement("sid")]
  289. public string Sid { get; set; }
  290. /// <summary>
  291. /// 交易状态。可选值: * TRADE_NO_CREATE_PAY(没有创建支付宝交易,暂无) * WAIT_BUYER_PAY(等待买家付款) * SELLER_CONSIGNED_PART(卖家部分发货,暂无) * WAIT_SELLER_SEND_GOODS(等待卖家发货,即:买家已付款) * WAIT_BUYER_CONFIRM_GOODS(等待买家确认收货,即:卖家已发货) * TRADE_BUYER_SIGNED(买家已签收,货到付款专用,暂无) * TRADE_FINISHED(交易成功) * TRADE_CLOSED(付款以后用户退款成功,交易自动关闭) * TRADE_CLOSED_BY_TAOBAO(付款以前,卖家或买家主动关闭交易) * PAY_PENDING(国际信用卡支付付款确认中,暂无) * WAIT_PRE_AUTH_CONFIRM(0元购合约中,暂无) * PAID_FORBID_CONSIGN(拼团中订单或者发货强管控的订单,已付款但禁止发货)
  292. /// </summary>
  293. [XmlElement("status")]
  294. public string Status { get; set; }
  295. /// <summary>
  296. /// 淘宝交易单号
  297. /// </summary>
  298. [XmlElement("tid")]
  299. public string Tid { get; set; }
  300. /// <summary>
  301. /// 交易标题,以店铺名作为此标题的值。注:taobao.trades.get接口返回的Trade中的title是商品名称
  302. /// </summary>
  303. [XmlElement("title")]
  304. public string Title { get; set; }
  305. /// <summary>
  306. /// 商品金额(商品价格乘以数量的总金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分
  307. /// </summary>
  308. [XmlElement("total_fee")]
  309. public string TotalFee { get; set; }
  310. /// <summary>
  311. /// 交易备注。
  312. /// </summary>
  313. [XmlElement("trade_memo")]
  314. public string TradeMemo { get; set; }
  315. }
  316. }
  317. }