93 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package db
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 	"log"
 | |
| 
 | |
| 	db "management/internal/db/sqlc"
 | |
| 	"management/internal/global/pearadmin"
 | |
| )
 | |
| 
 | |
| func InitSeed() {
 | |
| 	ctx := context.Background()
 | |
| 
 | |
| 	// 后台pear配置
 | |
| 	b, err := db.Engine.ExistsSysConfigByKey(ctx, pearadmin.PearKey)
 | |
| 	if err != nil {
 | |
| 		log.Fatalf("failed to get sys config: %v", err)
 | |
| 	}
 | |
| 	if !b {
 | |
| 		err = initConfig()
 | |
| 		if err != nil {
 | |
| 			log.Fatal("sys config: ", err)
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// 部门
 | |
| 	b, err = db.Engine.ExistsSysDepartment(ctx)
 | |
| 	if err != nil {
 | |
| 		log.Fatal("department exists: ", err)
 | |
| 	}
 | |
| 	var depart *db.SysDepartment
 | |
| 	if !b {
 | |
| 		depart, err = initDepartment()
 | |
| 		if err != nil {
 | |
| 			log.Fatal("department: ", err)
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// 角色
 | |
| 	b, err = db.Engine.ExistsVipRole(ctx)
 | |
| 	if err != nil {
 | |
| 		log.Fatal("role exists: ", err)
 | |
| 	}
 | |
| 	var role *db.SysRole
 | |
| 	if !b {
 | |
| 		role, err = initRole()
 | |
| 		if err != nil {
 | |
| 			log.Fatal("role: ", err)
 | |
| 		}
 | |
| 	} else {
 | |
| 		role, err = db.Engine.GetFirstVipRole(ctx)
 | |
| 		if err != nil {
 | |
| 			log.Fatal("find role: ", err)
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// 用户
 | |
| 	b, err = db.Engine.ExistsSysUser(ctx)
 | |
| 	if err != nil {
 | |
| 		log.Fatal("user exists: ", err)
 | |
| 	}
 | |
| 	if !b {
 | |
| 		_, err = initUser(depart.ID, role.ID)
 | |
| 		if err != nil {
 | |
| 			log.Fatal("user: ", err)
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// 类别
 | |
| 	b, err = db.Engine.ExistsCategories(ctx)
 | |
| 	if err != nil {
 | |
| 		log.Fatal("category exists: ", err)
 | |
| 	}
 | |
| 	if !b {
 | |
| 		_, err := initCategory()
 | |
| 		if err != nil {
 | |
| 			log.Fatal("category: ", err)
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 	// 菜单
 | |
| 	b, err = db.Engine.ExistsMenu(ctx)
 | |
| 	if err != nil {
 | |
| 		log.Fatal("menu exists: ", err)
 | |
| 	}
 | |
| 	if !b {
 | |
| 		err = initMenu()
 | |
| 		if err != nil {
 | |
| 			log.Fatal("menu: ", err)
 | |
| 		}
 | |
| 	}
 | |
| }
 |