project.go 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. package project
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "go.uber.org/zap"
  5. "server/dao"
  6. "server/global"
  7. "server/model/common/request"
  8. "server/model/common/response"
  9. "server/model/project"
  10. "server/utils"
  11. )
  12. type ProjectApi struct{}
  13. func (a ProjectApi) AddProject(c *gin.Context) {
  14. var ReqPro project.ReqProject
  15. err := c.ShouldBindJSON(&ReqPro)
  16. if err != nil {
  17. response.FailWithMessage(err.Error(), c)
  18. return
  19. }
  20. project := dao.Project{ProjectName: ReqPro.ProjectName, StartTime: ReqPro.StartTime, Remark: ReqPro.Remark}
  21. err = ProjectService.AddProject(project)
  22. if err != nil {
  23. global.GVA_LOG.Error(err.Error(), zap.Error(err))
  24. response.FailWithMessage(err.Error(), c)
  25. return
  26. }
  27. response.OkWithMessage("添加成功", c)
  28. }
  29. func (a ProjectApi) DelProject(c *gin.Context) {
  30. var reqId request.GetById
  31. err := c.ShouldBindJSON(&reqId)
  32. if err != nil {
  33. response.FailWithMessage(err.Error(), c)
  34. return
  35. }
  36. err = utils.Verify(reqId, utils.IdVerify)
  37. if err != nil {
  38. response.FailWithMessage(err.Error(), c)
  39. return
  40. }
  41. err = ProjectService.DelProject(reqId.ID)
  42. if err != nil {
  43. global.GVA_LOG.Error("删除失败!", zap.Error(err))
  44. response.FailWithMessage("删除失败", c)
  45. return
  46. }
  47. response.OkWithMessage("删除成功", c)
  48. }
  49. func (a ProjectApi) UpdateProject(c *gin.Context) {
  50. var ReqPro project.ReqProject
  51. err := c.ShouldBindJSON(&ReqPro)
  52. if err != nil {
  53. response.FailWithMessage(err.Error(), c)
  54. return
  55. }
  56. err = utils.Verify(ReqPro, utils.IdVerify)
  57. if err != nil {
  58. response.FailWithMessage(err.Error(), c)
  59. return
  60. }
  61. project := dao.Project{GVA_MODEL: global.GVA_MODEL{
  62. ID: ReqPro.ID,
  63. }, ProjectName: ReqPro.ProjectName, StartTime: ReqPro.StartTime, Remark: ReqPro.Remark}
  64. err = ProjectService.UpdateProject(project)
  65. if err != nil {
  66. global.GVA_LOG.Error("设置失败!", zap.Error(err))
  67. response.FailWithMessage("设置失败", c)
  68. return
  69. }
  70. response.OkWithMessage("设置成功", c)
  71. }
  72. func (a ProjectApi) GetProjectAndDetails(c *gin.Context) {
  73. var pageInfo request.PageInfo
  74. err := c.ShouldBindJSON(&pageInfo)
  75. if err != nil {
  76. response.FailWithMessage(err.Error(), c)
  77. return
  78. }
  79. err = utils.Verify(pageInfo, utils.PageInfoVerify)
  80. if err != nil {
  81. response.FailWithMessage(err.Error(), c)
  82. return
  83. }
  84. list, total, err := ProjectService.GetProjectAndDetails(pageInfo)
  85. if err != nil {
  86. global.GVA_LOG.Error("获取失败!", zap.Error(err))
  87. response.FailWithMessage("获取失败", c)
  88. return
  89. }
  90. response.OkWithDetailed(response.PageResult{
  91. List: list,
  92. Total: total,
  93. Page: pageInfo.Page,
  94. PageSize: pageInfo.PageSize,
  95. }, "获取成功", c)
  96. }
  97. func (a ProjectApi) GetProjectList(c *gin.Context) {
  98. list, err := ProjectService.GetProjectList()
  99. if err != nil {
  100. global.GVA_LOG.Error("获取失败!", zap.Error(err))
  101. response.FailWithMessage("获取失败", c)
  102. return
  103. }
  104. response.OkWithDetailed(list, "获取成功", c)
  105. }
  106. func (a ProjectApi) ChangeProjects(c *gin.Context) {
  107. var reqChange project.ReqChangeProjects
  108. err := c.ShouldBindJSON(&reqChange)
  109. if err != nil {
  110. response.FailWithMessage(err.Error(), c)
  111. return
  112. }
  113. err = ProjectService.ChangeProjects(reqChange)
  114. if err != nil {
  115. global.GVA_LOG.Error("设置失败!", zap.Error(err))
  116. response.FailWithMessage("设置失败", c)
  117. return
  118. }
  119. response.OkWithMessage("设置成功", c)
  120. }
  121. func (a ProjectApi) GetProjectListByUserID(c *gin.Context) {
  122. userID := utils.GetUserID(c)
  123. list, err := ProjectService.GetProjectListByUserID(userID)
  124. if err != nil {
  125. global.GVA_LOG.Error("获取失败!", zap.Error(err))
  126. response.FailWithMessage("获取失败", c)
  127. return
  128. }
  129. response.OkWithDetailed(list, "获取成功", c)
  130. }