medicine_img.go 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package controllers
  2. import (
  3. "Medical_ERP/common/actions"
  4. "Medical_ERP/common/global"
  5. "Medical_ERP/dto"
  6. "Medical_ERP/models"
  7. "Medical_ERP/services"
  8. context2 "github.com/beego/beego/v2/adapter/context"
  9. "gogs.baozhida.cn/zoie/OAuth-core/pkg/jwtauth/beegouser"
  10. "strings"
  11. )
  12. type MedicineImgController struct {
  13. BaseController
  14. }
  15. // List 获取规格列表
  16. // @Summary 获取规格列表
  17. // @Description 获取规格列表
  18. // @Tags 规格
  19. // @Param body body dto.MedicineImgPageReq true "body"
  20. // @Success 200 {object} response.Page{list=[]models.MedicineImg} "{"code": 200, "data": [...]}"
  21. // @Router /spec/list [post]
  22. // @Security Bearer
  23. func (c MedicineImgController) List() {
  24. s := services.MedicineImg{}
  25. reqData := dto.MedicineImgPageReq{}
  26. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  27. c.Error(global.ParseFormErr, err, err.Error())
  28. return
  29. }
  30. p := actions.GetPermissionFromContext(c.Ctx)
  31. rootId, err := s.GetRootID((*context2.Context)(c.Ctx), p.DeptId)
  32. if err != nil {
  33. c.Error(global.BadRequest, err, err.Error())
  34. return
  35. }
  36. list := make([]models.MedicineImg, 0)
  37. var count int64
  38. //数据权限检查
  39. err = s.GetPage(&reqData, &list, &count, rootId, p)
  40. if err != nil {
  41. c.Error(global.BadRequest, err, err.Error())
  42. return
  43. }
  44. for i := 0; i < len(list); i++ {
  45. arr := strings.Split(strings.Trim(list[i].Img, ","), ",")
  46. if len(arr) > 0 {
  47. list[i].ImgUrl = arr[0]
  48. }
  49. list[i].SrcList = arr
  50. }
  51. c.PageOK(list, int(count), reqData.GetPageIndex(), reqData.GetPageSize(), "查询成功")
  52. }
  53. // Edit 修改规格
  54. // @Summary 修改规格
  55. // @Description 修改规格
  56. // @Tags 规格
  57. // @Accept application/json
  58. // @MedicineImg application/json
  59. // @Param data body dto.MedicineImgUpdateReq true "body"
  60. // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
  61. // @Router /spec/edit [post]
  62. // @Security Bearer
  63. func (c MedicineImgController) Edit() {
  64. s := services.MedicineImg{}
  65. reqData := dto.MedicineImgUpdateReq{}
  66. if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
  67. c.Error(global.ParseFormErr, err, err.Error())
  68. return
  69. }
  70. reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
  71. err := s.Update(&reqData)
  72. if err != nil {
  73. c.Error(500, err, err.Error())
  74. return
  75. }
  76. c.OK(reqData.GetId(), "更新成功")
  77. }