wangpengfei
2023-08-25 25c573d55986e02cf5f70cc3868e2b94a4be98e2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package utils
 
import (
    "fmt"
    "srm/global"
    "srm/model/system"
    "strconv"
)
 
func RegisterApis(apis ...system.SysApi) {
    var count int64
    var apiPaths []string
    for i := range apis {
        apiPaths = append(apiPaths, apis[i].Path)
    }
    global.GVA_DB.Find(&[]system.SysApi{}, "path in (?)", apiPaths).Count(&count)
    if count > 0 {
        fmt.Println("插件已安装或存在同名路由")
        return
    }
    err := global.GVA_DB.Create(&apis).Error
    if err != nil {
        fmt.Println(err)
    }
}
 
func RegisterMenus(menus ...system.SysBaseMenu) {
    var count int64
    var menuNames []string
    parentMenu := menus[0]
    otherMenus := menus[1:]
    for i := range menus {
        menuNames = append(menuNames, menus[i].Name)
    }
    global.GVA_DB.Find(&[]system.SysBaseMenu{}, "name in (?)", menuNames).Count(&count)
    if count > 0 {
        fmt.Println("插件已安装或存在同名菜单")
        return
    }
    parentMenu.ParentId = "0"
    err := global.GVA_DB.Create(&parentMenu).Error
    if err != nil {
        fmt.Println(err)
    }
    for i := range otherMenus {
        pid := strconv.Itoa(int(parentMenu.ID))
        otherMenus[i].ParentId = pid
    }
    err = global.GVA_DB.Create(&otherMenus).Error
    if err != nil {
        fmt.Println(err)
    }
}