GAAS 广汽安道拓GFrame金属件MOM项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
3.7 KiB

  1. package base
  2. import (
  3. "github.com/kataras/iris/v12"
  4. "github.com/kataras/iris/v12/core/router"
  5. model "leit.com/LAPP_GAAS_GFrame/models/base"
  6. "leit.com/LAPP_GAAS_GFrame/web/middleware/jwts"
  7. "leit.com/LAPP_GAAS_GFrame/web/models"
  8. "leit.com/LAPP_GAAS_GFrame/web/supports"
  9. )
  10. func RegisterSelectDayModel(party router.Party, path string, method func(map[string]string, *models.Usertab) (interface{}, error)) {
  11. party.Get(path, func(ctx iris.Context) {
  12. user, ok := jwts.ParseToken(ctx)
  13. if !ok {
  14. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  15. return
  16. }
  17. if !ok {
  18. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  19. return
  20. }
  21. result, err := method(ctx.URLParams(), user)
  22. if err != nil {
  23. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  24. return
  25. }
  26. supports.Ok(ctx, supports.OptionSuccess, result)
  27. })
  28. }
  29. func RegisterInsertOneDayModel(party router.Party, path string, method func(*models.Usertab, *model.DayModel) error) {
  30. party.Put(path, func(ctx iris.Context) {
  31. user, ok := jwts.ParseToken(ctx)
  32. if !ok {
  33. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  34. return
  35. }
  36. var err error = nil
  37. entity := new(model.DayModel)
  38. if ctx.GetContentLength() > 0 {
  39. err := ctx.ReadJSON(entity)
  40. if err != nil {
  41. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  42. return
  43. }
  44. } else {
  45. entity = nil
  46. }
  47. err = method(user, entity)
  48. if err != nil {
  49. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  50. return
  51. }
  52. supports.Ok(ctx, supports.OptionSuccess, nil)
  53. })
  54. }
  55. func RegisterDeleteOneDayModel(party router.Party, path string, method func(*models.Usertab, int) error) {
  56. party.Delete(path, func(ctx iris.Context) {
  57. user, ok := jwts.ParseToken(ctx)
  58. if !ok {
  59. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  60. return
  61. }
  62. var err error = nil
  63. dayModelNr, err := ctx.Params().GetInt("dayModelNr")
  64. if err != nil {
  65. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  66. return
  67. }
  68. err = method(user, dayModelNr)
  69. if err != nil {
  70. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  71. return
  72. }
  73. supports.Ok(ctx, supports.OptionSuccess, nil)
  74. })
  75. }
  76. func RegisterSelectOneDayModel(party router.Party, path string, method func(*models.Usertab, int) (*model.DayModel, error)) {
  77. party.Get(path+"/{dayModelNr:int}", func(ctx iris.Context) {
  78. user, ok := jwts.ParseToken(ctx)
  79. if !ok {
  80. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  81. return
  82. }
  83. dayModelNr, err := ctx.Params().GetInt("dayModelNr")
  84. if err != nil {
  85. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  86. return
  87. }
  88. result, err := method(user, dayModelNr)
  89. if err != nil {
  90. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  91. return
  92. }
  93. if result == nil {
  94. supports.Error(ctx, iris.StatusNotFound, supports.NotFound, nil)
  95. return
  96. }
  97. supports.Ok(ctx, supports.OptionSuccess, result)
  98. })
  99. }
  100. func RegisterUpdateOneDayModel(party router.Party, path string, method func(*models.Usertab, *model.DayModel) error) {
  101. party.Post(path, func(ctx iris.Context) {
  102. user, ok := jwts.ParseToken(ctx)
  103. if !ok {
  104. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  105. return
  106. }
  107. var err error = nil
  108. entity := new(model.DayModel)
  109. if ctx.GetContentLength() > 0 {
  110. err := ctx.ReadJSON(entity)
  111. if err != nil {
  112. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  113. return
  114. }
  115. } else {
  116. entity = nil
  117. }
  118. err = method(user, entity)
  119. if err != nil {
  120. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  121. return
  122. }
  123. supports.Ok(ctx, supports.OptionSuccess, nil)
  124. })
  125. }