package engine import ( "fmt" "git.qianqiusoft.com/qianqiusoft/light-apiengine/models" "github.com/xormplus/xorm" "regexp" ) func CreateDatabase(engine *ApiEngine) { if engine.OrmEngine.DriverName() == "mysql" { dbname := engine.OrmEngine.DataSourceName() reg := regexp.MustCompile("(.*)/(.*)(\\?.*)") //strings := reg.FindAllStringSubmatch(s, -1) strings := reg.FindStringSubmatch(dbname) fmt.Println(strings) if len(strings) > 3 { dbname = strings[2] db, _ := xorm.NewEngine(engine.OrmEngine.DriverName(), strings[1]+"/") db.ShowSQL(true) _, err := db.Sql("CREATE DATABASE IF NOT EXISTS `" + dbname + "` default charset utf8 COLLATE utf8_general_ci").Execute() if err != nil { fmt.Println("create database error", err) } else { fmt.Println("create database success:", dbname) } } } } func InitDbData(engine *ApiEngine) { orgs := []models.SysOrganization{ { Id: "287c50a4-caad-4557-80c8-aca81af9f370", Name: "千秋软件", }, } users := []models.SysUser{ { Id: "187c50a4-caad-4557-80c8-aca81af9f370", Name: "管理员", LoginId: "admin", OrgId: "287c50a4-caad-4557-80c8-aca81af9f370", Password: "123456", }, } roles := []models.SysRole{ { Id: "487c50a4-caad-4557-80c8-aca81af9f370", Name: "超级管理员", }, } userRoles := []models.SysUserRole{ { Id: "587c50a4-caad-4557-80c8-aca81af9f370", RoleId: "387c50a4-caad-4557-80c8-aca81af9f370", UserId: "187c50a4-caad-4557-80c8-aca81af9f370", }, } menus := []models.SysMenu{ { Id: "387c50a4-caad-4557-80c8-aca81af9f370", Name: "系统管理", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f371", Name: "用户管理", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/user", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f372", Name: "组织架构", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/org", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f373", Name: "角色管理", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/role", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f374", Name: "菜单管理", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/menu", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f375", Name: "字典管理", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/dict", }, { Id: "387c50a4-caad-4557-80c8-aca81af9f376", Name: "日志管理", Parent: "387c50a4-caad-4557-80c8-aca81af9f370", Url: "/sys/log", }, } _, err := engine.OrmEngine.Insert(orgs) printError(err) _, err = engine.OrmEngine.Insert(users) printError(err) _, err = engine.OrmEngine.Insert(roles) printError(err) _, err = engine.OrmEngine.Insert(userRoles) printError(err) _, err = engine.OrmEngine.Insert(menus) printError(err) }