TaobaoTbkDgVegasTljCreateRequest.cs 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. using System.Text.Json.Serialization;
  2. using System.Collections.Generic;
  3. using Topsdk.Util;
  4. namespace Topsdk.Top.Ability1826.Request;
  5. public class TaobaoTbkDgVegasTljCreateRequest : AbstractTopApiRequest
  6. {
  7. /*
  8. 妈妈广告位Id
  9. */
  10. private long? adzoneId;
  11. /*
  12. 必须传入0
  13. */
  14. private long? securityLevel;
  15. /*
  16. 使用开始日期。相对时间,无需填写,以用户领取时间作为使用开始时间。绝对时间,格式 yyyy-MM-dd,例如,2019-01-29,表示从2019-01-29 00:00:00 开始,格式 yyyy-MM-dd HH:mm:ss,例如,2019-01-29 20:00:10,表示从2019-01-2920:00:10 开始
  17. */
  18. private string? useStartTime;
  19. /*
  20. 结束日期的模式,1:相对时间,2:绝对时间
  21. */
  22. private long? useEndTimeMode;
  23. /*
  24. 使用结束日期。如果是结束时间模式为相对时间,时间格式为1-7直接的整数, 例如,1(相对领取时间1天); 如果是绝对时间,格式为yyyy-MM-dd,例如,2019-01-29,表示到2019-01-29 23:59:59结束,格式 yyyy-MM-dd HH:mm:ss,例如,2019-01-29 20:00:10,表示从2019-01-29 20:00:10 开始
  25. */
  26. private string? useEndTime;
  27. /*
  28. 发放截止时间
  29. */
  30. private DateTime? sendEndTime;
  31. /*
  32. 发放开始时间
  33. */
  34. private DateTime? sendStartTime;
  35. /*
  36. 单个淘礼金面额,支持两位小数,单位元
  37. */
  38. private string? perFace;
  39. /*
  40. 必须设置为true,默认开启安全
  41. */
  42. private bool? securitySwitch;
  43. /*
  44. 单用户累计中奖次数上限
  45. */
  46. private long? userTotalWinNumLimit;
  47. /*
  48. 淘礼金名称,最大10个字符
  49. */
  50. private string? name;
  51. /*
  52. 淘礼金总个数
  53. */
  54. private long? totalNum;
  55. /*
  56. 宝贝ID或营销ID
  57. */
  58. private string? itemId;
  59. /*
  60. 已下线,后续不需要填写
  61. */
  62. private string? campaignType;
  63. /*
  64. 淘礼金使用门槛,实付款大于等于门槛面额时才可使用此淘礼金;门槛值不能小于淘礼金面额
  65. */
  66. private string? useThreshold;
  67. /*
  68. 淘礼金皮肤模版ID,1、日常模板(长期可用) 2、弹窗模板(长期可用) 3、近期大促活动模版
  69. */
  70. private string? awardImgTemplateId;
  71. [JsonPropertyName("adzone_id")]
  72. public long? AdzoneId
  73. {
  74. get => adzoneId;
  75. set => this.adzoneId = value;
  76. }
  77. [JsonPropertyName("security_level")]
  78. public long? SecurityLevel
  79. {
  80. get => securityLevel;
  81. set => this.securityLevel = value;
  82. }
  83. [JsonPropertyName("use_start_time")]
  84. public string? UseStartTime
  85. {
  86. get => useStartTime;
  87. set => this.useStartTime = value;
  88. }
  89. [JsonPropertyName("use_end_time_mode")]
  90. public long? UseEndTimeMode
  91. {
  92. get => useEndTimeMode;
  93. set => this.useEndTimeMode = value;
  94. }
  95. [JsonPropertyName("use_end_time")]
  96. public string? UseEndTime
  97. {
  98. get => useEndTime;
  99. set => this.useEndTime = value;
  100. }
  101. [JsonPropertyName("send_end_time")]
  102. public DateTime? SendEndTime
  103. {
  104. get => sendEndTime;
  105. set => this.sendEndTime = value;
  106. }
  107. [JsonPropertyName("send_start_time")]
  108. public DateTime? SendStartTime
  109. {
  110. get => sendStartTime;
  111. set => this.sendStartTime = value;
  112. }
  113. [JsonPropertyName("per_face")]
  114. public string? PerFace
  115. {
  116. get => perFace;
  117. set => this.perFace = value;
  118. }
  119. [JsonPropertyName("security_switch")]
  120. public bool? SecuritySwitch
  121. {
  122. get => securitySwitch;
  123. set => this.securitySwitch = value;
  124. }
  125. [JsonPropertyName("user_total_win_num_limit")]
  126. public long? UserTotalWinNumLimit
  127. {
  128. get => userTotalWinNumLimit;
  129. set => this.userTotalWinNumLimit = value;
  130. }
  131. [JsonPropertyName("name")]
  132. public string? Name
  133. {
  134. get => name;
  135. set => this.name = value;
  136. }
  137. [JsonPropertyName("total_num")]
  138. public long? TotalNum
  139. {
  140. get => totalNum;
  141. set => this.totalNum = value;
  142. }
  143. [JsonPropertyName("item_id")]
  144. public string? ItemId
  145. {
  146. get => itemId;
  147. set => this.itemId = value;
  148. }
  149. [JsonPropertyName("campaign_type")]
  150. public string? CampaignType
  151. {
  152. get => campaignType;
  153. set => this.campaignType = value;
  154. }
  155. [JsonPropertyName("use_threshold")]
  156. public string? UseThreshold
  157. {
  158. get => useThreshold;
  159. set => this.useThreshold = value;
  160. }
  161. [JsonPropertyName("award_img_template_id")]
  162. public string? AwardImgTemplateId
  163. {
  164. get => awardImgTemplateId;
  165. set => this.awardImgTemplateId = value;
  166. }
  167. public override IDictionary<string, string> ToRequestParam()
  168. {
  169. IDictionary<string, string> requestParam = new Dictionary<string, string>();
  170. if(this.adzoneId != null)
  171. {
  172. requestParam.Add("adzone_id",TopUtils.ConvertBasicType(this.adzoneId));
  173. }
  174. if(this.securityLevel != null)
  175. {
  176. requestParam.Add("security_level",TopUtils.ConvertBasicType(this.securityLevel));
  177. }
  178. if(this.useStartTime != null)
  179. {
  180. requestParam.Add("use_start_time",TopUtils.ConvertBasicType(this.useStartTime));
  181. }
  182. if(this.useEndTimeMode != null)
  183. {
  184. requestParam.Add("use_end_time_mode",TopUtils.ConvertBasicType(this.useEndTimeMode));
  185. }
  186. if(this.useEndTime != null)
  187. {
  188. requestParam.Add("use_end_time",TopUtils.ConvertBasicType(this.useEndTime));
  189. }
  190. if(this.sendEndTime != null)
  191. {
  192. requestParam.Add("send_end_time",TopUtils.ConvertBasicType(this.sendEndTime));
  193. }
  194. if(this.sendStartTime != null)
  195. {
  196. requestParam.Add("send_start_time",TopUtils.ConvertBasicType(this.sendStartTime));
  197. }
  198. if(this.perFace != null)
  199. {
  200. requestParam.Add("per_face",TopUtils.ConvertBasicType(this.perFace));
  201. }
  202. if(this.securitySwitch != null)
  203. {
  204. requestParam.Add("security_switch",TopUtils.ConvertBasicType(this.securitySwitch));
  205. }
  206. if(this.userTotalWinNumLimit != null)
  207. {
  208. requestParam.Add("user_total_win_num_limit",TopUtils.ConvertBasicType(this.userTotalWinNumLimit));
  209. }
  210. if(this.name != null)
  211. {
  212. requestParam.Add("name",TopUtils.ConvertBasicType(this.name));
  213. }
  214. if(this.totalNum != null)
  215. {
  216. requestParam.Add("total_num",TopUtils.ConvertBasicType(this.totalNum));
  217. }
  218. if(this.itemId != null)
  219. {
  220. requestParam.Add("item_id",TopUtils.ConvertBasicType(this.itemId));
  221. }
  222. if(this.campaignType != null)
  223. {
  224. requestParam.Add("campaign_type",TopUtils.ConvertBasicType(this.campaignType));
  225. }
  226. if(this.useThreshold != null)
  227. {
  228. requestParam.Add("use_threshold",TopUtils.ConvertBasicType(this.useThreshold));
  229. }
  230. if(this.awardImgTemplateId != null)
  231. {
  232. requestParam.Add("award_img_template_id",TopUtils.ConvertBasicType(this.awardImgTemplateId));
  233. }
  234. return requestParam;
  235. }
  236. public override IDictionary<string, TopFileItem> ToFileParam()
  237. {
  238. IDictionary<string, TopFileItem> fileParam = new Dictionary<string, TopFileItem>();
  239. return fileParam;
  240. }
  241. public override string GetApiCode()
  242. {
  243. return "taobao.tbk.dg.vegas.tlj.create";
  244. }
  245. }