|
@@ -35,24 +35,24 @@ type WorkDesktopMenu struct {
|
|
// JYMenu 工作桌面菜单内容
|
|
// JYMenu 工作桌面菜单内容
|
|
type JYMenu struct {
|
|
type JYMenu struct {
|
|
Id int
|
|
Id int
|
|
- Name string //菜单名称
|
|
|
|
- Match string //滤镜过滤正则
|
|
|
|
- OrderId int //菜单排序id
|
|
|
|
- ParentId int //父级id
|
|
|
|
- PowerIds string //权限id
|
|
|
|
- CheckCode int //是否必须验证权限才显示菜单
|
|
|
|
- Url string //菜单跳转链接
|
|
|
|
- Icon string //菜单图标
|
|
|
|
- AdditionalInfo Additional //附加弹窗信息
|
|
|
|
- AppType string //菜单模式
|
|
|
|
- OpenType string //打开方式
|
|
|
|
- Status int //是否是可用服务
|
|
|
|
- PermissionCode string //功能代码
|
|
|
|
- CapitalCode string //留资代码
|
|
|
|
- CapitalInfo Additional //留资弹窗
|
|
|
|
- Children []*JYMenu //菜单s
|
|
|
|
- Authority int //权限逻辑备注 默认0:功能权限、资源权限、留资权限必须全部满足;1:功能权限或资源权限或留资权限满足其一就行;
|
|
|
|
- Level int //1:一级菜单;2:二级菜单;3:三级菜单;4:四级菜单
|
|
|
|
|
|
+ Name string //菜单名称
|
|
|
|
+ Match string //滤镜过滤正则
|
|
|
|
+ OrderId int //菜单排序id
|
|
|
|
+ ParentId int //父级id
|
|
|
|
+ PowerIds string //权限id
|
|
|
|
+ CheckCode int //是否必须验证权限才显示菜单
|
|
|
|
+ Url string //菜单跳转链接
|
|
|
|
+ Icon string //菜单图标
|
|
|
|
+ AdditionalInfo map[string]Additional //附加弹窗信息
|
|
|
|
+ AppType string //菜单模式
|
|
|
|
+ OpenType string //打开方式
|
|
|
|
+ Status int //是否是可用服务
|
|
|
|
+ PermissionCode string //功能代码
|
|
|
|
+ CapitalCode string //留资代码
|
|
|
|
+ CapitalInfo Additional //留资弹窗
|
|
|
|
+ Children []*JYMenu //菜单s
|
|
|
|
+ Authority int //权限逻辑备注 默认0:功能权限、资源权限、留资权限必须全部满足;1:功能权限或资源权限或留资权限满足其一就行;
|
|
|
|
+ Level int //1:一级菜单;2:二级菜单;3:三级菜单;4:四级菜单
|
|
}
|
|
}
|
|
|
|
|
|
type Additional struct {
|
|
type Additional struct {
|
|
@@ -122,9 +122,11 @@ func (m *WorkDesktopMenu) GetMenuTreeData() error {
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
if additionalInfo := MC.ObjToString(v["additionalinfo"]); additionalInfo != "" {
|
|
if additionalInfo := MC.ObjToString(v["additionalinfo"]); additionalInfo != "" {
|
|
- additional := Additional{}
|
|
|
|
|
|
+ additional := map[string]Additional{}
|
|
if json.Unmarshal([]byte(additionalInfo), &additional) == nil {
|
|
if json.Unmarshal([]byte(additionalInfo), &additional) == nil {
|
|
- menu.AdditionalInfo = additional
|
|
|
|
|
|
+ menu.AdditionalInfo = map[string]Additional{
|
|
|
|
+ m.Platform: additional[m.Platform],
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if capitalInfo := MC.ObjToString(v["capitalinfo"]); capitalInfo != "" {
|
|
if capitalInfo := MC.ObjToString(v["capitalinfo"]); capitalInfo != "" {
|
|
@@ -183,13 +185,13 @@ func (m *WorkDesktopMenu) WorkMenuFormat() ([]*pb.MenuList, error) {
|
|
OpenType: mv.OpenType,
|
|
OpenType: mv.OpenType,
|
|
Child: []*pb.SecondLevelMenu{},
|
|
Child: []*pb.SecondLevelMenu{},
|
|
TipInfo: &pb.TipInfo{
|
|
TipInfo: &pb.TipInfo{
|
|
- Title: mv.AdditionalInfo.Title,
|
|
|
|
- Content: mv.AdditionalInfo.Content,
|
|
|
|
- ConfirmUrl: mv.AdditionalInfo.ConfirmUrl,
|
|
|
|
- ConfirmText: mv.AdditionalInfo.ConfirmText,
|
|
|
|
- IsShowCancel: mv.AdditionalInfo.IsShowCancel,
|
|
|
|
- AppType: mv.AdditionalInfo.AppType,
|
|
|
|
- OpenType: mv.AdditionalInfo.OpenType,
|
|
|
|
|
|
+ Title: mv.AdditionalInfo[m.Platform].Title,
|
|
|
|
+ Content: mv.AdditionalInfo[m.Platform].Content,
|
|
|
|
+ ConfirmUrl: mv.AdditionalInfo[m.Platform].ConfirmUrl,
|
|
|
|
+ ConfirmText: mv.AdditionalInfo[m.Platform].ConfirmText,
|
|
|
|
+ IsShowCancel: mv.AdditionalInfo[m.Platform].IsShowCancel,
|
|
|
|
+ AppType: mv.AdditionalInfo[m.Platform].AppType,
|
|
|
|
+ OpenType: mv.AdditionalInfo[m.Platform].OpenType,
|
|
},
|
|
},
|
|
Match: MC.If(mv.Match != "", strings.Split(mv.Match, ","), []string{}).([]string),
|
|
Match: MC.If(mv.Match != "", strings.Split(mv.Match, ","), []string{}).([]string),
|
|
}
|
|
}
|
|
@@ -211,13 +213,13 @@ func (m *WorkDesktopMenu) WorkMenuFormat() ([]*pb.MenuList, error) {
|
|
AppType: sv.AppType,
|
|
AppType: sv.AppType,
|
|
OpenType: sv.OpenType,
|
|
OpenType: sv.OpenType,
|
|
TipInfo: &pb.TipInfo{
|
|
TipInfo: &pb.TipInfo{
|
|
- Title: sv.AdditionalInfo.Title,
|
|
|
|
- Content: sv.AdditionalInfo.Content,
|
|
|
|
- ConfirmUrl: sv.AdditionalInfo.ConfirmUrl,
|
|
|
|
- ConfirmText: sv.AdditionalInfo.ConfirmText,
|
|
|
|
- IsShowCancel: sv.AdditionalInfo.IsShowCancel,
|
|
|
|
- AppType: sv.AdditionalInfo.AppType,
|
|
|
|
- OpenType: sv.AdditionalInfo.OpenType,
|
|
|
|
|
|
+ Title: sv.AdditionalInfo[m.Platform].Title,
|
|
|
|
+ Content: sv.AdditionalInfo[m.Platform].Content,
|
|
|
|
+ ConfirmUrl: sv.AdditionalInfo[m.Platform].ConfirmUrl,
|
|
|
|
+ ConfirmText: sv.AdditionalInfo[m.Platform].ConfirmText,
|
|
|
|
+ IsShowCancel: sv.AdditionalInfo[m.Platform].IsShowCancel,
|
|
|
|
+ AppType: sv.AdditionalInfo[m.Platform].AppType,
|
|
|
|
+ OpenType: sv.AdditionalInfo[m.Platform].OpenType,
|
|
},
|
|
},
|
|
Match: MC.If(sv.Match != "", strings.Split(sv.Match, ","), []string{}).([]string),
|
|
Match: MC.If(sv.Match != "", strings.Split(sv.Match, ","), []string{}).([]string),
|
|
}
|
|
}
|
|
@@ -236,7 +238,7 @@ func (m *WorkDesktopMenu) WorkMenuFormat() ([]*pb.MenuList, error) {
|
|
}
|
|
}
|
|
var (
|
|
var (
|
|
//数据库默认提示弹窗信息
|
|
//数据库默认提示弹窗信息
|
|
- title, content, confirmUrl, confirmText, isShowCancel, appType, openType, feasibility = tv.AdditionalInfo.Title, tv.AdditionalInfo.Content, tv.AdditionalInfo.ConfirmUrl, tv.AdditionalInfo.ConfirmText, tv.AdditionalInfo.IsShowCancel, tv.AdditionalInfo.AppType, tv.AdditionalInfo.OpenType, usable
|
|
|
|
|
|
+ title, content, confirmUrl, confirmText, isShowCancel, appType, openType, feasibility = tv.AdditionalInfo[m.Platform].Title, tv.AdditionalInfo[m.Platform].Content, tv.AdditionalInfo[m.Platform].ConfirmUrl, tv.AdditionalInfo[m.Platform].ConfirmText, tv.AdditionalInfo[m.Platform].IsShowCancel, tv.AdditionalInfo[m.Platform].AppType, tv.AdditionalInfo[m.Platform].OpenType, usable
|
|
)
|
|
)
|
|
|
|
|
|
//三级菜单------
|
|
//三级菜单------
|
|
@@ -246,6 +248,7 @@ func (m *WorkDesktopMenu) WorkMenuFormat() ([]*pb.MenuList, error) {
|
|
//ResourceLib.PowerHandle()
|
|
//ResourceLib.PowerHandle()
|
|
title, content, confirmUrl, confirmText, appType, openType, isShowCancel, feasibility = CheckCapitalResources(tv, m, usable, m.VerifyPermissions(tv.PermissionCode))
|
|
title, content, confirmUrl, confirmText, appType, openType, isShowCancel, feasibility = CheckCapitalResources(tv, m, usable, m.VerifyPermissions(tv.PermissionCode))
|
|
}
|
|
}
|
|
|
|
+ //弹框地址处理
|
|
threeLevel := &pb.ThreeLevelMenu{
|
|
threeLevel := &pb.ThreeLevelMenu{
|
|
Name: tv.Name,
|
|
Name: tv.Name,
|
|
Icon: tv.Icon,
|
|
Icon: tv.Icon,
|
|
@@ -463,11 +466,11 @@ func (m *WorkDesktopMenu) CommonlyFormat(childMenus map[int][]*JYMenu) ([]*pb.Th
|
|
AppType: mv.AppType,
|
|
AppType: mv.AppType,
|
|
OpenType: mv.OpenType,
|
|
OpenType: mv.OpenType,
|
|
TipInfo: &pb.TipInfo{
|
|
TipInfo: &pb.TipInfo{
|
|
- Title: mv.AdditionalInfo.Title,
|
|
|
|
- Content: mv.AdditionalInfo.Content,
|
|
|
|
- ConfirmUrl: mv.AdditionalInfo.ConfirmUrl,
|
|
|
|
- ConfirmText: mv.AdditionalInfo.ConfirmText,
|
|
|
|
- IsShowCancel: mv.AdditionalInfo.IsShowCancel,
|
|
|
|
|
|
+ Title: mv.AdditionalInfo[m.Platform].Title,
|
|
|
|
+ Content: mv.AdditionalInfo[m.Platform].Content,
|
|
|
|
+ ConfirmUrl: mv.AdditionalInfo[m.Platform].ConfirmUrl,
|
|
|
|
+ ConfirmText: mv.AdditionalInfo[m.Platform].ConfirmText,
|
|
|
|
+ IsShowCancel: mv.AdditionalInfo[m.Platform].IsShowCancel,
|
|
AppType: mv.AppType,
|
|
AppType: mv.AppType,
|
|
OpenType: mv.OpenType,
|
|
OpenType: mv.OpenType,
|
|
},
|
|
},
|
|
@@ -493,13 +496,13 @@ func (m *WorkDesktopMenu) CommonlyFormat(childMenus map[int][]*JYMenu) ([]*pb.Th
|
|
oneLevel.AppType = cv.AppType
|
|
oneLevel.AppType = cv.AppType
|
|
oneLevel.OpenType = cv.OpenType
|
|
oneLevel.OpenType = cv.OpenType
|
|
oneLevel.Usable = feasibility
|
|
oneLevel.Usable = feasibility
|
|
- if cv.AdditionalInfo.Title != "" {
|
|
|
|
|
|
+ if cv.AdditionalInfo[m.Platform].Title != "" {
|
|
oneLevel.TipInfo = &pb.TipInfo{
|
|
oneLevel.TipInfo = &pb.TipInfo{
|
|
- Title: cv.AdditionalInfo.Title,
|
|
|
|
- Content: cv.AdditionalInfo.Content,
|
|
|
|
- ConfirmUrl: cv.AdditionalInfo.ConfirmUrl,
|
|
|
|
- ConfirmText: cv.AdditionalInfo.ConfirmText,
|
|
|
|
- IsShowCancel: cv.AdditionalInfo.IsShowCancel,
|
|
|
|
|
|
+ Title: cv.AdditionalInfo[m.Platform].Title,
|
|
|
|
+ Content: cv.AdditionalInfo[m.Platform].Content,
|
|
|
|
+ ConfirmUrl: cv.AdditionalInfo[m.Platform].ConfirmUrl,
|
|
|
|
+ ConfirmText: cv.AdditionalInfo[m.Platform].ConfirmText,
|
|
|
|
+ IsShowCancel: cv.AdditionalInfo[m.Platform].IsShowCancel,
|
|
AppType: cv.AppType,
|
|
AppType: cv.AppType,
|
|
OpenType: cv.OpenType,
|
|
OpenType: cv.OpenType,
|
|
}
|
|
}
|