active.config.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package models
  2. import "github.com/shopspring/decimal"
  3. type CreateActiveConfigRequest struct {
  4. MerchantOpenID string `json:"merchant_open_id"`
  5. DrawOneBiZhong int64 `json:"draw_one_bi_zhong"`
  6. GroupBuyUrl string `json:"group_buy_url"`
  7. DrawId []int64 `json:"draw_id"`
  8. GroupBuyId []int64 `json:"group_buy_id"`
  9. GroupBuyMode int `json:"group_buy_mode"` // 0-不开团 1-虚拟开团 2-真实开团
  10. DrawMode int `json:"draw_mode"` // 抽奖模式 0-不抽奖,1-盲盒
  11. ActivityEndTime string `json:"activity_end_time"` // 活动结束时间
  12. ActivityStartTime string `json:"activity_start_time"` // 活动开始时间
  13. ActiveName string `json:"active_name"` // 活动名称
  14. }
  15. type ActiveConfigRequest struct {
  16. ActiveConfigId int64 `json:"active_config_id"`
  17. MerchantOpenID string `json:"merchant_open_id"`
  18. }
  19. type ActiveConfigReply struct {
  20. DrawOneBiZhong int64 `json:"draw_one_bi_zhong"`
  21. GroupBuyUrl string `json:"group_buy_url"`
  22. GroupBuyMode int `json:"group_buy_mode"` // 0-不开团 1-虚拟开团 2-真实开团
  23. DrawMode int `json:"draw_mode"` //抽奖模式 0-不抽奖,1-盲盒
  24. ActivityEndTime string `json:"activity_end_time"` // 活动结束时间
  25. ActivityStartTime string `json:"activity_start_time"` // 活动开始时间
  26. ActiveName string `json:"active_name"` // 活动名称
  27. DrawProduct []DrawProduct `json:"draw_product"` //中奖商品
  28. DrawGroupBuy []DrawGroupBuy `json:"draw_group_buy"` //活动拼团
  29. }
  30. type DrawProduct struct {
  31. DrawProductName string `json:"draw_product_name"` // 抽奖名称
  32. DrawOdds int `json:"draw_odds"` // 中奖概率
  33. Stock int `json:"stock"` // 剩余库存
  34. IsPrize bool `json:"is_prize"` // 是否需要兑奖 谢谢惠顾不需要兑奖
  35. DrawUrl string `json:"draw_url"` // 中奖图片
  36. TotalStock int `json:"total_stock"` // 总库存
  37. }
  38. type DrawGroupBuy struct {
  39. GroupBuyName string `json:"group_buy_name"` // 拼团名
  40. GroupBuyMode int `json:"group_buy_mode"` // 拼团模式 1-真实拼团 2-虚拟拼团
  41. MerchantOpenID string `json:"merchant_open_id"` //
  42. OriginalPrice decimal.Decimal `json:"original_price"` // 原价
  43. GroupBuyOneNum int `json:"group_buy_one_num"` // 人数
  44. GroupBuyOnePrice decimal.Decimal `json:"group_buy_one_price"` // 价格
  45. GroupBuyTwoNum int `json:"group_buy_two_num"` // 人数
  46. GroupBuyTwoPrice decimal.Decimal `json:"group_buy_two_price"` // 价格
  47. GroupBuyThreeNum int `json:"group_buy_three_num"` //
  48. GroupBuyThreePrice decimal.Decimal `json:"group_buy_three_price"` //
  49. GroupBuyFourNum int `json:"group_buy_four_num"` //
  50. GroupBuyFourPrice decimal.Decimal `json:"group_buy_four_price"` //
  51. GroupBuyUrl string `json:"group_buy_url"` // 图片
  52. ActivityEndTime string `json:"activity_end_time"` // 活动结束时间
  53. ActivityStartTime string `json:"activity_start_time"` // 活动开始时间
  54. RebateRate int `json:"rebate_rate"` // 佣金比例
  55. GroupBuyProject []GroupBuyProject `json:"group_buy_project"`
  56. }
  57. type GroupBuyProject struct {
  58. ProjectName string `json:"project_name"`
  59. CancelNum int `json:"cancel_num"`
  60. }
  61. type ActiveConfigListRequest struct {
  62. OpenId string `json:"open_id"`
  63. PageSize int `json:"page_size"`
  64. PageIndex int `json:"page_index"`
  65. }
  66. type ActiveConfigListReply struct {
  67. ID int64 `json:"id"` //id
  68. ActiveName string `json:"active_name"` // 活动名称
  69. ActivityEnd string `json:"activity_end"` // 活动结束时间
  70. ActivityStart string `json:"activity_start"` //活动开始时间
  71. CreatedAt string `json:"created_at"` //创建时间
  72. }
  73. // 抽奖
  74. type DrawRequest struct {
  75. ClientOpenID string `json:"client_open_id"` //open-id
  76. ActiveConfigID int64 `json:"active_config_id"` //活动ID
  77. }
  78. // 奖品返回
  79. type DrawReply struct {
  80. ID int64 `json:"id"` //id
  81. DrawUrl string `json:"draw_url"` //奖品url
  82. DrawProductName string `json:"draw_product_name"` //奖品名称
  83. Version int `json:"version"`
  84. }
  85. const (
  86. NotWon = 1 //未中奖
  87. NotClaimed = 2 //未兑奖
  88. Claimed = 3 //已兑奖
  89. )