Hub-Api/initialize/init.go

62 lines
939 B
Go

package initialize
import (
"netina/database"
m "netina/models"
"os"
"time"
Role_repository "netina/repositories/role"
User_repository "netina/repositories/user"
"github.com/joho/godotenv"
)
func Init()error {
err := godotenv.Load("./config/.env")
if err != nil {
panic(err)
}
db := database.Db()
role_command := Role_repository.RoleCommandRepository{DB: &db}
role_query := Role_repository.RoleQueryRepository{DB: &db}
user_command := User_repository.UserCommandRepository{DB: &db}
role := &m.Role{
Name: "admin",
}
if err := role_command.CreateRole(role) ; err != nil {
return err
}
tempRole , err := role_query.GetRoleByName("admin")
if err != nil {
return err
}
user := &m.User{
Name: "admin",
PhoneNumber: os.Getenv("ADMIN_NUMBER"),
Role_id: tempRole.Role_id,
Created_at: time.Now(),
}
if err := user_command.CreateUser(user) ; err != nil {
return err
}
return nil
}