update: The code structure is finished, and the project can run successfully
This commit is contained in:
25
server/initialize/db_table.go
Normal file
25
server/initialize/db_table.go
Normal file
@@ -0,0 +1,25 @@
|
||||
package initialize
|
||||
|
||||
import (
|
||||
"gin-vue-admin/global"
|
||||
"gin-vue-admin/model"
|
||||
)
|
||||
|
||||
//注册数据库表专用
|
||||
func DBTables() {
|
||||
db := global.GVA_DB
|
||||
db.AutoMigrate(model.SysUser{},
|
||||
model.SysAuthority{},
|
||||
model.SysMenu{},
|
||||
model.SysApi{},
|
||||
model.SysBaseMenu{},
|
||||
model.JwtBlacklist{},
|
||||
model.SysWorkflow{},
|
||||
model.SysWorkflowStepInfo{},
|
||||
model.ExaFileUploadAndDownload{},
|
||||
model.ExaFile{},
|
||||
model.ExaFileChunk{},
|
||||
model.ExaCustomer{},
|
||||
)
|
||||
global.GVA_LOG.Debug("register table success")
|
||||
}
|
20
server/initialize/mysql.go
Normal file
20
server/initialize/mysql.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package initialize
|
||||
|
||||
import (
|
||||
"gin-vue-admin/global"
|
||||
"github.com/jinzhu/gorm"
|
||||
_ "github.com/jinzhu/gorm/dialects/mysql"
|
||||
)
|
||||
|
||||
//初始化数据库并产生数据库全局变量
|
||||
func Mysql() {
|
||||
admin := global.GVA_CONFIG.Mysql
|
||||
if db, err := gorm.Open("mysql", admin.Username+":"+admin.Password+"@("+admin.Path+")/"+admin.Dbname+"?"+admin.Config); err != nil {
|
||||
global.GVA_LOG.Error("DEFAULTDB数据库启动异常", err)
|
||||
} else {
|
||||
global.GVA_DB = db
|
||||
global.GVA_DB.DB().SetMaxIdleConns(admin.MaxIdleConns)
|
||||
global.GVA_DB.DB().SetMaxOpenConns(admin.MaxOpenConns)
|
||||
global.GVA_DB.LogMode(admin.LogMode)
|
||||
}
|
||||
}
|
22
server/initialize/redis.go
Normal file
22
server/initialize/redis.go
Normal file
@@ -0,0 +1,22 @@
|
||||
package initialize
|
||||
|
||||
import (
|
||||
"gin-vue-admin/global"
|
||||
"github.com/go-redis/redis"
|
||||
)
|
||||
|
||||
func Redis() {
|
||||
redisCfg := global.GVA_CONFIG.Redis
|
||||
client := redis.NewClient(&redis.Options{
|
||||
Addr: redisCfg.Addr,
|
||||
Password: redisCfg.Password, // no password set
|
||||
DB: redisCfg.DB, // use default DB
|
||||
})
|
||||
pong, err := client.Ping().Result()
|
||||
if err != nil {
|
||||
global.GVA_LOG.Error(err)
|
||||
} else {
|
||||
global.GVA_LOG.Info("redis connect ping response:", pong)
|
||||
global.GVA_REDIS = client
|
||||
}
|
||||
}
|
40
server/initialize/router.go
Normal file
40
server/initialize/router.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package initialize
|
||||
|
||||
import (
|
||||
_ "gin-vue-admin/docs"
|
||||
"gin-vue-admin/global"
|
||||
"gin-vue-admin/middleware"
|
||||
"gin-vue-admin/router"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/swaggo/gin-swagger"
|
||||
"github.com/swaggo/gin-swagger/swaggerFiles"
|
||||
)
|
||||
|
||||
//初始化总路由
|
||||
func Routers() *gin.Engine {
|
||||
var Router = gin.Default()
|
||||
|
||||
//Router.Use(middleware.LoadTls()) // 打开就能玩https了
|
||||
global.GVA_LOG.Debug("use middleware logger")
|
||||
// 跨域
|
||||
Router.Use(middleware.Cors())
|
||||
global.GVA_LOG.Debug("use middleware cors")
|
||||
Router.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
|
||||
global.GVA_LOG.Debug("register swagger handler")
|
||||
// 方便统一添加路由组前缀 多服务器上线使用
|
||||
ApiGroup := Router.Group("")
|
||||
router.InitUserRouter(ApiGroup) // 注册用户路由
|
||||
router.InitBaseRouter(ApiGroup) // 注册基础功能路由 不做鉴权
|
||||
router.InitMenuRouter(ApiGroup) // 注册menu路由
|
||||
router.InitAuthorityRouter(ApiGroup) // 注册角色路由
|
||||
router.InitApiRouter(ApiGroup) // 注册功能api路由
|
||||
router.InitFileUploadAndDownloadRouter(ApiGroup) // 文件上传下载功能路由
|
||||
router.InitWorkflowRouter(ApiGroup) // 工作流相关路由
|
||||
router.InitCasbinRouter(ApiGroup) // 权限相关路由
|
||||
router.InitJwtRouter(ApiGroup) // jwt相关路由
|
||||
router.InitSystemRouter(ApiGroup) // system相关路由
|
||||
router.InitCustomerRouter(ApiGroup) // 客户路由
|
||||
router.InitAutoCodeRouter(ApiGroup) // 创建自动化代码
|
||||
global.GVA_LOG.Info("router register success")
|
||||
return Router
|
||||
}
|
Reference in New Issue
Block a user