authorities.go 913 字节
Newer Older
1 2 3
package datas

import (
Sliver_Horn's avatar
Sliver_Horn 已提交
4
	"github.com/gookit/color"
5 6 7 8 9 10 11 12 13 14 15 16 17 18
	"time"

	"gin-vue-admin/model"
	"gorm.io/gorm"
)

var Authorities = []model.SysAuthority{
	{CreatedAt: time.Now(), UpdatedAt: time.Now(), AuthorityId: "888", AuthorityName: "普通用户", ParentId: "0"},
	{CreatedAt: time.Now(), UpdatedAt: time.Now(), AuthorityId: "8881", AuthorityName: "普通用户子角色", ParentId: "888"},
	{CreatedAt: time.Now(), UpdatedAt: time.Now(), AuthorityId: "9528", AuthorityName: "测试角色", ParentId: "0"},
}

func InitSysAuthority(db *gorm.DB) (err error) {
	return db.Transaction(func(tx *gorm.DB) error {
Sliver_Horn's avatar
Sliver_Horn 已提交
19 20 21 22
		if tx.Where("authority_id IN ? ", []string{"888", "9528"}).Find(&[]model.SysAuthority{}).RowsAffected == 2 {
			color.Danger.Println("sys_authorities表的初始数据已存在!")
			return nil
		}
23 24 25 26 27 28
		if tx.Create(&Authorities).Error != nil { // 遇到错误时回滚事务
			return err
		}
		return nil
	})
}