| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- package system
- import (
- "github.com/samber/lo"
- "gorm.io/gorm"
- "time"
- )
- func (*Role) DataInit(db *gorm.DB) error {
- // 初始化用户等级
- reqs := []Role{
- {
- Name: "超级管理员",
- Desc: "管理所有权限",
- Apis: "*",
- Menus: "*",
- },
- }
- for _, req := range reqs {
- find := Role{}
- if stat := db.Model(&Role{}).Where("name", req.Name).
- Find(&find).Statement; stat.RowsAffected == 0 {
- if err := db.Create(&req).Error; err != nil {
- return err
- }
- }
- }
- return nil
- }
- func (*Apis) DataInit(db *gorm.DB) error {
- // 初始化用户等级
- reqs := []Apis{
- {
- ParentId: 0,
- Name: "待定义接口",
- Group: "待分配组",
- Method: "All",
- Path: "/",
- },
- }
- for _, req := range reqs {
- find := Apis{}
- if stat := db.Model(&Apis{}).Where("name = ?", req.Name).Find(&find).Statement; stat.RowsAffected == 0 {
- if err := db.Create(&req).Error; err != nil {
- return err
- }
- }
- }
- return nil
- }
- func (*Menus) DataInit(db *gorm.DB) error {
- // 初始化菜单
- reqs := []Menus{
- // 红包管理主菜单
- {
- ParentId: 0,
- Name: "红包管理",
- Icon: "Wallet",
- Router: "/redpacket",
- Sort: 1,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- // 红包配置
- {
- ParentId: 1,
- Name: "红包配置",
- Icon: "Menu",
- Router: "/redpacket/config",
- Component: "@/views/redpacket/config/index.vue",
- Sort: 1,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- // 手动发送
- {
- ParentId: 1,
- Name: "手动发送",
- Icon: "Menu",
- Router: "/redpacket/send",
- Component: "@/views/redpacket/send/index.vue",
- Sort: 2,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- // 红包记录
- {
- ParentId: 1,
- Name: "红包记录",
- Icon: "Menu",
- Router: "/redpacket/record",
- Component: "@/views/redpacket/record/index.vue",
- Sort: 3,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- // 群组管理
- {
- ParentId: 1,
- Name: "群组管理",
- Icon: "Menu",
- Router: "/redpacket/group",
- Component: "@/views/redpacket/group/index.vue",
- Sort: 4,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- // 系统配置
- {
- ParentId: 0,
- Name: "系统配置",
- Icon: "Setting",
- Router: "/system",
- Sort: 100,
- Enable: true,
- IsHide: false,
- IsFull: false,
- IsAffix: false,
- IsKeepAlive: true,
- },
- }
- for _, req := range reqs {
- find := Menus{}
- if stat := db.Model(&Menus{}).Where("router = ?", req.Router).Find(&find).Statement; stat.RowsAffected == 0 {
- if err := db.Create(&req).Error; err != nil {
- return err
- }
- }
- }
- return nil
- }
- const AdminId int64 = 1
- func (r *Administrator) DataInit(db *gorm.DB) error {
- // 初始化用户等级
- password, salt := r.EncodePassword("666666")
- reqs := []Administrator{
- {
- ID: AdminId,
- Nickname: "超级管理员",
- Username: "superman",
- Password: password,
- Salt: salt,
- GoogleKey: "",
- Avatar: "",
- RoleId: 1,
- LastLoginTime: lo.ToPtr(time.Now()),
- },
- }
- for _, req := range reqs {
- find := NewAdministrator()
- if stat := db.Model(&Administrator{}).Where("id", AdminId).
- Find(&find).Statement; stat.RowsAffected == 0 {
- if err := db.Create(&req).Error; err != nil {
- return err
- }
- }
- }
- return nil
- }
|