package grantpowers import ( "appPlatform/models/modelssystempermission" "appPlatform/overall" "encoding/json" "strconv" "time" ) /* * @ 作者: 秦东 @ 时间: 2025-12-18 16:30:08 @ 功能: 解析自定义App菜单列表 */ func (a *AppMenuAry) AppMenuTreeSubNew(AppMenuTree []AppMenuTreeInit, uuid int64) { if len(AppMenuTree) > 0 { for _, v := range AppMenuTree { var menuInfo AppMenuInfo menuInfo.Id = v.Id //识别符 menuInfo.Name = v.Name //名称 menuInfo.ParentId = v.ParentId //上级 menuInfo.IsPick = v.IsPick //是否激活 menuInfo.IsTrue = v.IsTrue //是否选中 menuInfo.AppKey = v.AppKey menuInfo.PagePower = v.PagePower menuInfo.FormPower = v.FormPower menuInfo.ListPower = v.ListPower menuInfo.VisibleRange = v.VisibleRange menuInfo.MenuType = v.MenuType a.List = append(a.List, menuInfo) EditAppMenuPoserSave(uuid, menuInfo) if len(v.Children) > 0 { a.AppMenuTreeSubNew(v.Children, uuid) } } } } func EditAppMenuPoserSave(uuid int64, v AppMenuInfo) { // json, _ := json.Marshal(a.List) // fmt.Printf("\n\n%v----------------->%v\n\n", uuid, string(json)) var saveInfo modelssystempermission.PowerInfo saveInfo.AuthId = uuid //归属权限 saveInfo.ItemId, _ = strconv.ParseInt(v.Id, 10, 64) //项目ID if v.IsTrue { saveInfo.IsPick = 1 //是否有权(1:有;非1:无) } else { saveInfo.IsPick = 0 //是否有权(1:有;非1:无) } tpAry := MyCreateTablePower(v.FormPower) if tpAry == "null" { tpAry = "[]" } saveInfo.TablePower = tpAry //表单权限 lpAry := MyCreateTablePower(v.ListPower) if lpAry == "null" { lpAry = "[]" } saveInfo.ListPower = lpAry //列表权限 pgButAry := MyCreateTablePower(v.PagePower) if pgButAry == "null" { pgButAry = "[]" } saveInfo.PageButPower = pgButAry //列表权限 inStr := strconv.FormatInt(v.VisibleRange.Types, 10) intVal, _ := strconv.Atoi(inStr) saveInfo.VisibleRange = intVal //可见范围(1:本人;2:本岗位;3:本部门;4:本分部;5:指定行政组织;6:所有) if len(v.VisibleRange.Attribute) > 0 { visibleOrgStr, _ := json.Marshal(v.VisibleRange.Attribute) saveInfo.VisibleOrg = string(visibleOrgStr) //可见范围辅助参数 } else { saveInfo.VisibleOrg = "[]" } saveInfo.ButPower = "[]" //按钮权限 saveInfo.Time = time.Now().Unix() //编辑时间 overall.CONSTANT_DB_System_Permission.Create(&saveInfo) }