sys_register_auth.go 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package service
  2. import (
  3. "Medical_OAuth/common/actions"
  4. cDto "Medical_OAuth/common/dto"
  5. "Medical_OAuth/common/global"
  6. "errors"
  7. "gogs.baozhida.cn/zoie/OAuth-core/pkg/utils"
  8. "gogs.baozhida.cn/zoie/OAuth-core/service"
  9. "gorm.io/gorm"
  10. "Medical_OAuth/app/admin/model"
  11. "Medical_OAuth/app/admin/service/dto"
  12. )
  13. type SysRegisterAuth struct {
  14. service.Service
  15. }
  16. // GetPage 获取SysRegisterAuth列表
  17. func (e *SysRegisterAuth) GetPage(c *dto.SysRegisterAuthPageReq, list *[]model.SysRegisterAuth, count *int64) error {
  18. var err error
  19. var data model.SysRegisterAuth
  20. err = e.Orm.Model(&data).
  21. Scopes(
  22. cDto.MakeCondition(c.GetNeedSearch()),
  23. cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
  24. ).
  25. Find(list).Limit(-1).Offset(-1).
  26. Count(count).Error
  27. if err != nil {
  28. e.Log.Errorf("db error: %s \r", err)
  29. return global.GetFailedErr
  30. }
  31. return nil
  32. }
  33. // Get 获取SysRegisterAuth对象
  34. func (e *SysRegisterAuth) Get(d *dto.SysRegisterAuthGetReq, postModel *model.SysRegisterAuth, p *actions.DataPermission) error {
  35. err := e.Orm.
  36. Scopes(actions.Permission(postModel.TableName(), p)).
  37. First(postModel, d.GetId()).Error
  38. if err != nil {
  39. e.Log.Errorf("db error: %s", err)
  40. if errors.Is(err, gorm.ErrRecordNotFound) {
  41. return global.GetNotFoundOrNoPermissionErr
  42. }
  43. return global.GetFailedErr
  44. }
  45. return nil
  46. }
  47. // Insert 创建SysRegisterAuth对象
  48. func (e *SysRegisterAuth) Insert(c *dto.SysRegisterAuthInsertReq) error {
  49. var err error
  50. var data model.SysRegisterAuth
  51. var URKey string
  52. for {
  53. URKey = utils.GetRandString(16, "", 0)
  54. var j int64
  55. err = e.Orm.Model(&data).Where("ur_key = ?", URKey).Count(&j).Error
  56. if err != nil {
  57. continue
  58. }
  59. if j == 0 {
  60. break
  61. }
  62. }
  63. c.Generate(&data)
  64. data.URKey = URKey
  65. err = e.Orm.Create(&data).Error
  66. if err != nil {
  67. e.Log.Errorf("db error: %s", err)
  68. return global.CreateFailedErr
  69. }
  70. c.Id = data.Id
  71. return nil
  72. }
  73. // Update 修改SysRegisterAuth对象
  74. func (e *SysRegisterAuth) Update(c *dto.SysRegisterAuthUpdateReq) error {
  75. var postModel = model.SysRegisterAuth{}
  76. err := e.Orm.First(&postModel, c.GetId()).Error
  77. if err != nil {
  78. e.Log.Errorf("db error: %s", err)
  79. if errors.Is(err, gorm.ErrRecordNotFound) {
  80. return global.UpdateNotFoundOrNoPermissionErr
  81. }
  82. return global.UpdateFailedErr
  83. }
  84. c.Generate(&postModel)
  85. err = e.Orm.Save(&postModel).Error
  86. if err != nil {
  87. e.Log.Errorf("db error: %s", err)
  88. return global.UpdateFailedErr
  89. }
  90. return nil
  91. }
  92. // Remove 删除SysRegisterAuth
  93. func (e *SysRegisterAuth) Remove(d *dto.SysRegisterAuthDeleteReq) error {
  94. var err error
  95. var data model.SysRegisterAuth
  96. db := e.Orm.Model(&data).Delete(&data, d.GetId())
  97. if err = db.Error; err != nil {
  98. e.Log.Errorf("Delete error: %s", err)
  99. return global.DeleteFailedErr
  100. }
  101. if db.RowsAffected == 0 {
  102. return global.DeleteNotFoundOrNoPermissionErr
  103. }
  104. return nil
  105. }