package jurisdictionpc import ( "encoding/json" "fmt" "key_performance_indicators/models/modelshr" "key_performance_indicators/models/modelsschool" "key_performance_indicators/models/modelsstorage" "key_performance_indicators/models/modelssystempermission" "key_performance_indicators/overall" "key_performance_indicators/overall/publicmethod" "strconv" "strings" "time" "github.com/gin-gonic/gin" ) // 编辑权限 func (a *ApiMethod) EditPower(c *gin.Context) { var receivedValue appPowerStruct err := c.ShouldBindJSON(&receivedValue) if err != nil { publicmethod.Result(100, err, c) return } if receivedValue.OrdId == "" { publicmethod.Result(1, receivedValue, c, "请指定要配置的行政组织!") return } if receivedValue.PostId == "" { publicmethod.Result(1, receivedValue, c, "请指定要配置的岗位!") return } if receivedValue.SystemName == "" { publicmethod.Result(1, err, c, "请提交系统识别符!") return } if len(receivedValue.PointId) < 1 { publicmethod.Result(1, err, c, "请至少指定一项权限!") return } switch receivedValue.Level { case 2: //本分部 if len(receivedValue.Organization) < 1 { receivedValue.Organization = append(receivedValue.Organization, receivedValue.OrdId) ordIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) _, companyId, _, _, _ := publicmethod.GetOrgStructure(ordIdInt) var sonOrgId []int64 sonOrgId = publicmethod.GetDepartmentSun(companyId, sonOrgId) if len(sonOrgId) > 0 { for oi := 0; oi < len(sonOrgId); oi++ { sonOrgIdStr := strconv.FormatInt(sonOrgId[oi], 10) if publicmethod.IsInTrue[string](sonOrgIdStr, receivedValue.Organization) == false { receivedValue.Organization = append(receivedValue.Organization, sonOrgIdStr) } } } } case 3: var orgAry []string receivedValue.Organization = orgAry default: receivedValue.Level = 1 if len(receivedValue.Organization) < 1 { var orgAry []string orgAry = append(orgAry, receivedValue.OrdId) receivedValue.Organization = orgAry } } var empowerCont modelssystempermission.Empower err = empowerCont.GetCont(map[string]interface{}{"`ordid`": receivedValue.OrdId, "`post_id`": receivedValue.PostId, "`system`": receivedValue.SystemName}, "`id`") postIdStr := strings.Join(receivedValue.PointId, ",") if err == nil { err = empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`state`": 1, "`point_id`": postIdStr, "`time`": time.Now().Unix(), "`level`": receivedValue.Level, "`organization`": strings.Join(receivedValue.Organization, ",")}) } else { ordIdInt64, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) empowerCont.OrdId = ordIdInt64 //行政组织"` postIdInt64, _ := strconv.ParseInt(receivedValue.PostId, 10, 64) empowerCont.PostId = postIdInt64 //岗位ID"` empowerCont.System = receivedValue.SystemName //系统"` empowerCont.PointId = postIdStr //权限点位"` empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` empowerCont.Time = time.Now().Unix() //创建时间"` empowerCont.Level = receivedValue.Level empowerCont.Organization = strings.Join(receivedValue.Organization, ",") err = overall.CONSTANT_DB_System_Permission.Create(&empowerCont).Error } if err != nil { publicmethod.Result(104, err, c) return } publicmethod.Result(0, err, c) // for i := 0; i < len(receivedValue.PointId); i++ { // var empowerCont modelssystempermission.Empower // err = empowerCont.GetCont(map[string]interface{}{"`post_id`": receivedValue.PostId, "`system`": receivedValue.SystemName, "`point_id`": receivedValue.PointId[i]}) // if err == nil { // if empowerCont.State != 1 { // empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`state`": 1, "`time`": time.Now().Unix()}) // } // } else { // postIdInt64, _ := strconv.ParseInt(receivedValue.PostId, 10, 64) // empowerCont.PostId = postIdInt64 //岗位ID"` // empowerCont.System = receivedValue.SystemName //系统"` // poinIdInt64, _ := strconv.ParseInt(receivedValue.PointId[i], 10, 64) // empowerCont.PointId = poinIdInt64 //权限点位"` // empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` // empowerCont.Time = time.Now().Unix() //创建时间"` // saveData = append(saveData, empowerCont) // } // } // if len(saveData) > 0 { // err = overall.CONSTANT_DB_System_Permission.Create(&saveData).Error // } // if err != nil { // publicmethod.Result(104, err, c) // return // } // //清除其他权限 // otherSaveData := publicmethod.MapOut[string]() // otherSaveData["`state`"] = 2 // otherSaveData["`time`"] = time.Now().Unix() // overall.CONSTANT_DB_System_Permission.Model(&modelssystempermission.Empower{}).Where("`state` = 1 AND `post_id` = ? AND `system` = ?", receivedValue.PostId, receivedValue.SystemName).Not(map[string]interface{}{"point_id": receivedValue.PointId}).Updates(&otherSaveData) // publicmethod.Result(0, saveData, c) } // 相关系统菜单 func (a *ApiMethod) SystemAboutMenu(c *gin.Context) { var receivedValue GetSystemMenuPower err := c.ShouldBindJSON(&receivedValue) if err != nil { publicmethod.Result(100, err, c) return } if receivedValue.Name == "" { publicmethod.Result(101, err, c) return } var systemPower modelssystempermission.Appsystem err = systemPower.GetCont(map[string]interface{}{"`coder`": receivedValue.Name}) if err != nil { publicmethod.Result(105, err, c) return } if systemPower.State == 2 { publicmethod.Result(1, err, c, "该系统授权已经禁用!") return } if systemPower.State == 3 { publicmethod.Result(1, err, c, "该系统授权已经取消合作!") return } var menuThree []publicmethod.PowerThree // fmt.Printf("ApiUrl------>%v\n", receivedValue) if systemPower.ApiUrl != "" { //api入口不为空的情况下采用get访问方式接收数据 htmlByte := publicmethod.CurlGet(systemPower.ApiUrl) fmt.Printf("%v\n", string(htmlByte)) var jsonAry callBackUrlMenu jsonErr := json.Unmarshal(htmlByte, &jsonAry) if jsonErr != nil { publicmethod.Result(1, jsonErr, c, "数据获取错误!") return } if jsonAry.Code != 0 { publicmethod.Result(1, jsonErr, c, jsonAry.Msg) return } menuThree = jsonAry.Data } else { var pointInt []string var operatIon []string var systemEmpowerCont modelssystempermission.Empower err = systemEmpowerCont.GetCont(map[string]interface{}{"`ordid`": receivedValue.OrdId, "`post_id`": receivedValue.PostId, "`system`": systemPower.Coder}, "`point_id`", `operation`) if err == nil { pointInt = strings.Split(systemEmpowerCont.PointId, ",") operatIon = strings.Split(systemEmpowerCont.Operation, ",") } //api入口为空,采用系统内置获取授权菜单 switch systemPower.Coder { case "cangchu": menuThree = wmsMenuThree(pointInt, operatIon) // fmt.Printf("ApiUrl----2-->%v\n", systemPower.ApiUrl) default: //获取绩效考核菜单树 menuThree = kpiMenuThree(pointInt, operatIon) // fmt.Printf("ApiUrl---1--->%v\n", systemPower.ApiUrl) } } publicmethod.Result(0, menuThree, c) } /* * @ 作者: 秦东 @ 时间: 2022-11-06 16:02:56 @ 功能: kpi菜单树 @ 参数 #purview 以获得的权限 #operatIon 操作点位 @ 返回值 # */ func kpiMenuThree(purview, operatIon []string) (menuThree []publicmethod.PowerThree) { var menuList []modelsschool.SystemMenuSchool err := overall.CONSTANT_DB_Master.Where("`m_steat` = 1").Order("`m_sort` ASC").Order("`m_id` DESC").Find(&menuList).Error lenSum := len(menuList) // fmt.Printf("ApiUrl---3--->%v--->%v\n", err, lenSum) if err != nil || lenSum < 1 { return } var menuSmaillList []publicmethod.MenuContList for i := 0; i < lenSum; i++ { var menSmaiCont publicmethod.MenuContList idStr := strconv.FormatInt(menuList[i].Id, 10) menSmaiCont.Id = idStr menSmaiCont.Name = menuList[i].Title menSmaiCont.ParentId = strconv.FormatInt(menuList[i].ParentId, 10) menSmaiCont.PathUrl = menuList[i].ApiUrl if len(purview) > 0 { if publicmethod.IsInTrue[string](idStr, purview) == true { menSmaiCont.IsTrue = true // fmt.Printf("\n\npurview------>%v------>%v------>%v\n\n", idStr, purview, publicmethod.IsInTrue[string](idStr, purview)) } } menuSmaillList = append(menuSmaillList, menSmaiCont) } menuThree = publicmethod.GetMenuThreePeiQuan(1, "0", menuSmaillList, operatIon) return } /* * @ 作者: 秦东 @ 时间: 2022-11-06 16:02:56 @ 功能: 仓储菜单树 @ 参数 #purview 以获得的权限 #operatIon 操作点位 @ 返回值 # */ func wmsMenuThree(purview, operatIon []string) (menuThree []publicmethod.PowerThree) { var menuList []modelsstorage.AccesstoAddress err := overall.CONSTANT_DB_Storage.Where("`state` = 1").Find(&menuList).Error lenSum := len(menuList) if err != nil || lenSum < 1 { return } var menuSmaillList []publicmethod.MenuContList for i := 0; i < lenSum; i++ { var menSmaiCont publicmethod.MenuContList idStr := strconv.FormatInt(menuList[i].Id, 10) menSmaiCont.Id = idStr menSmaiCont.Name = menuList[i].Name menSmaiCont.ParentId = strconv.FormatInt(int64(menuList[i].Menuparent), 10) menSmaiCont.PathUrl = menuList[i].Url // fmt.Printf("ApiUrl---1--->%v--->%v--->%v\n", idStr, purview, publicmethod.IsInTrue[string](idStr, purview)) if len(purview) > 0 { if publicmethod.IsInTrue[string](idStr, purview) == true { menSmaiCont.IsTrue = true } } menuSmaillList = append(menuSmaillList, menSmaiCont) } menuThree = publicmethod.GetMenuThrees(1, "0", menuSmaillList) return } /* * @ 作者: 秦东 @ 时间: 2022-11-07 13:46:06 @ 功能: 编辑权限新版 @ 参数 # @ 返回值 # */ func (a *ApiMethod) EditPowerNew(c *gin.Context) { var receivedValue editPowerStructNew err := c.ShouldBindJSON(&receivedValue) if err != nil { publicmethod.Result(100, err, c) return } if receivedValue.OrdId == "" || receivedValue.OrdId == "0" { publicmethod.Result(1, receivedValue, c, "未知行政组织!不可进行配权") return } if receivedValue.PostId == "" || receivedValue.PostId == "0" { publicmethod.Result(1, receivedValue, c, "未知岗位!不可进行配权") return } if receivedValue.SystemName == "" { publicmethod.Result(1, receivedValue, c, "未知配权系统!不可进行配权") return } if receivedValue.Level == 0 { receivedValue.Level = 2 } var orgIdList []int64 switch receivedValue.Level { case 2: //本部门 orgIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) _, _, departmentId, _, _ := publicmethod.GetOrgStructure(orgIdInt) orgIdList = publicmethod.GetDepartmentSun(departmentId, orgIdList) case 3: //本分部 orgIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) _, companyId, _, _, _ := publicmethod.GetOrgStructure(orgIdInt) orgIdList = publicmethod.GetDepartmentSun(companyId, orgIdList) case 4: //指定行政组织 case 5: //所有 overall.CONSTANT_DB_HR.Model(&modelshr.AdministrativeOrganization{}).Select("`id`").Where("`state` = 1").Find(&orgIdList) default: //本岗位 orgIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) orgIdList = append(orgIdList, orgIdInt) } var orgIdListStr string //行政组织 if len(orgIdList) > 0 { var orgIdListStrAry []string // for _, ovl := range orgIdList { idStr := strconv.FormatInt(ovl, 10) if publicmethod.IsInTrue[string](idStr, orgIdListStrAry) == false { orgIdListStrAry = append(orgIdListStrAry, idStr) } } orgIdListStr = strings.Join(orgIdListStrAry, ",") } var menuList []string //权限点位 var menuOperationList []string //操作点位 addTime := time.Now().Unix() var empowerCont modelssystempermission.Empower err = empowerCont.GetCont(map[string]interface{}{"`ordid`": receivedValue.OrdId, "`post_id`": receivedValue.PostId, "`system`": receivedValue.SystemName}, "`id`") if len(receivedValue.PowerList) < 1 { if err == nil { err = empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`point_id`": "", "`operation`": "", "`level`": receivedValue.Level, "`time`": addTime, "`state`": 1, "`organization`": orgIdListStr}) if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } else { orgIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) empowerCont.OrdId = orgIdInt //行政组织"` postIdInt, _ := strconv.ParseInt(receivedValue.PostId, 10, 64) empowerCont.PostId = postIdInt //岗位ID"` empowerCont.System = receivedValue.SystemName //系统"` empowerCont.PointId = strings.Join(menuList, ",") //权限点位"` empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` empowerCont.Time = addTime //创建时间"` empowerCont.Level = receivedValue.Level //授权范围等级(1:本部门;2:本分部;3:所有)"` empowerCont.Organization = orgIdListStr //行政组织"` empowerCont.Operation = strings.Join(menuOperationList, ",") //操作点位 err = overall.CONSTANT_DB_System_Permission.Create(&empowerCont).Error if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } } else { var munePowerList empowerSync for _, v := range receivedValue.PowerList { // if v.Id == "1" { syncSeting.Add(1) go munePowerList.GetAllSunCont(v) // } } syncSeting.Wait() menuIdList, menuOperIdList := munePowerList.readDataLock() // fmt.Printf("\n\n%v-------结果-------->%v\n", menuIdList, menuOperIdList) // publicmethod.Result(0, receivedValue.PowerList, c) // return // outData := publicmethod.MapOut[string]() // outData["menuIdList"] = menuIdList // outData["menuOperIdList"] = menuOperIdList // publicmethod.Result(0, outData, c) menuIdListStr := strings.Join(menuIdList, ",") menuOperIdListStr := strings.Join(menuOperIdList, ",") if err == nil { err = empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`point_id`": menuIdListStr, "`operation`": menuOperIdListStr, "`level`": receivedValue.Level, "`time`": addTime, "`state`": 1, "`organization`": orgIdListStr}) if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } else { orgIdInt, _ := strconv.ParseInt(receivedValue.OrdId, 10, 64) empowerCont.OrdId = orgIdInt //行政组织"` postIdInt, _ := strconv.ParseInt(receivedValue.PostId, 10, 64) empowerCont.PostId = postIdInt //岗位ID"` empowerCont.System = receivedValue.SystemName //系统"` empowerCont.PointId = menuIdListStr //权限点位"` empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` empowerCont.Time = addTime //创建时间"` empowerCont.Level = receivedValue.Level //授权范围等级(1:本部门;2:本分部;3:所有)"` empowerCont.Organization = orgIdListStr //行政组织"` empowerCont.Operation = menuOperIdListStr //操作点位 err = overall.CONSTANT_DB_System_Permission.Create(&empowerCont).Error if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } } publicmethod.Result(0, receivedValue, c) } /* * @ 作者: 秦东 @ 时间: 2022-11-07 15:34:48 @ 功能: 获取菜单所有操作 @ 参数 # @ 返回值 # */ func (e *empowerSync) GetAllSunCont(menuList publicmethod.PowerThree) { e.mutext.Lock() defer e.mutext.Unlock() if menuList.IsTrue == true { if publicmethod.IsInTrue[string](menuList.Id, e.menuList) == false { e.menuList = append(e.menuList, menuList.Id) } } if len(menuList.MenuOperation) > 0 { for _, v := range menuList.MenuOperation { if v.IsTrue == true { if publicmethod.IsInTrue[string](v.Id, e.menuOperationList) == false { e.menuOperationList = append(e.menuOperationList, v.Id) } } } } if len(menuList.Child) > 0 { var menuId []string var menuOperId []string menuIdList, menuOperIdList := DiGuiMenuList(menuList.Child, menuId, menuOperId) // // fmt.Printf("\n\nmenuIdList------%v----->%v\n\n", menuList.Id, menuList.Child) // fmt.Printf("\n\nmenuOperIdList----%v------->%v------->%v\n\n", menuList.Id, menuIdList, menuOperIdList) if len(menuIdList) > 0 { for _, mv := range menuIdList { if publicmethod.IsInTrue[string](mv, e.menuList) == false { e.menuList = append(e.menuList, mv) } } } if len(menuOperIdList) > 0 { for _, mvo := range menuOperIdList { // fmt.Printf("menuOper--Fuji->%v---->%v\n", menuList.Id, mvo) // e.menuOperationList = append(e.menuOperationList, mvo) if publicmethod.IsInTrue[string](mvo, e.menuOperationList) == false { e.menuOperationList = append(e.menuOperationList, mvo) } } } } syncSeting.Done() } /* * @ 作者: 秦东 @ 时间: 2022-11-07 16:15:58 @ 功能: 递归菜单选择操作 @ 参数 # @ 返回值 # */ func DiGuiMenuList(menuList []publicmethod.PowerThree, menuId, menuOperId []string) (menuIdList, menuOperIdList []string) { // fmt.Printf("\n\nmenuIdList----222222--%v----->%v----->%v\n\n", menuId, menuOperId, menuList) for _, v := range menuList { // fmt.Printf("\n\nmenuIdList----33333--%v----->%v----->%v\n\n", menuId, menuOperId, v.IsTrue) if v.IsTrue == true { fmt.Printf("\n\nmenuIdList----444--%v----->%v----->%v\n\n", menuId, menuOperId, v.Id) menuIdList = append(menuIdList, v.Id) for _, menuCont := range menuId { if publicmethod.IsInTrue[string](menuCont, menuIdList) == false { menuIdList = append(menuIdList, menuCont) } } } if len(v.MenuOperation) > 0 { for _, vm := range v.MenuOperation { if vm.IsTrue == true { menuOperIdList = append(menuOperIdList, vm.Id) for _, menuContOper := range menuOperId { if publicmethod.IsInTrue[string](menuContOper, menuOperIdList) == false { menuOperIdList = append(menuOperIdList, menuContOper) } } } } } if len(v.Child) > 0 { // fmt.Printf("menuOper--zijian->%v---->%v\n", v.Id, v.Id) menuIdList, menuOperIdList = DiGuiMenuList(v.Child, menuIdList, menuOperIdList) } } // fmt.Printf("menuOper--jieshuzhi->%v---->%v\n", menuIdList, menuOperIdList) return } /* * @ 作者: 秦东 @ 时间: 2022-11-09 13:28:39 @ 功能: 角色配权菜单 @ 参数 # @ 返回值 # */ func (a *ApiMethod) SystemRoleAboutMenu(c *gin.Context) { var receivedValue GetSystemRoleMenuPower err := c.ShouldBindJSON(&receivedValue) if err != nil { publicmethod.Result(100, err, c) return } if receivedValue.Name == "" { publicmethod.Result(101, err, c) return } var systemPower modelssystempermission.Appsystem err = systemPower.GetCont(map[string]interface{}{"`coder`": receivedValue.Name}) if err != nil { publicmethod.Result(105, err, c) return } if systemPower.State == 2 { publicmethod.Result(1, err, c, "该系统授权已经禁用!") return } if systemPower.State == 3 { publicmethod.Result(1, err, c, "该系统授权已经取消合作!") return } var menuThree []publicmethod.PowerThree // fmt.Printf("ApiUrl------>%v\n", receivedValue) if systemPower.ApiUrl != "" { //api入口不为空的情况下采用get访问方式接收数据 htmlByte := publicmethod.CurlGet(systemPower.ApiUrl) fmt.Printf("%v\n", string(htmlByte)) var jsonAry callBackUrlMenu jsonErr := json.Unmarshal(htmlByte, &jsonAry) if jsonErr != nil { publicmethod.Result(1, jsonErr, c, "数据获取错误!") return } if jsonAry.Code != 0 { publicmethod.Result(1, jsonErr, c, jsonAry.Msg) return } menuThree = jsonAry.Data } else { var pointInt []string var operatIon []string var systemEmpowerCont modelssystempermission.RoleEmpower err = systemEmpowerCont.GetCont(map[string]interface{}{"`role_id`": receivedValue.RoleId, "`system`": systemPower.Coder}, "`point_id`", `operation`) if err == nil { pointInt = strings.Split(systemEmpowerCont.PointId, ",") operatIon = strings.Split(systemEmpowerCont.Operation, ",") } //api入口为空,采用系统内置获取授权菜单 switch systemPower.Coder { case "cangchu": menuThree = wmsMenuThree(pointInt, operatIon) // fmt.Printf("ApiUrl----2-->%v\n", systemPower.ApiUrl) default: //获取绩效考核菜单树 menuThree = kpiMenuThree(pointInt, operatIon) // fmt.Printf("ApiUrl---1--->%v\n", systemPower.ApiUrl) } } publicmethod.Result(0, menuThree, c) } /* * @ 作者: 秦东 @ 时间: 2022-11-07 13:46:06 @ 功能: 编辑权限新版(角色) @ 参数 # @ 返回值 # */ func (a *ApiMethod) EditRolePowerNew(c *gin.Context) { var receivedValue editRolePowerStructNew err := c.ShouldBindJSON(&receivedValue) if err != nil { publicmethod.Result(100, err, c) return } if receivedValue.RoleId == "" || receivedValue.RoleId == "0" { publicmethod.Result(1, receivedValue, c, "未知角色!不可进行配权") return } if receivedValue.SystemName == "" { publicmethod.Result(1, receivedValue, c, "未知配权系统!不可进行配权") return } if receivedValue.Level == 0 { receivedValue.Level = 2 } var menuList []string //权限点位 var menuOperationList []string //操作点位 addTime := time.Now().Unix() var empowerCont modelssystempermission.RoleEmpower err = empowerCont.GetCont(map[string]interface{}{"`role_id`": receivedValue.RoleId, "`system`": receivedValue.SystemName}, "`id`") if len(receivedValue.PowerList) < 1 { if err == nil { err = empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`point_id`": "", "`operation`": "", "`level`": receivedValue.Level, "`time`": addTime, "`state`": 1}) if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } else { roleIdInt, _ := strconv.ParseInt(receivedValue.RoleId, 10, 64) empowerCont.RoleId = roleIdInt //行政组织"` empowerCont.System = receivedValue.SystemName //系统"` empowerCont.PointId = strings.Join(menuList, ",") //权限点位"` empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` empowerCont.Time = addTime //创建时间"` empowerCont.Level = receivedValue.Level //授权范围等级(1:本部门;2:本分部;3:所有)"` empowerCont.Operation = strings.Join(menuOperationList, ",") //操作点位 err = overall.CONSTANT_DB_System_Permission.Create(&empowerCont).Error if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } } else { var munePowerList empowerSync for _, v := range receivedValue.PowerList { // if v.Id == "1" { syncSeting.Add(1) go munePowerList.GetAllSunCont(v) // } } syncSeting.Wait() menuIdList, menuOperIdList := munePowerList.readDataLock() // fmt.Printf("\n\n%v-------结果-------->%v\n", menuIdList, menuOperIdList) // publicmethod.Result(0, receivedValue.PowerList, c) // return // outData := publicmethod.MapOut[string]() // outData["menuIdList"] = menuIdList // outData["menuOperIdList"] = menuOperIdList // publicmethod.Result(0, outData, c) menuIdListStr := strings.Join(menuIdList, ",") menuOperIdListStr := strings.Join(menuOperIdList, ",") if err == nil { err = empowerCont.EiteCont(map[string]interface{}{"`id`": empowerCont.Id}, map[string]interface{}{"`point_id`": menuIdListStr, "`operation`": menuOperIdListStr, "`level`": receivedValue.Level, "`time`": addTime, "`state`": 1}) if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } else { roleIdInt, _ := strconv.ParseInt(receivedValue.RoleId, 10, 64) empowerCont.RoleId = roleIdInt //行政组织"` empowerCont.System = receivedValue.SystemName //系统"` empowerCont.PointId = menuIdListStr //权限点位"` empowerCont.State = 1 //状态(1:启用;2:禁用;3:删除)"` empowerCont.Time = addTime //创建时间"` empowerCont.Level = receivedValue.Level //授权范围等级(1:本部门;2:本分部;3:所有)"` empowerCont.Operation = menuOperIdListStr //操作点位 err = overall.CONSTANT_DB_System_Permission.Create(&empowerCont).Error if err != nil { publicmethod.Result(1, err, c, "权限配置失败") return } } } publicmethod.Result(0, receivedValue, c) }