34 lines
570 B
Go
34 lines
570 B
Go
package models
|
|
|
|
import (
|
|
"errors"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
const (
|
|
defaultAdminUsername = "admin"
|
|
defaultAdminPassword = "123456"
|
|
)
|
|
|
|
func EnsureDefaultAdmin(db *gorm.DB) error {
|
|
var user User
|
|
err := db.Where("username = ?", defaultAdminUsername).First(&user).Error
|
|
if err == nil {
|
|
return nil
|
|
}
|
|
if !errors.Is(err, gorm.ErrRecordNotFound) {
|
|
return err
|
|
}
|
|
|
|
admin := User{
|
|
Username: defaultAdminUsername,
|
|
Password: defaultAdminPassword,
|
|
Role: UserRoleSuperAdmin,
|
|
FlavorType: UserFlavorAll,
|
|
IsActive: true,
|
|
}
|
|
|
|
return db.Create(&admin).Error
|
|
}
|