spec.go 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. package controllers
  2. import (
  3. "Medical_ERP/common/actions"
  4. "Medical_ERP/common/global"
  5. _ "Medical_ERP/common/response"
  6. "Medical_ERP/dto"
  7. "Medical_ERP/models"
  8. "Medical_ERP/services"
  9. "gogs.baozhida.cn/zoie/OAuth-core/pkg/jwtauth/beegouser"
  10. )
  11. type SpecController struct {
  12. BaseController
  13. }
  14. // List 获取规格列表
  15. // @Summary 获取规格列表
  16. // @Description 获取规格列表
  17. // @Tags 规格
  18. // @Param body body dto.SpecPageReq true "body"
  19. // @Success 200 {object} response.Page{list=[]models.Spec} "{"code": 200, "data": [...]}"
  20. // @Router /spec/list [post]
  21. // @Security Bearer
  22. func (c SpecController) List() {
  23. s := services.Spec{}
  24. reqData := dto.SpecPageReq{}
  25. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  26. c.Error(global.ParseFormErr, err, err.Error())
  27. return
  28. }
  29. list := make([]models.Spec, 0)
  30. var count int64
  31. //数据权限检查
  32. p := actions.GetPermissionFromContext(c.Ctx)
  33. err := s.GetPage(&reqData, &list, &count, p)
  34. if err != nil {
  35. c.Error(global.BadRequest, err, err.Error())
  36. return
  37. }
  38. c.PageOK(list, int(count), reqData.GetPageIndex(), reqData.GetPageSize(), "查询成功")
  39. }
  40. // Detail 通过id获取规格
  41. // @Summary 通过id获取规格
  42. // @Description 通过id获取规格
  43. // @Tags 规格
  44. // @Param body body dto.SpecGetReq true "body"
  45. // @Success 200 {object} response.Response{data=models.Spec} "{"code": 200, "data": [...]}"
  46. // @Router /spec/detail [post]
  47. // @Security Bearer
  48. func (c SpecController) Detail() {
  49. s := services.Spec{}
  50. reqData := dto.SpecGetReq{}
  51. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  52. c.Error(global.ParseFormErr, err, err.Error())
  53. return
  54. }
  55. var object models.Spec
  56. //数据权限检查
  57. p := actions.GetPermissionFromContext(c.Ctx)
  58. err := s.Get(&reqData, &object, p)
  59. if err != nil {
  60. c.Error(500, err, err.Error())
  61. return
  62. }
  63. c.OK(object, "查询成功")
  64. }
  65. // Add 添加规格
  66. // @Summary 添加规格
  67. // @Description 添加规格
  68. // @Tags 规格
  69. // @Accept application/json
  70. // @Spec application/json
  71. // @Param data body dto.SpecInsertReq true "data"
  72. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  73. // @Router /spec/add [post]
  74. // @Security Bearer
  75. func (c SpecController) Add() {
  76. s := services.Spec{}
  77. reqData := dto.SpecInsertReq{}
  78. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  79. c.Error(global.ParseFormErr, err, err.Error())
  80. return
  81. }
  82. reqData.SetCreateBy(beegouser.GetUserId(c.Ctx))
  83. reqData.SetDeptId(beegouser.GetDeptId(c.Ctx))
  84. err := s.Insert(&reqData)
  85. if err != nil {
  86. c.Error(500, err, err.Error())
  87. return
  88. }
  89. c.OK(reqData.GetId(), "创建成功")
  90. }
  91. // Edit 修改规格
  92. // @Summary 修改规格
  93. // @Description 修改规格
  94. // @Tags 规格
  95. // @Accept application/json
  96. // @Spec application/json
  97. // @Param data body dto.SpecUpdateReq true "body"
  98. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  99. // @Router /spec/edit [post]
  100. // @Security Bearer
  101. func (c SpecController) Edit() {
  102. s := services.Spec{}
  103. reqData := dto.SpecUpdateReq{}
  104. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  105. c.Error(global.ParseFormErr, err, err.Error())
  106. return
  107. }
  108. reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
  109. reqData.SetDeptId(beegouser.GetDeptId(c.Ctx))
  110. err := s.Update(&reqData)
  111. if err != nil {
  112. c.Error(500, err, err.Error())
  113. return
  114. }
  115. c.OK(reqData.GetId(), "更新成功")
  116. }
  117. // Delete 删除规格
  118. // @Summary 删除规格
  119. // @Description 删除规格
  120. // @Tags 规格
  121. // @Accept application/json
  122. // @Spec application/json
  123. // @Param id body dto.SpecDeleteReq true "请求参数"
  124. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  125. // @Router /spec/delete [post]
  126. // @Security Bearer
  127. func (c SpecController) Delete() {
  128. s := services.Spec{}
  129. reqData := dto.SpecDeleteReq{}
  130. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  131. c.Error(global.ParseFormErr, err, err.Error())
  132. return
  133. }
  134. reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
  135. reqData.SetDeptId(beegouser.GetDeptId(c.Ctx))
  136. err := s.Remove(&reqData)
  137. if err != nil {
  138. c.Error(500, err, err.Error())
  139. return
  140. }
  141. c.OK(reqData.GetId(), "删除成功")
  142. }