model_category.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. package admin
  2. import (
  3. "gfast/app/model/admin/model_category"
  4. "gfast/app/service/admin/model_service"
  5. "gfast/app/service/admin/user_service"
  6. "gfast/app/service/cache_service"
  7. "gfast/library/response"
  8. "github.com/gogf/gf/frame/g"
  9. "github.com/gogf/gf/net/ghttp"
  10. "github.com/gogf/gf/util/gconv"
  11. "github.com/gogf/gf/util/gvalid"
  12. )
  13. //模型分类
  14. type ModelCategory struct{}
  15. // @Summary 模型列表
  16. // @Description 模型列表
  17. // @Tags 模型分类
  18. // @Param data body model_category.SearchReq true "data"
  19. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  20. // @Router /system/model/category/list [get]
  21. // @Security
  22. func (c *ModelCategory) List(r *ghttp.Request) {
  23. var req *model_category.SearchReq
  24. //获取参数
  25. if err := r.Parse(&req); err != nil {
  26. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  27. }
  28. total, list, err := model_service.GetCategoryList(req)
  29. if err != nil {
  30. response.FailJson(true, r, err.Error())
  31. }
  32. res := g.Map{
  33. "total": total,
  34. "list": list,
  35. }
  36. response.SusJson(true, r, "信息列表", res)
  37. }
  38. // @Summary 模型分类
  39. // @Description 模型分类
  40. // @Tags 模型分类
  41. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  42. // @Router /system/model/category/all [post]
  43. // @Security
  44. func (c *ModelCategory) All(r *ghttp.Request) {
  45. list, err := model_service.GetCategoryAll()
  46. if err != nil {
  47. response.FailJson(true, r, err.Error())
  48. }
  49. response.SusJson(true, r, "ok", list)
  50. }
  51. // @Summary 添加模型分类
  52. // @Description 添加模型分类
  53. // @Tags 模型分类
  54. // @Param data body model_category.AddReq true "data"
  55. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  56. // @Router /system/model/category/add [post]
  57. // @Security
  58. func (c *ModelCategory) Add(r *ghttp.Request) {
  59. var req *model_category.AddReq
  60. //获取参数
  61. if err := r.Parse(&req); err != nil {
  62. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  63. }
  64. req.CreateBy = gconv.Uint(user_service.GetLoginID(r))
  65. err := model_service.AddCategory(req)
  66. if err != nil {
  67. response.FailJson(true, r, err.Error())
  68. }
  69. cache_service.New().RemoveByTag(cache_service.AdminModelTag)
  70. response.SusJson(true, r, "添加成功")
  71. }
  72. // @Summary 修改模型分类
  73. // @Description 修改模型分类
  74. // @Tags 模型分类
  75. // @Param data body model_category.EditReq true "data"
  76. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  77. // @Router /system/model/category/edit [post]
  78. // @Security
  79. func (c *ModelCategory) Edit(r *ghttp.Request) {
  80. if r.Method == "POST" {
  81. var req *model_category.EditReq
  82. //获取参数
  83. if err := r.Parse(&req); err != nil {
  84. response.FailJson(true, r, err.(*gvalid.Error).FirstString())
  85. }
  86. req.UpdateBy = gconv.Uint(user_service.GetLoginID(r))
  87. err := model_service.EditCategory(req)
  88. if err != nil {
  89. response.FailJson(true, r, err.Error())
  90. }
  91. cache_service.New().RemoveByTag(cache_service.AdminModelTag)
  92. response.SusJson(true, r, "修改成功")
  93. }
  94. id := r.GetInt64("id")
  95. if id == 0 {
  96. response.FailJson(true, r, "参数错误")
  97. }
  98. cate, err := model_service.GetCategoryById(id)
  99. if err != nil {
  100. response.FailJson(true, r, err.Error())
  101. }
  102. response.SusJson(true, r, "ok", cate)
  103. }
  104. // @Summary 分类排序
  105. // @Description 分类排序
  106. // @Tags 模型分类
  107. // @Param sorts body string true "sorts"
  108. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  109. // @Router /system/model/category/sort [post]
  110. // @Security
  111. func (c *ModelCategory) Sort(r *ghttp.Request) {
  112. sorts := r.Get("sorts")
  113. s := gconv.Map(sorts)
  114. if s == nil {
  115. response.FailJson(true, r, "排序失败")
  116. }
  117. for k, v := range s {
  118. model_category.Model.Where(model_category.Columns.CId+"=?", k).Data(model_category.Columns.CSort, v).Update()
  119. }
  120. cache_service.New().RemoveByTag(cache_service.AdminModelTag)
  121. response.SusJson(true, r, "排序成功")
  122. }
  123. // @Summary 删除分类
  124. // @Description 删除分类
  125. // @Tags 模型分类
  126. // @Param ids body integer true "ids"
  127. // @Success 0 {object} response.Response "{"code": 200, "data": [...]}"
  128. // @Router /system/model/category/delete [delete]
  129. // @Security
  130. func (c *ModelCategory) Delete(r *ghttp.Request) {
  131. ids := r.GetInts("ids")
  132. if len(ids) == 0 {
  133. response.FailJson(true, r, "删除失败")
  134. }
  135. err := model_service.DeleteCategoryByIds(ids)
  136. if err != nil {
  137. response.FailJson(true, r, "删除失败")
  138. }
  139. cache_service.New().RemoveByTag(cache_service.AdminModelTag)
  140. response.SusJson(true, r, "删除成功", ids)
  141. }