authority.go 752 B

123456789101112131415161718192021222324252627282930
  1. package dbModel
  2. import (
  3. "github.com/jinzhu/gorm"
  4. "github.com/pkg/errors"
  5. "main/init/qmsql"
  6. )
  7. type Authority struct {
  8. gorm.Model `json:"-"`
  9. AuthorityId uint `json:"authorityId" gorm:"not null;unique"`
  10. AuthorityName string `json:"authorityName"`
  11. }
  12. // 创建角色
  13. func (a *Authority) CreateAuthority() (err error, authority *Authority) {
  14. err = qmsql.DEFAULTDB.Create(a).Error
  15. return err, a
  16. }
  17. // 删除角色
  18. func (a *Authority) DeleteAuthority() (err error) {
  19. err = qmsql.DEFAULTDB.Where("authority_id = ?", a.AuthorityId).Find(&User{}).Error
  20. if err != nil {
  21. err = qmsql.DEFAULTDB.Where("authority_id = ?", a.AuthorityId).Delete(a).Error
  22. } else {
  23. err = errors.New("此角色有用户正在使用禁止删除")
  24. }
  25. return err
  26. }