diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 786b1adbf43be90de1cc470b2d93b71a993e27af..6584d9917b3af6770721c8a1268f34c26e73cabd 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -9,4 +9,4 @@ community_bridge: # Replace with a single Community Bridge project-name e.g., cl liberapay: # Replace with a single Liberapay username issuehunt: # Replace with a single IssueHunt username otechie: # Replace with a single Otechie username -custom: http://doc.henrongyi.top/more/coffee.html#%E6%8D%90%E8%B5%A0 +custom: https://www.gin-vue-admin.com/docs/coffee diff --git a/server/config.yaml b/server/config.yaml index 6ed6ccfd395a17c08a1f543245c5640e7082594d..63ac5e99ba89a8dbecf64713efc154af353bd2cd 100644 --- a/server/config.yaml +++ b/server/config.yaml @@ -29,7 +29,7 @@ sqlite: # 切换本地与七牛云上传,分配头像和文件路径 localupload: - local: true + local: false avatar-path: uploads/avatar file-path: uploads/file diff --git a/server/core/install_plugs.go b/server/core/install_plugs.go index cbda608bb5e7d00c478efcc57c58091337b4d6bd..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/server/core/install_plugs.go +++ b/server/core/install_plugs.go @@ -1,22 +0,0 @@ -package core - -import ( - "github.com/gin-gonic/gin" -) - -func InstallPlugs(route *gin.Engine) { - //gorm 升级v2 插件暂时没有升级 插件示例功能暂时不可用 - //GvaPlugsGroupBase := route.Group("") // 纯净路由 插件可通用 传递给插件的0号位置 为了不让插件的自动路由出问题 这里建议为 "" - ///**安装一个插件需要的步骤 start**/ - //GvaPlugsGroupMiddle := route.Group("") // 携带中间件的路由 传递给插件的1号位置 为了不让插件的自动路由出问题 这里建议为 "" - //GvaPlugsGroupMiddle.Use(middleware.JWTAuth()).Use(middleware.CasbinHandler()) - //// 插件安装 暂时只是后台功能 添加model 添加路由 添加对数据库的操作 详细插件测试模板可看https://github.com/piexlmax/gvaplug 此处不建议投入生产 - //err := initialize.InstallPlug(global.GVA_DB, [2]*gin.RouterGroup{ - // GvaPlugsGroupBase, - // GvaPlugsGroupMiddle, - //}, gvaplug.GvaPlug{SomeConfig: "插件给用户提供的配置区域"}) - //if err != nil { - // panic(fmt.Sprintf("插件安装失败: %v", err)) - //} - ///**安装一个插件需要的步骤 end**/ -} diff --git a/server/core/server.go b/server/core/server.go index f855aede0e81b61e01471ffecbc831b413fa5a0a..e7e1cf7eba7f03d5eb481d61dfdea179eb591ae2 100644 --- a/server/core/server.go +++ b/server/core/server.go @@ -19,9 +19,6 @@ func RunWindowsServer() { Router := initialize.Routers() Router.Static("/form-generator", "./resource/page") - //InstallPlugs(Router) - // end 插件描述 - address := fmt.Sprintf(":%d", global.GVA_CONFIG.System.Addr) s := initServer(address, Router) // 保证文本顺序输出 diff --git a/server/initialize/mysql.go b/server/initialize/mysql.go index 7f5450c3220ba0f9f1eef6849143a900091eb2f4..7cbe0077ea67fce9eb553828669a778352d86399 100644 --- a/server/initialize/mysql.go +++ b/server/initialize/mysql.go @@ -13,7 +13,7 @@ func Mysql() { admin := global.GVA_CONFIG.Mysql mysqlConfig := mysql.Config{ DSN: admin.Username + ":" + admin.Password + "@(" + admin.Path + ")/" + admin.Dbname + "?" + admin.Config, // DSN data source name - DefaultStringSize: 256, // string 类型字段的默认长度 + DefaultStringSize: 191, // string 类型字段的默认长度 DisableDatetimePrecision: true, // 禁用 datetime 精度,MySQL 5.6 之前的数据库不支持 DontSupportRenameIndex: true, // 重命名索引时采用删除并新建的方式,MySQL 5.7 之前的数据库和 MariaDB 不支持重命名索引 DontSupportRenameColumn: true, // 用 `change` 重命名列,MySQL 8 之前的数据库和 MariaDB 不支持重命名列 @@ -22,12 +22,13 @@ func Mysql() { var gormConfig *gorm.Config if admin.LogMode { //根据配置决定是否开启日志 gormConfig = &gorm.Config{ - Logger: logger.Default.LogMode(logger.Info), + Logger: logger.Default.LogMode(logger.Info), DisableForeignKeyConstraintWhenMigrating: true, } } else { gormConfig = &gorm.Config{ - Logger: logger.Default.LogMode(logger.Silent), + Logger: logger.Default.LogMode(logger.Silent), + DisableForeignKeyConstraintWhenMigrating: true, } } diff --git a/server/initialize/plug.go b/server/initialize/plug.go index f026aa5371276ddda9f3b008d0af35c5e1b442f7..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/server/initialize/plug.go +++ b/server/initialize/plug.go @@ -1,23 +0,0 @@ -package initialize - -import ( - "github.com/gin-gonic/gin" - "gorm.io/gorm" -) - -type Plug interface { - InitRouter([2]*gin.RouterGroup) error - InitModel(*gorm.DB) error -} - -func InstallPlug(db *gorm.DB, router [2]*gin.RouterGroup, p Plug) (err error) { - err = p.InitModel(db) - if err != nil { - return err - } - err = p.InitRouter(router) - if err != nil { - return err - } - return nil -} diff --git a/server/model/sys_authority.go b/server/model/sys_authority.go index db351d485e04f0c7fabdc8b8d6fa15c3f3645513..07add7e20e322a5a54b673b7f6c2f9aef4b365c7 100644 --- a/server/model/sys_authority.go +++ b/server/model/sys_authority.go @@ -8,7 +8,7 @@ type SysAuthority struct { CreatedAt time.Time UpdatedAt time.Time DeletedAt *time.Time `sql:"index"` - AuthorityId string `json:"authorityId" gorm:"not null;unique;primary_key" gorm:"comment:'角色ID'"` + AuthorityId string `json:"authorityId" gorm:"not null;unique;primary_key;comment:'角色ID';size:90"` AuthorityName string `json:"authorityName" gorm:"comment:'角色名'"` ParentId string `json:"parentId" gorm:"comment:'父角色ID'"` DataAuthorityId []SysAuthority `json:"dataAuthorityId" gorm:"many2many:sys_data_authority_id"` @@ -22,4 +22,4 @@ func SysAuthorityData() []SysAuthority { {CreatedAt: time.Now(), UpdatedAt: time.Now(), AuthorityId: "8881", AuthorityName: "普通用户子角色", ParentId: "888"}, {CreatedAt: time.Now(), UpdatedAt: time.Now(), AuthorityId: "9528", AuthorityName: "测试角色", ParentId: "0"}, } -} \ No newline at end of file +} diff --git a/server/resource/template/te/model.go.tpl b/server/resource/template/te/model.go.tpl index 81522aeeb76f142dd43ee61348abbd8aff42a6c1..4c7ddc7f52e473dcccde3d37cd909baa4eefb47b 100644 --- a/server/resource/template/te/model.go.tpl +++ b/server/resource/template/te/model.go.tpl @@ -9,9 +9,9 @@ import ( type {{.StructName}} struct { gorm.Model {{- range .Fields}} {{- if eq .FieldType "bool" }} - {{.FieldName}} *{{.FieldType}} `json:"{{.FieldJson}}" form:"{{.FieldJson}}" gorm:"column:{{.ColumnName}};comment:'{{.Comment}}'{{- if .DataType -}};type:{{.DataType}}{{- if .DataTypeLong -}}({{.DataTypeLong}}){{- end -}}{{- end -}}"` + {{.FieldName}} *{{.FieldType}} `json:"{{.FieldJson}}" form:"{{.FieldJson}}" gorm:"column:{{.ColumnName}};comment:'{{.Comment}}'{{- if .DataType -}};type:{{.DataType}};{{- if .DataTypeLong -}}size:{{.DataTypeLong}};{{- end -}}{{- end -}}"` {{- else }} - {{.FieldName}} {{.FieldType}} `json:"{{.FieldJson}}" form:"{{.FieldJson}}" gorm:"column:{{.ColumnName}};comment:'{{.Comment}}'{{- if .DataType -}};type:{{.DataType}}{{- if .DataTypeLong -}}({{.DataTypeLong}}){{- end -}}{{- end -}}"` + {{.FieldName}} {{.FieldType}} `json:"{{.FieldJson}}" form:"{{.FieldJson}}" gorm:"column:{{.ColumnName}};comment:'{{.Comment}}'{{- if .DataType -}};type:{{.DataType}};{{- if .DataTypeLong -}}size:{{.DataTypeLong}};{{- end -}}{{- end -}}"` {{- end }} {{- end }} } diff --git a/server/service/initialize.go b/server/service/initialize.go index a9c796b976d5ac31ed6591c42770ac239151639c..4e5287c91208c648e87b54a0cc419fd0bb7481c9 100644 --- a/server/service/initialize.go +++ b/server/service/initialize.go @@ -76,7 +76,7 @@ func InitSysBaseMenus() (err error) { } func InitAuthorityMenu() (err error) { - return global.GVA_DB.Exec("CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `authority_menu` AS\nselect `sys_base_menus`.`id` AS `id`,\n `sys_base_menus`.`created_at` AS `created_at`,\n `sys_base_menus`.`updated_at` AS `updated_at`,\n `sys_base_menus`.`deleted_at` AS `deleted_at`,\n `sys_base_menus`.`menu_level` AS `menu_level`,\n `sys_base_menus`.`parent_id` AS `parent_id`,\n `sys_base_menus`.`path` AS `path`,\n `sys_base_menus`.`name` AS `name`,\n `sys_base_menus`.`hidden` AS `hidden`,\n `sys_base_menus`.`component` AS `component`,\n `sys_base_menus`.`title` AS `title`,\n `sys_base_menus`.`icon` AS `icon`,\n `sys_base_menus`.`sort` AS `sort`,\n `sys_authority_menus`.`sys_authority_authority_id` AS `authority_id`,\n `sys_authority_menus`.`sys_base_menu_id` AS `menu_id`,\n `sys_base_menus`.`keep_alive` AS `keep_alive`,\n `sys_base_menus`.`default_menu` AS `default_menu`\nfrom (`sys_authority_menus`\n join `sys_base_menus` on ((`sys_authority_menus`.`sys_base_menu_id` = `sys_base_menus`.`id`)));").Error + return global.GVA_DB.Exec("CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `authority_menu` AS select `sys_base_menus`.`id` AS `id`,`sys_base_menus`.`created_at` AS `created_at`, `sys_base_menus`.`updated_at` AS `updated_at`, `sys_base_menus`.`deleted_at` AS `deleted_at`, `sys_base_menus`.`menu_level` AS `menu_level`,`sys_base_menus`.`parent_id` AS `parent_id`,`sys_base_menus`.`path` AS `path`,`sys_base_menus`.`name` AS `name`,`sys_base_menus`.`hidden` AS `hidden`,`sys_base_menus`.`component` AS `component`, `sys_base_menus`.`title` AS `title`,`sys_base_menus`.`icon` AS `icon`,`sys_base_menus`.`sort` AS `sort`,`sys_authority_menus`.`sys_authority_authority_id` AS `authority_id`,`sys_authority_menus`.`sys_base_menu_id` AS `menu_id`,`sys_base_menus`.`keep_alive` AS `keep_alive`,`sys_base_menus`.`default_menu` AS `default_menu` from (`sys_authority_menus` join `sys_base_menus` on ((`sys_authority_menus`.`sys_base_menu_id` = `sys_base_menus`.`id`)));").Error } func InitSysDictionary() (err error) { diff --git a/web/src/view/layout/aside/index.vue b/web/src/view/layout/aside/index.vue index 19b80fb71e43889df9f58204fab1ab93df38b535..f427050b48920639375a644d9df42b25922eff32 100644 --- a/web/src/view/layout/aside/index.vue +++ b/web/src/view/layout/aside/index.vue @@ -45,7 +45,6 @@ export default { params[item.key] = item.value; } }); - console.log(query, params); if (index === this.$route.name) return; this.$router.push({ name: index, query, params }); }