api.go 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. package growup
  2. import (
  3. "context"
  4. "net/url"
  5. "strconv"
  6. "time"
  7. "go-common/app/interface/main/creative/model/growup"
  8. "go-common/library/ecode"
  9. "go-common/library/log"
  10. )
  11. // UpStatus get up info.
  12. func (d *Dao) UpStatus(c context.Context, mid int64, ip string) (us *growup.UpStatus, err error) {
  13. us = &growup.UpStatus{}
  14. params := url.Values{}
  15. params.Set("mid", strconv.FormatInt(mid, 10))
  16. var res struct {
  17. Code int `json:"code"`
  18. Data *growup.UpStatus
  19. }
  20. if err = d.client.Get(c, d.upStatusURL, ip, params, &res); err != nil {
  21. log.Error("growup url(%s) response(%v) error(%v)", d.upStatusURL+"?"+params.Encode(), res, err)
  22. err = ecode.CreativeOrderAPIErr
  23. return
  24. }
  25. if res.Code != 0 {
  26. log.Error("growup url(%s) res(%v)", d.upStatusURL, res)
  27. err = ecode.CreativeOrderAPIErr
  28. return
  29. }
  30. us = res.Data
  31. return
  32. }
  33. // UpInfo get up info.
  34. func (d *Dao) UpInfo(c context.Context, mid int64, ip string) (ui *growup.UpInfo, err error) {
  35. params := url.Values{}
  36. params.Set("mid", strconv.FormatInt(mid, 10))
  37. var res struct {
  38. Code int `json:"code"`
  39. Data *growup.UpInfo
  40. }
  41. if err = d.client.Get(c, d.upInfoURL, ip, params, &res); err != nil {
  42. log.Error("growup url(%s) response(%v) error(%v)", d.upInfoURL+"?"+params.Encode(), res, err)
  43. err = ecode.CreativeOrderAPIErr
  44. return
  45. }
  46. if res.Code != 0 {
  47. log.Error("growup url(%s) res(%v)", d.upInfoURL, res)
  48. err = ecode.CreativeOrderAPIErr
  49. return
  50. }
  51. ui = res.Data
  52. return
  53. }
  54. //Join join growup.
  55. func (d *Dao) Join(c context.Context, mid int64, accTy, signTy int, ip string) (err error) {
  56. params := url.Values{}
  57. params.Set("mid", strconv.FormatInt(mid, 10))
  58. params.Set("account_type", strconv.Itoa(accTy))
  59. params.Set("sign_type", strconv.Itoa(signTy))
  60. var res struct {
  61. Code int `json:"code"`
  62. Message string `json:"message"`
  63. }
  64. if err = d.client.Post(c, d.joinURL, ip, params, &res); err != nil {
  65. log.Error("growup url(%s) mid(%d) error(%v)", d.joinURL+"?"+params.Encode(), mid, err)
  66. err = ecode.CreativeOrderAPIErr
  67. return
  68. }
  69. if res.Code != 0 {
  70. log.Error("growup url(%s) mid(%d) res.code(%d) error(%v)", d.joinURL+"?"+params.Encode(), mid, res.Code, err)
  71. err = ecode.CreativeOrderAPIErr
  72. }
  73. return
  74. }
  75. //Quit quit growup.
  76. func (d *Dao) Quit(c context.Context, mid int64, ip string) (err error) {
  77. params := url.Values{}
  78. params.Set("mid", strconv.FormatInt(mid, 10))
  79. var res struct {
  80. Code int `json:"code"`
  81. Message string `json:"message"`
  82. }
  83. if err = d.client.Post(c, d.quitURL, ip, params, &res); err != nil {
  84. log.Error("growup url(%s) mid(%d) error(%v)", d.quitURL+"?"+params.Encode(), mid, err)
  85. err = ecode.CreativeOrderAPIErr
  86. return
  87. }
  88. if res.Code != 0 {
  89. log.Error("growup url(%s) mid(%d) res.code(%d) error(%v)", d.quitURL+"?"+params.Encode(), mid, res.Code, err)
  90. err = ecode.CreativeOrderAPIErr
  91. }
  92. return
  93. }
  94. // Summary income.
  95. func (d *Dao) Summary(c context.Context, mid int64, ip string) (sm *growup.Summary, err error) {
  96. params := url.Values{}
  97. params.Set("mid", strconv.FormatInt(mid, 10))
  98. params.Set("ts", strconv.FormatInt(time.Now().UnixNano()/1000000, 10))
  99. var res struct {
  100. Code int `json:"code"`
  101. Data *growup.Summary
  102. Message string `json:"message"`
  103. }
  104. if err = d.client.Get(c, d.summaryURL, ip, params, &res); err != nil {
  105. log.Error("growup url(%s) response(%v) error(%v)", d.summaryURL+"?"+params.Encode(), res, err)
  106. err = ecode.CreativeOrderAPIErr
  107. return
  108. }
  109. if res.Code != 0 {
  110. log.Error("growup url(%s) res(%v)", d.summaryURL, res)
  111. err = ecode.CreativeOrderAPIErr
  112. return
  113. }
  114. sm = res.Data
  115. return
  116. }
  117. // Stat income by month.
  118. func (d *Dao) Stat(c context.Context, mid int64, ip string) (st *growup.Stat, err error) {
  119. params := url.Values{}
  120. params.Set("mid", strconv.FormatInt(mid, 10))
  121. params.Set("ts", strconv.FormatInt(time.Now().UnixNano()/1000000, 10))
  122. var res struct {
  123. Code int `json:"code"`
  124. Data *growup.Stat
  125. Message string `json:"message"`
  126. }
  127. if err = d.client.Get(c, d.statURL, ip, params, &res); err != nil {
  128. log.Error("growup url(%s) response(%v) error(%v)", d.statURL+"?"+params.Encode(), res, err)
  129. err = ecode.CreativeOrderAPIErr
  130. return
  131. }
  132. if res.Code != 0 {
  133. log.Error("growup url(%s) res(%v)", d.statURL, res)
  134. err = ecode.CreativeOrderAPIErr
  135. return
  136. }
  137. st = res.Data
  138. return
  139. }
  140. // IncomeList income by video/article/music.
  141. func (d *Dao) IncomeList(c context.Context, mid int64, ty, pn, ps int, ip string) (il *growup.IncomeList, err error) {
  142. params := url.Values{}
  143. params.Set("mid", strconv.FormatInt(mid, 10))
  144. params.Set("type", strconv.Itoa(ty))
  145. params.Set("page", strconv.Itoa(pn))
  146. params.Set("size", strconv.Itoa(ps))
  147. params.Set("ts", strconv.FormatInt(time.Now().UnixNano()/1000000, 10))
  148. var res struct {
  149. Code int `json:"code"`
  150. Data *growup.IncomeList
  151. Message string `json:"message"`
  152. }
  153. if err = d.client.Get(c, d.arcURL, ip, params, &res); err != nil {
  154. log.Error("growup url(%s) response(%v) error(%v)", d.arcURL+"?"+params.Encode(), res, err)
  155. err = ecode.CreativeOrderAPIErr
  156. return
  157. }
  158. if res.Code != 0 {
  159. log.Error("growup url(%s) res(%v)", d.arcURL, res)
  160. err = ecode.CreativeOrderAPIErr
  161. return
  162. }
  163. il = res.Data
  164. return
  165. }
  166. // BreachList breach list.
  167. func (d *Dao) BreachList(c context.Context, mid int64, pn, ps int, ip string) (bl *growup.BreachList, err error) {
  168. params := url.Values{}
  169. params.Set("mid", strconv.FormatInt(mid, 10))
  170. params.Set("page", strconv.Itoa(pn))
  171. params.Set("size", strconv.Itoa(ps))
  172. params.Set("ts", strconv.FormatInt(time.Now().UnixNano()/1000000, 10))
  173. var res struct {
  174. Code int `json:"code"`
  175. Data *growup.BreachList
  176. Message string `json:"message"`
  177. }
  178. if err = d.client.Get(c, d.breachURL, ip, params, &res); err != nil {
  179. log.Error("growup url(%s) response(%v) error(%v)", d.breachURL+"?"+params.Encode(), res, err)
  180. err = ecode.CreativeOrderAPIErr
  181. return
  182. }
  183. if res.Code != 0 {
  184. log.Error("growup url(%s) res(%v)", d.breachURL, res)
  185. err = ecode.CreativeOrderAPIErr
  186. return
  187. }
  188. bl = res.Data
  189. return
  190. }