Skip to content

Commit 7cedc42

Browse files
奇淼(piexlmaxlyonnee
andauthored
* sys_initdb_mysql/pgsql.go: 优化流程, 创建database前,如果dbname为空直接返回 * 删除视图逻辑 * 摘除视图初始化逻辑 * 移除dialog废弃的title标签修改为header * 解决部分浏览器登录后遮罩不消失的bug * 修复角色菜单逻辑 * element 2.2.2=>2.2.5 * 修复插件模板 * 调整自动插件模板到插件功能下 * 切换角色切换至角色首页 Co-authored-by: Lyon.Nee <lyon.nee@outlook.com>
1 parent 81b097a commit 7cedc42

File tree

14 files changed

+102
-232
lines changed

14 files changed

+102
-232
lines changed

server/model/system/sys_authority_menu.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ type SysMenu struct {
99
Btns map[string]string `json:"btns" gorm:"-"`
1010
}
1111

12-
func (s SysMenu) TableName() string {
13-
return "authority_menu"
12+
type SysAuthorityMenu struct {
13+
MenuId string `json:"menuId" gorm:"comment:菜单ID;column:sys_base_menu_id"`
14+
AuthorityId string `json:"-" gorm:"comment:角色ID;column:sys_authority_authority_id"`
15+
}
16+
17+
func (s SysAuthorityMenu) TableName() string {
18+
return "sys_authority_menus"
1419
}

server/resource/example_plugin/main.go

Lines changed: 0 additions & 32 deletions
This file was deleted.

server/resource/plug_template/api/api.go.tpl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ type {{ .PlugName}}Api struct{}
1717
// @Success 200 {string} string "{"success":true,"data":{},"msg":"发送成功"}"
1818
// @Router /{{ .RouterGroup}}/routerName [post]
1919
func (p *{{ .PlugName}}Api) ApiName(c *gin.Context) {
20-
{{- if .HasRequest}}
20+
{{ if .HasRequest}}
2121
var plug model.Request
2222
_ = c.ShouldBindJSON(&plug)
23-
{{ end -}}
24-
if {{- if .HasResponse }} res, {{ end -}} err:= service.ServiceGroupApp.PlugService({{ if .HasRequest }}plug{{ end -}}); err != nil {
23+
{{ end }}
24+
if {{ if .HasResponse }} res, {{ end }} err:= service.ServiceGroupApp.PlugService({{ if .HasRequest }}plug{{ end -}}); err != nil {
2525
global.GVA_LOG.Error("失败!", zap.Error(err))
2626
response.FailWithMessage("失败", c)
2727
} else {

server/service/system/sys_casbin.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,14 @@ package system
22

33
import (
44
"errors"
5-
"github.com/casbin/casbin/v2/model"
6-
"go.uber.org/zap"
7-
"sync"
8-
95
"github.com/casbin/casbin/v2"
6+
"github.com/casbin/casbin/v2/model"
107
gormadapter "github.com/casbin/gorm-adapter/v3"
118
"github.com/flipped-aurora/gin-vue-admin/server/global"
129
"github.com/flipped-aurora/gin-vue-admin/server/model/system/request"
1310
_ "github.com/go-sql-driver/mysql"
11+
"go.uber.org/zap"
12+
"sync"
1413
)
1514

1615
//@author: [piexlmax](https://github.com/piexlmax)

server/service/system/sys_menu.go

Lines changed: 48 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,36 @@ var MenuServiceApp = new(MenuService)
2222

2323
func (menuService *MenuService) getMenuTreeMap(authorityId string) (treeMap map[string][]system.SysMenu, err error) {
2424
var allMenus []system.SysMenu
25+
var baseMenu []system.SysBaseMenu
2526
var btns []system.SysAuthorityBtn
2627
treeMap = make(map[string][]system.SysMenu)
27-
err = global.GVA_DB.Where("authority_id = ?", authorityId).Order("sort").Preload("Parameters").Find(&allMenus).Error
28+
29+
var SysAuthorityMenus []system.SysAuthorityMenu
30+
err = global.GVA_DB.Where("sys_authority_authority_id = ?", authorityId).Find(&SysAuthorityMenus).Error
31+
if err != nil {
32+
return
33+
}
34+
35+
var MenuIds []string
36+
37+
for i := range SysAuthorityMenus {
38+
MenuIds = append(MenuIds, SysAuthorityMenus[i].MenuId)
39+
}
40+
41+
err = global.GVA_DB.Where("id in (?)", MenuIds).Order("sort").Preload("Parameters").Find(&baseMenu).Error
2842
if err != nil {
2943
return
3044
}
45+
46+
for i := range baseMenu {
47+
allMenus = append(allMenus, system.SysMenu{
48+
SysBaseMenu: baseMenu[i],
49+
AuthorityId: authorityId,
50+
MenuId: strconv.Itoa(int(baseMenu[i].ID)),
51+
Parameters: baseMenu[i].Parameters,
52+
})
53+
}
54+
3155
err = global.GVA_DB.Where("authority_id = ?", authorityId).Preload("SysBaseMenuBtn").Find(&btns).Error
3256
if err != nil {
3357
return
@@ -167,7 +191,29 @@ func (menuService *MenuService) AddMenuAuthority(menus []system.SysBaseMenu, aut
167191
//@return: menus []system.SysMenu, err error
168192

169193
func (menuService *MenuService) GetMenuAuthority(info *request.GetAuthorityId) (menus []system.SysMenu, err error) {
170-
err = global.GVA_DB.Where("authority_id = ? ", info.AuthorityId).Order("sort").Find(&menus).Error
194+
var baseMenu []system.SysBaseMenu
195+
var SysAuthorityMenus []system.SysAuthorityMenu
196+
err = global.GVA_DB.Where("sys_authority_authority_id = ?", info.AuthorityId).Find(&SysAuthorityMenus).Error
197+
if err != nil {
198+
return
199+
}
200+
201+
var MenuIds []string
202+
203+
for i := range SysAuthorityMenus {
204+
MenuIds = append(MenuIds, SysAuthorityMenus[i].MenuId)
205+
}
206+
207+
err = global.GVA_DB.Where("id in (?) ", MenuIds).Order("sort").Find(&baseMenu).Error
208+
209+
for i := range baseMenu {
210+
menus = append(menus, system.SysMenu{
211+
SysBaseMenu: baseMenu[i],
212+
AuthorityId: info.AuthorityId,
213+
MenuId: strconv.Itoa(int(baseMenu[i].ID)),
214+
Parameters: baseMenu[i].Parameters,
215+
})
216+
}
171217
// sql := "SELECT authority_menu.keep_alive,authority_menu.default_menu,authority_menu.created_at,authority_menu.updated_at,authority_menu.deleted_at,authority_menu.menu_level,authority_menu.parent_id,authority_menu.path,authority_menu.`name`,authority_menu.hidden,authority_menu.component,authority_menu.title,authority_menu.icon,authority_menu.sort,authority_menu.menu_id,authority_menu.authority_id FROM authority_menu WHERE authority_menu.authority_id = ? ORDER BY authority_menu.sort ASC"
172218
// err = global.GVA_DB.Raw(sql, authorityId).Scan(&menus).Error
173219
return menus, err

server/service/system/sys_user.go

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,21 @@ func (userService *UserService) Login(u *system.SysUser) (userInter *system.SysU
4848
if ok := utils.BcryptCheck(u.Password, user.Password); !ok {
4949
return nil, errors.New("密码错误")
5050
}
51-
var am system.SysMenu
52-
ferr := global.GVA_DB.First(&am, "name = ? AND authority_id = ?", user.Authority.DefaultRouter, user.AuthorityId).Error
51+
52+
var SysAuthorityMenus []system.SysAuthorityMenu
53+
err = global.GVA_DB.Where("sys_authority_authority_id = ?", user.AuthorityId).Find(&SysAuthorityMenus).Error
54+
if err != nil {
55+
return
56+
}
57+
58+
var MenuIds []string
59+
60+
for i := range SysAuthorityMenus {
61+
MenuIds = append(MenuIds, SysAuthorityMenus[i].MenuId)
62+
}
63+
64+
var am system.SysBaseMenu
65+
ferr := global.GVA_DB.First(&am, "name = ? and id in (?)", user.Authority.DefaultRouter, MenuIds).Error
5366
if errors.Is(ferr, gorm.ErrRecordNotFound) {
5467
user.Authority.DefaultRouter = "404"
5568
}
@@ -125,10 +138,10 @@ func (userService *UserService) SetUserAuthorities(id uint, authorityIds []strin
125138
if TxErr != nil {
126139
return TxErr
127140
}
128-
useAuthority := []system.SysUseAuthority{}
141+
var useAuthority []system.SysUseAuthority
129142
for _, v := range authorityIds {
130143
useAuthority = append(useAuthority, system.SysUseAuthority{
131-
id, v,
144+
SysUserId: id, SysAuthorityAuthorityId: v,
132145
})
133146
}
134147
TxErr = tx.Create(&useAuthority).Error
@@ -182,8 +195,21 @@ func (userService *UserService) GetUserInfo(uuid uuid.UUID) (user system.SysUser
182195
if err != nil {
183196
return reqUser, err
184197
}
185-
var am system.SysMenu
186-
ferr := global.GVA_DB.First(&am, "name = ? AND authority_id = ?", reqUser.Authority.DefaultRouter, reqUser.AuthorityId).Error
198+
199+
var SysAuthorityMenus []system.SysAuthorityMenu
200+
err = global.GVA_DB.Where("sys_authority_authority_id = ?", reqUser.AuthorityId).Find(&SysAuthorityMenus).Error
201+
if err != nil {
202+
return
203+
}
204+
205+
var MenuIds []string
206+
207+
for i := range SysAuthorityMenus {
208+
MenuIds = append(MenuIds, SysAuthorityMenus[i].MenuId)
209+
}
210+
211+
var am system.SysBaseMenu
212+
ferr := global.GVA_DB.First(&am, "name = ? and id in (?)", reqUser.Authority.DefaultRouter, MenuIds).Error
187213
if errors.Is(ferr, gorm.ErrRecordNotFound) {
188214
reqUser.Authority.DefaultRouter = "404"
189215
}

server/source/system/menu.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ func (i *initMenu) InitializeData(ctx context.Context) (next context.Context, er
7676
{MenuLevel: 0, Hidden: false, ParentId: "14", Path: "autoCodeAdmin", Name: "autoCodeAdmin", Component: "view/systemTools/autoCodeAdmin/index.vue", Sort: 1, Meta: Meta{Title: "自动化代码管理", Icon: "magic-stick"}},
7777
{MenuLevel: 0, Hidden: true, ParentId: "14", Path: "autoCodeEdit/:id", Name: "autoCodeEdit", Component: "view/systemTools/autoCode/index.vue", Sort: 0, Meta: Meta{Title: "自动化代码-${id}", Icon: "magic-stick"}},
7878
{MenuLevel: 0, Hidden: false, ParentId: "14", Path: "autoPkg", Name: "autoPkg", Component: "view/systemTools/autoPkg/autoPkg.vue", Sort: 0, Meta: Meta{Title: "自动化package", Icon: "folder"}},
79-
{MenuLevel: 0, Hidden: false, ParentId: "14", Path: "autoPlug", Name: "autoPlug", Component: "view/systemTools/autoPlug/autoPlug.vue", Sort: 4, Meta: Meta{Title: "自动化插件模板", Icon: "folder"}},
79+
{MenuLevel: 0, Hidden: false, ParentId: "28", Path: "autoPlug", Name: "autoPlug", Component: "view/systemTools/autoPlug/autoPlug.vue", Sort: 4, Meta: Meta{Title: "自动化插件模板", Icon: "folder"}},
8080
{MenuLevel: 0, Hidden: false, ParentId: "0", Path: "plugin", Name: "plugin", Component: "view/routerHolder.vue", Sort: 6, Meta: Meta{Title: "插件系统", Icon: "cherry"}},
8181
{MenuLevel: 0, Hidden: false, ParentId: "28", Path: "plugin-email", Name: "plugin-email", Component: "plugin/email/view/index.vue", Sort: 1, Meta: Meta{Title: "邮件插件", Icon: "message"}},
8282
{MenuLevel: 0, Hidden: false, ParentId: "28", Path: "https://plugin.gin-vue-admin.com/", Name: "https://plugin.gin-vue-admin.com/", Component: "https://plugin.gin-vue-admin.com/", Sort: 0, Meta: Meta{Title: "插件市场", Icon: "shop"}},

server/source/system/view_authority_menu_mysql.go

Lines changed: 0 additions & 89 deletions
This file was deleted.

server/source/system/view_authority_menu_postgres.go

Lines changed: 0 additions & 88 deletions
This file was deleted.

0 commit comments

Comments
 (0)