task_controller.go 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. package controller
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "github.com/sirupsen/logrus"
  5. "youngee_b_api/app/service"
  6. "youngee_b_api/app/service/review_service"
  7. "youngee_b_api/app/vo"
  8. )
  9. type TaskController struct{}
  10. type SelectionDetailParam struct {
  11. SelectionId string `json:"selection_id"`
  12. //EnterpriseId string `json:"enterprise_id"`
  13. //SubAccountId int `json:"sub_account_id"`
  14. }
  15. type ProjectDetailParam struct {
  16. ProjectId string `json:"project_id"`
  17. //EnterpriseId string `json:"enterprise_id"`
  18. //SubAccountId int `json:"sub_account_id"`
  19. }
  20. // 关联商品-已有商品展示
  21. func (t TaskController) GetAllProduct(c *gin.Context) {
  22. search := vo.GetAllProductParam{}
  23. err := c.BindJSON(&search)
  24. if err != nil {
  25. logrus.Errorf("Request bind err:%+v\n", err)
  26. returnError(c, 40000, "参数错误")
  27. return
  28. }
  29. var result vo.ResultVO
  30. result, err = service.ProductService{}.GetTaskProductsByUserId(search)
  31. if err != nil {
  32. returnError(c, 40000, "error")
  33. return
  34. }
  35. returnSuccess(c, 20000, result)
  36. return
  37. }
  38. // 关联商品-新建商品
  39. func (t TaskController) CreateProduct(c *gin.Context) {
  40. data := &vo.ProductCreateParam{}
  41. err := c.BindJSON(data)
  42. if err != nil {
  43. logrus.Errorf("Request bind err:%+v\n", err)
  44. returnError(c, 40000, "参数错误")
  45. return
  46. }
  47. productId, err := service.ProductService{}.CreateProduct(data)
  48. resultMap := make(map[string]int64)
  49. resultMap["productId"] = productId
  50. returnSuccess(c, 20000, resultMap)
  51. }
  52. // 关联商品-完成关联创建带货任务
  53. func (t TaskController) CreateSelection(c *gin.Context) {
  54. data := &vo.SelectionInfoCreateParam{}
  55. err := c.BindJSON(data)
  56. if err != nil {
  57. logrus.Errorf("Request bind err:%+v\n", err)
  58. returnError(c, 40000, "参数错误")
  59. return
  60. }
  61. selectionId, err := service.SelectionInfoService{}.CreateSelectionInfo(data)
  62. if err != nil {
  63. logrus.Errorf("[CreateSelection] call CreateSelection err:%+v\n", err)
  64. returnError(c, 40000, "error")
  65. return
  66. }
  67. resultMap := make(map[string]string)
  68. resultMap["selectionId"] = *selectionId
  69. returnSuccess(c, 20000, resultMap)
  70. }
  71. // 更新带货任务(样品奖励、补充信息)
  72. func (t TaskController) UpdateSelection(c *gin.Context) {
  73. data := &vo.SelectionInfoUpdateParam{}
  74. err := c.BindJSON(data)
  75. if err != nil {
  76. logrus.Errorf("Request bind err:%+v\n", err)
  77. returnError(c, 40000, "参数错误")
  78. return
  79. }
  80. selectionId, err := service.SelectionInfoService{}.UpdateSelectionInfo(data)
  81. if err != nil {
  82. logrus.Errorf("[UpdateSelection] call UpdateSelection err:%+v\n", err)
  83. returnError(c, 40000, "error")
  84. return
  85. }
  86. resultMap := make(map[string]string)
  87. resultMap["selectionId"] = *selectionId
  88. returnSuccess(c, 20000, resultMap)
  89. }
  90. // 电商带货任务预览
  91. func (t TaskController) GetSelectionDetail(c *gin.Context) {
  92. data := &SelectionDetailParam{}
  93. err := c.BindJSON(data)
  94. if err != nil {
  95. logrus.Errorf("Request bind err:%+v\n", err)
  96. returnError(c, 40000, "参数错误")
  97. return
  98. }
  99. res, err := service.SelectionInfoService{}.GetSelectionDetail(data.SelectionId)
  100. if err != nil {
  101. logrus.Errorf("[GetSelectionDetail] call Show err:%+v\n", err)
  102. returnError(c, 40000, "error")
  103. return
  104. }
  105. returnSuccess(c, 20000, res)
  106. }
  107. // 电商带货任务审核
  108. func (t TaskController) CheckSelectionInfo(c *gin.Context) {
  109. //data := &vo.ContentCheckParam{}
  110. //err := c.BindJSON(data)
  111. //if err != nil {
  112. // logrus.Errorf("Request bind err:%+v\n", err)
  113. // returnError(c, 40000, "error")
  114. // return
  115. //}
  116. //res, err := service.ContentService{}.CheckContent(data)
  117. //if err != nil {
  118. // logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  119. // returnError(c, 40000, "error")
  120. // return
  121. //}
  122. //
  123. //returnSuccess(c, 20000, *res)
  124. data := &vo.ContentCheckParam{}
  125. err := c.BindJSON(data)
  126. if err != nil {
  127. logrus.Errorf("Request bind err:%+v\n", err)
  128. returnError(c, 40000, "参数错误")
  129. return
  130. }
  131. sdk := review_service.Config(data.AK, data.SK, data.ProjectId)
  132. res1, err1 := sdk.CheckContent(data.Text)
  133. res2, err2 := sdk.CheckImage(data.Image)
  134. res3, err3 := sdk.CheckDocument(data.Document, data.Format)
  135. res4, err4 := sdk.CheckVideo(data.Video)
  136. res5, err5 := sdk.CheckCredentials(data.Credentials)
  137. if err1 != nil {
  138. logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  139. returnError(c, 40000, res1)
  140. return
  141. }
  142. if err2 != nil {
  143. logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  144. returnError(c, 40000, res2)
  145. return
  146. }
  147. if err3 != nil {
  148. logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  149. returnError(c, 40000, res3)
  150. return
  151. }
  152. if err4 != nil {
  153. logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  154. returnError(c, 40000, res4)
  155. return
  156. }
  157. if err5 != nil {
  158. logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err)
  159. returnError(c, 40000, res5)
  160. return
  161. }
  162. returnSuccess(c, 20000, res3)
  163. }
  164. // 创建种草任务
  165. func (t TaskController) CreateProject(c *gin.Context) {
  166. data := &vo.ProjectCreateParam{}
  167. err := c.BindJSON(data)
  168. if err != nil {
  169. logrus.Errorf("Request bind err:%+v\n", err)
  170. returnError(c, 40000, "参数错误")
  171. return
  172. }
  173. projectId, err := service.ProjectService{}.CreateProject(data)
  174. if err != nil {
  175. logrus.Errorf("[CreateProject] call CreateProject err:%+v\n", err)
  176. returnError(c, 40000, "error")
  177. return
  178. }
  179. resultMap := make(map[string]string)
  180. resultMap["projectId"] = *projectId
  181. returnSuccess(c, 20000, resultMap)
  182. }
  183. // 更新种草任务
  184. func (t TaskController) UpdateProject(c *gin.Context) {
  185. data := &vo.ProjectUpdateParam{}
  186. err := c.BindJSON(data)
  187. if err != nil {
  188. logrus.Errorf("Request bind err:%+v\n", err)
  189. returnError(c, 40000, "参数错误")
  190. return
  191. }
  192. projectId, err := service.ProjectService{}.UpdateProject(data)
  193. if err != nil {
  194. logrus.Errorf("[UpdateProject] call UpdateProject err:%+v\n", err)
  195. returnError(c, 40000, "error")
  196. return
  197. }
  198. resultMap := make(map[string]string)
  199. resultMap["projectId"] = *projectId
  200. returnSuccess(c, 20000, resultMap)
  201. }
  202. // 更新定向种草任务
  203. func (t TaskController) UpdateProjectTarget(c *gin.Context) {
  204. data := &vo.ProjectUpdateParam{}
  205. err := c.BindJSON(data)
  206. if err != nil {
  207. logrus.Errorf("Request bind err:%+v\n", err)
  208. returnError(c, 40000, "参数错误")
  209. return
  210. }
  211. projectId, err := service.ProjectService{}.UpdateProjectTarget(data)
  212. if err != nil {
  213. logrus.Errorf("[UpdateProject] call UpdateProject err:%+v\n", err)
  214. returnError(c, 40000, "error")
  215. return
  216. }
  217. resultMap := make(map[string]string)
  218. resultMap["projectId"] = *projectId
  219. returnSuccess(c, 20000, resultMap)
  220. }
  221. // 种草任务预览
  222. func (t TaskController) GetProjectDetail(c *gin.Context) {
  223. data := &ProjectDetailParam{}
  224. err := c.BindJSON(data)
  225. if err != nil {
  226. logrus.Errorf("Request bind err:%+v\n", err)
  227. returnError(c, 40000, "参数错误")
  228. return
  229. }
  230. res, err := service.ProjectService{}.GetProjectDetail(data.ProjectId)
  231. if err != nil {
  232. logrus.Errorf("[GetSelectionDetail] call Show err:%+v\n", err)
  233. returnError(c, 40000, "error")
  234. return
  235. }
  236. returnSuccess(c, 20000, res)
  237. }