package svc import ( "applet/app/comm/db" "applet/app/comm/db/model" "applet/app/comm/utils/logx" "github.com/gin-gonic/gin" ) // 获取主模块 func SysModMain(c *gin.Context) (interface{}, error) { // 主模块信息 mainData, err := db.SysModFindMain(db.DBs[c.GetString("mid")]) // 判断返回数据是否为空 if mainData == nil || len(*mainData) < 1 { return nil, logx.Error(err) } var ModPIds []int for _, v := range *mainData { ModPIds = append(ModPIds, v.ModId) } var subData *[]model.SysModule subData, err = db.SysModFindByPIds(c, db.DBs[c.GetString("mid")], ModPIds...) if err != nil || subData == nil { return nil, err } type tmpStruct struct { model.SysModule Components []model.SysModule `json:"components"` } res := []tmpStruct{} for _, v := range *mainData { cpn := []model.SysModule{} for _, val := range *subData { if val.ModPid == v.ModId { cpn = append(cpn, val) } } res = append(res, tmpStruct{v, cpn}) } return res, nil } //GetBottomNavigation is 获取底部导航栏 func GetBottomNavigation(c *gin.Context) (*model.SysModule, error) { m, err := db.SysModFindNavIsUsedByPlatform(c, db.DBs[c.GetString("mid")], c.GetHeader("Platform")) if err != nil { return nil, err } return m, nil }