unit.go 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  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 UnitController struct {
  12. BaseController
  13. }
  14. // List 获取单位列表
  15. // @Summary 获取单位列表
  16. // @Description 获取单位列表
  17. // @Tags 单位
  18. // @Param body body dto.UnitPageReq true "body"
  19. // @Success 200 {object} response.Page{list=[]models.Unit} "{"code": 200, "data": [...]}"
  20. // @Router /unit/list [post]
  21. // @Security Bearer
  22. func (c UnitController) List() {
  23. s := services.Unit{}
  24. reqData := dto.UnitPageReq{}
  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.Unit, 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.UnitGetReq true "body"
  45. // @Success 200 {object} response.Response{data=models.Unit} "{"code": 200, "data": [...]}"
  46. // @Router /unit/detail [post]
  47. // @Security Bearer
  48. func (c UnitController) Detail() {
  49. s := services.Unit{}
  50. reqData := dto.UnitGetReq{}
  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.Unit
  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. // @Unit application/json
  71. // @Param data body dto.UnitInsertReq true "data"
  72. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  73. // @Router /unit/add [post]
  74. // @Security Bearer
  75. func (c UnitController) Add() {
  76. s := services.Unit{}
  77. reqData := dto.UnitInsertReq{}
  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. // @Unit application/json
  97. // @Param data body dto.UnitUpdateReq true "body"
  98. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  99. // @Router /unit/edit [post]
  100. // @Security Bearer
  101. func (c UnitController) Edit() {
  102. s := services.Unit{}
  103. reqData := dto.UnitUpdateReq{}
  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. err := s.Update(&reqData)
  110. if err != nil {
  111. c.Error(500, err, err.Error())
  112. return
  113. }
  114. c.OK(reqData.GetId(), "更新成功")
  115. }
  116. // Delete 删除单位
  117. // @Summary 删除单位
  118. // @Description 删除单位
  119. // @Tags 单位
  120. // @Accept application/json
  121. // @Unit application/json
  122. // @Param id body dto.UnitDeleteReq true "请求参数"
  123. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  124. // @Router /unit/delete [post]
  125. // @Security Bearer
  126. func (c UnitController) Delete() {
  127. s := services.Unit{}
  128. reqData := dto.UnitDeleteReq{}
  129. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  130. c.Error(global.ParseFormErr, err, err.Error())
  131. return
  132. }
  133. reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
  134. reqData.SetDeptId(beegouser.GetDeptId(c.Ctx))
  135. err := s.Remove(&reqData)
  136. if err != nil {
  137. c.Error(500, err, err.Error())
  138. return
  139. }
  140. c.OK(reqData.GetId(), "删除成功")
  141. }