voting.go 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package game
  2. import (
  3. "errors"
  4. "support-game/controllers"
  5. gamemodel "support-game/models/game"
  6. "support-game/models/model"
  7. "support-game/service/game"
  8. )
  9. // VotingController 活动
  10. type VotingController struct {
  11. serv *game.VotingServ
  12. controllers.BaseController
  13. }
  14. // Constructor 初始化 Controller
  15. // @Title Constructor
  16. // @Description 初始化 Controller, 系统自动调用
  17. func (c *VotingController) Constructor() {
  18. c.serv = game.NewVotingServ(c.Context)
  19. }
  20. // List 获取列表
  21. func (c *VotingController) List() {
  22. // 活动
  23. actID, _ := c.GetInt("actid")
  24. // 分页
  25. page, _ := c.GetInt("page")
  26. if page < 1 {
  27. page = 1
  28. }
  29. page -= 1
  30. // tab 类型
  31. tab, _ := c.GetInt("tab")
  32. // 搜索条件
  33. search := c.GetString("q")
  34. list, err := c.serv.GetList(actID, search, tab, page)
  35. if err != nil {
  36. c.ResponseError(errors.New("查询列表失败, 请重试"))
  37. }
  38. c.ResponseJSON(list)
  39. }
  40. // Activities 活动详情
  41. func (c *VotingController) Activities() {
  42. // 活动
  43. actID, _ := c.GetInt(":actid")
  44. activitie, err := c.serv.GetActivitiesInfo(actID)
  45. if err != nil {
  46. c.ResponseError(errors.New("查询活动失败,请重试"))
  47. }
  48. c.ResponseJSON(activitie)
  49. }
  50. // Detail 报名详情
  51. func (c *VotingController) Detail() {
  52. // 活动
  53. actID, _ := c.GetInt(":actid")
  54. memberid, _ := c.GetInt(":memberid")
  55. activitie, err := c.serv.GetMemberInfo(actID, memberid)
  56. if err != nil {
  57. c.ResponseError(errors.New("查询活动详情失败,请重试"))
  58. }
  59. c.ResponseJSON(activitie)
  60. }
  61. // Registe 报名
  62. func (c *VotingController) Registe() {
  63. // 活动
  64. actID, _ := c.GetInt(":actid")
  65. member := gamemodel.MemInfo{}
  66. if err := c.ParseForm(&member); err != nil {
  67. c.ResponseError(errors.New("参数错误!"))
  68. }
  69. member.ActivityId = actID
  70. err := c.serv.Registe(&member)
  71. if err != nil {
  72. c.ResponseError(errors.New("查询活动详情失败,请重试"))
  73. }
  74. c.ResponseJSON(member)
  75. }
  76. // Vote 投票
  77. func (c *VotingController) Vote() {
  78. actID, _ := c.GetInt(":actid")
  79. memberid, _ := c.GetInt(":memberid")
  80. openid := c.GetString("openid")
  81. record := model.TaVotingRecords{
  82. ActivityId: actID,
  83. MemberId: memberid,
  84. Openid: openid,
  85. }
  86. err := c.serv.Vote(&record)
  87. if err != nil {
  88. c.ResponseError(errors.New("投票失败,请重试"))
  89. }
  90. c.ResponseJSON(record)
  91. }