|
@@ -8,10 +8,10 @@ import (
|
|
"time"
|
|
"time"
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/gin-contrib/sessions"
|
|
"github.com/gin-contrib/sessions"
|
|
- "strconv"
|
|
|
|
"gopkg.in/mgo.v2/bson"
|
|
"gopkg.in/mgo.v2/bson"
|
|
qu "qfw/util"
|
|
qu "qfw/util"
|
|
"encoding/json"
|
|
"encoding/json"
|
|
|
|
+ "strconv"
|
|
)
|
|
)
|
|
|
|
|
|
func init() {
|
|
func init() {
|
|
@@ -75,7 +75,7 @@ func SecondMenuData(c *gin.Context) {
|
|
maps:=map[string]interface{}{
|
|
maps:=map[string]interface{}{
|
|
"menuid":_id,
|
|
"menuid":_id,
|
|
}
|
|
}
|
|
- data, _ := Mgo.Find("secondmenu",maps, nil, nil, false, -1, -1)
|
|
|
|
|
|
+ data, _ := Mgo.Find("menusecond",maps, nil, nil, false, -1, -1)
|
|
c.JSON(200, gin.H{"data": data})
|
|
c.JSON(200, gin.H{"data": data})
|
|
}
|
|
}
|
|
func RoleMenuData(c *gin.Context) {
|
|
func RoleMenuData(c *gin.Context) {
|
|
@@ -90,7 +90,7 @@ func RoleMenuData(c *gin.Context) {
|
|
maps:=map[string]interface{}{
|
|
maps:=map[string]interface{}{
|
|
"menuid": _id,
|
|
"menuid": _id,
|
|
}
|
|
}
|
|
- count, _ := Mgo.Find("secondmenu",maps, nil, nil, false, -1, -1)
|
|
|
|
|
|
+ count, _ := Mgo.Find("menusecond",maps, nil, nil, false, -1, -1)
|
|
if len(*count)!=0{
|
|
if len(*count)!=0{
|
|
value["secondmenu"]=true
|
|
value["secondmenu"]=true
|
|
}else{
|
|
}else{
|
|
@@ -103,10 +103,13 @@ func RoleMenuData(c *gin.Context) {
|
|
func RoleMenuSave(c *gin.Context){
|
|
func RoleMenuSave(c *gin.Context){
|
|
menu,_:=c.GetPostForm("menu")
|
|
menu,_:=c.GetPostForm("menu")
|
|
secondmenuStr, _ := c.GetPostForm("secondmenuStr")
|
|
secondmenuStr, _ := c.GetPostForm("secondmenuStr")
|
|
|
|
+ secondmenuStr2, _ := c.GetPostForm("secondmenuStr2")
|
|
role,_:=c.GetPostForm("role")
|
|
role,_:=c.GetPostForm("role")
|
|
secondmenus := make([]string, 0)
|
|
secondmenus := make([]string, 0)
|
|
|
|
+ secondmenus2 := make([]string, 0)
|
|
err := json.Unmarshal([]byte(secondmenuStr), &secondmenus)
|
|
err := json.Unmarshal([]byte(secondmenuStr), &secondmenus)
|
|
- if err == nil && len(secondmenus) > 0 {
|
|
|
|
|
|
+ err2 := json.Unmarshal([]byte(secondmenuStr2), &secondmenus2)
|
|
|
|
+ if err == nil && err2==nil {
|
|
for _, v := range secondmenus {
|
|
for _, v := range secondmenus {
|
|
maps:=map[string]interface{}{
|
|
maps:=map[string]interface{}{
|
|
"_id":bson.ObjectIdHex(v),
|
|
"_id":bson.ObjectIdHex(v),
|
|
@@ -117,28 +120,76 @@ func RoleMenuSave(c *gin.Context){
|
|
data2:=map[string]interface{}{
|
|
data2:=map[string]interface{}{
|
|
"$set":data,
|
|
"$set":data,
|
|
}
|
|
}
|
|
- Mgo.Update("secondmenu", maps, data2, true, false)
|
|
|
|
|
|
+ Mgo.Update("menusecond", maps, data2, true, false)
|
|
|
|
+ }
|
|
|
|
+ for _, v := range secondmenus2 {
|
|
|
|
+ maps:=map[string]interface{}{
|
|
|
|
+ "_id":bson.ObjectIdHex(v),
|
|
|
|
+ }
|
|
|
|
+ data:=map[string]interface{}{
|
|
|
|
+ "role."+role:false,
|
|
|
|
+ }
|
|
|
|
+ data2:=map[string]interface{}{
|
|
|
|
+ "$set":data,
|
|
|
|
+ }
|
|
|
|
+ Mgo.Update("menusecond", maps, data2, true, false)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- maps:=map[string]interface{}{
|
|
|
|
- "_id":bson.ObjectIdHex(menu),
|
|
|
|
- }
|
|
|
|
- data:=map[string]interface{}{
|
|
|
|
- "role."+role:true,
|
|
|
|
|
|
+ b:=false
|
|
|
|
+ if (len(secondmenus)==0 && len(secondmenus2)==0)||(len(secondmenus)>0){
|
|
|
|
+ maps:=map[string]interface{}{
|
|
|
|
+ "_id":bson.ObjectIdHex(menu),
|
|
|
|
+ }
|
|
|
|
+ data:=map[string]interface{}{
|
|
|
|
+ "role."+role:true,
|
|
|
|
+ }
|
|
|
|
+ data2:=map[string]interface{}{
|
|
|
|
+ "$set":data,
|
|
|
|
+ }
|
|
|
|
+ b=Mgo.Update("menu", maps, data2, true, false)
|
|
}
|
|
}
|
|
- data2:=map[string]interface{}{
|
|
|
|
- "$set":data,
|
|
|
|
|
|
+ if (len(secondmenus)==0 && len(secondmenus2)>0){
|
|
|
|
+ maps:=map[string]interface{}{
|
|
|
|
+ "_id":bson.ObjectIdHex(menu),
|
|
|
|
+ }
|
|
|
|
+ data:=map[string]interface{}{
|
|
|
|
+ "role."+role:false,
|
|
|
|
+ }
|
|
|
|
+ data2:=map[string]interface{}{
|
|
|
|
+ "$set":data,
|
|
|
|
+ }
|
|
|
|
+ b=Mgo.Update("menu", maps, data2, true, false)
|
|
}
|
|
}
|
|
- b:=Mgo.Update("menu", maps, data2, true, false)
|
|
|
|
|
|
+
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
}
|
|
}
|
|
func RoleSelect(c *gin.Context){
|
|
func RoleSelect(c *gin.Context){
|
|
menuid,_:=c.GetPostForm("_id")
|
|
menuid,_:=c.GetPostForm("_id")
|
|
- maps := map[string]interface{}{
|
|
|
|
- "menuid":menuid,
|
|
|
|
|
|
+ mark,_:=c.GetPostForm("mark")
|
|
|
|
+ role,_:=c.GetPostForm("role")
|
|
|
|
+ if mark==""{
|
|
|
|
+ maps := map[string]interface{}{
|
|
|
|
+ "menuid":menuid,
|
|
|
|
+ }
|
|
|
|
+ datas, _ := Mgo.Find("menusecond",maps, nil, nil, false, -1, -1)
|
|
|
|
+ c.JSON(200, gin.H{"data": datas})
|
|
|
|
+ }else{
|
|
|
|
+ maps := map[string]interface{}{
|
|
|
|
+ "menuid":menuid,
|
|
|
|
+ "role."+role:true,
|
|
|
|
+ }
|
|
|
|
+ data, _ := Mgo.Find("menusecond",maps, nil, nil, false, -1, -1)
|
|
|
|
+ maps2 := map[string]interface{}{
|
|
|
|
+ "menuid":menuid,
|
|
|
|
+ "role."+role:false,
|
|
|
|
+ }
|
|
|
|
+ names, _ := Mgo.FindById("menu",menuid,`{name:1}`)
|
|
|
|
+ name:=*names
|
|
|
|
+ name1:=name["name"]
|
|
|
|
+ data2, _ := Mgo.Find("menusecond",maps2, nil, nil, false, -1, -1)
|
|
|
|
+ c.JSON(200, gin.H{"name":name1,"data": data,"data2":data2})
|
|
}
|
|
}
|
|
- datas, _ := Mgo.Find("secondmenu",maps, nil, nil, false, -1, -1)
|
|
|
|
- c.JSON(200, gin.H{"data": datas})
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
func RoleSecondMenuData(c *gin.Context) {
|
|
func RoleSecondMenuData(c *gin.Context) {
|
|
role,_:=c.GetPostForm("role")
|
|
role,_:=c.GetPostForm("role")
|
|
@@ -147,7 +198,7 @@ func RoleSecondMenuData(c *gin.Context) {
|
|
"menuid":_id,
|
|
"menuid":_id,
|
|
"role."+role: true,
|
|
"role."+role: true,
|
|
}
|
|
}
|
|
- datas, _ := Mgo.Find("secondmenu",maps, nil, nil, false, -1, -1)
|
|
|
|
|
|
+ datas, _ := Mgo.Find("menusecond",maps, nil, nil, false, -1, -1)
|
|
|
|
|
|
c.JSON(200, gin.H{"data": datas})
|
|
c.JSON(200, gin.H{"data": datas})
|
|
}
|
|
}
|
|
@@ -179,7 +230,7 @@ func Menu(c *gin.Context) {
|
|
"menuid":qu.BsonIdToSId(_id),
|
|
"menuid":qu.BsonIdToSId(_id),
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- secdatas, _ := Mgo.Find("secondmenu", maps, nil, nil, false, -1, -1)
|
|
|
|
|
|
+ secdatas, _ := Mgo.Find("menusecond", maps, nil, nil, false, -1, -1)
|
|
secmenumap:=map[string]interface{}{}
|
|
secmenumap:=map[string]interface{}{}
|
|
for index,secdata:=range *secdatas{
|
|
for index,secdata:=range *secdatas{
|
|
secmenumap[strconv.Itoa(index+1)]=secdata
|
|
secmenumap[strconv.Itoa(index+1)]=secdata
|
|
@@ -189,6 +240,7 @@ func Menu(c *gin.Context) {
|
|
}
|
|
}
|
|
list=append(list,value)
|
|
list=append(list,value)
|
|
}
|
|
}
|
|
|
|
+
|
|
c.JSON(200, gin.H{"data": list,"role":role})
|
|
c.JSON(200, gin.H{"data": list,"role":role})
|
|
}
|
|
}
|
|
func MenuSave(c *gin.Context) {
|
|
func MenuSave(c *gin.Context) {
|
|
@@ -203,6 +255,11 @@ func MenuSave(c *gin.Context) {
|
|
"name": name,
|
|
"name": name,
|
|
"href": href,
|
|
"href": href,
|
|
"pic": pic,
|
|
"pic": pic,
|
|
|
|
+ "role":map[string]interface{}{
|
|
|
|
+ "0":false,
|
|
|
|
+ "1":false,
|
|
|
|
+ "2":false,
|
|
|
|
+ },
|
|
}
|
|
}
|
|
b:=Mgo.Save("menu",data)
|
|
b:=Mgo.Save("menu",data)
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
@@ -237,8 +294,13 @@ func SecondMenuSave(c *gin.Context) {
|
|
"href": href,
|
|
"href": href,
|
|
"pic": pic,
|
|
"pic": pic,
|
|
"menuid":menuid,
|
|
"menuid":menuid,
|
|
|
|
+ "role":map[string]interface{}{
|
|
|
|
+ "0":false,
|
|
|
|
+ "1":false,
|
|
|
|
+ "2":false,
|
|
|
|
+ },
|
|
}
|
|
}
|
|
- b:=Mgo.Save("secondmenu",data)
|
|
|
|
|
|
+ b:=Mgo.Save("menusecond",data)
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
}else {
|
|
}else {
|
|
data = map[string]interface{}{
|
|
data = map[string]interface{}{
|
|
@@ -252,7 +314,7 @@ func SecondMenuSave(c *gin.Context) {
|
|
maps:=map[string]interface{}{
|
|
maps:=map[string]interface{}{
|
|
"_id":bson.ObjectIdHex(_id),
|
|
"_id":bson.ObjectIdHex(_id),
|
|
}
|
|
}
|
|
- b := Mgo.Update("secondmenu",maps, data2, true, false)
|
|
|
|
|
|
+ b := Mgo.Update("menusecond",maps, data2, true, false)
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
}
|
|
}
|
|
|
|
|
|
@@ -286,7 +348,7 @@ func MenuSearchById(c *gin.Context) {
|
|
}
|
|
}
|
|
func SecondMenuSearchById(c *gin.Context) {
|
|
func SecondMenuSearchById(c *gin.Context) {
|
|
_id, _ := c.GetPostForm("_id")
|
|
_id, _ := c.GetPostForm("_id")
|
|
- data, _ := Mgo.FindById("secondmenu", _id, nil)
|
|
|
|
|
|
+ data, _ := Mgo.FindById("menusecond", _id, nil)
|
|
c.JSON(200, gin.H{"rep": data})
|
|
c.JSON(200, gin.H{"rep": data})
|
|
}
|
|
}
|
|
|
|
|
|
@@ -302,7 +364,7 @@ func MenuDel(c *gin.Context) {
|
|
}
|
|
}
|
|
func SecondMenuDel(c *gin.Context) {
|
|
func SecondMenuDel(c *gin.Context) {
|
|
_id, _ := c.GetPostForm("_id")
|
|
_id, _ := c.GetPostForm("_id")
|
|
- b := Mgo.Del("secondmenu", `{"_id":"`+_id+`"}`)
|
|
|
|
|
|
+ b := Mgo.Del("menusecond", `{"_id":"`+_id+`"}`)
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
}
|
|
}
|
|
func RoleMenuDel(c *gin.Context) {
|
|
func RoleMenuDel(c *gin.Context) {
|
|
@@ -321,13 +383,13 @@ func RoleMenuDel(c *gin.Context) {
|
|
maps=map[string]interface{}{
|
|
maps=map[string]interface{}{
|
|
"menuid":_id,
|
|
"menuid":_id,
|
|
}
|
|
}
|
|
- count,_:=Mgo.Find("secondmenu",maps,nil,nil,false,-1,-1)
|
|
|
|
|
|
+ count,_:=Mgo.Find("menusecond",maps,nil,nil,false,-1,-1)
|
|
if len(*count)!=0{
|
|
if len(*count)!=0{
|
|
for _,c:=range *count{
|
|
for _,c:=range *count{
|
|
maps=map[string]interface{}{
|
|
maps=map[string]interface{}{
|
|
"_id":c["_id"],
|
|
"_id":c["_id"],
|
|
}
|
|
}
|
|
- Mgo.Update("secondmenu", maps, data2, true, false)
|
|
|
|
|
|
+ Mgo.Update("menusecond", maps, data2, true, false)
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
@@ -345,7 +407,7 @@ func RoleSecondMenuDel(c *gin.Context) {
|
|
data2:=map[string]interface{}{
|
|
data2:=map[string]interface{}{
|
|
"$set":data,
|
|
"$set":data,
|
|
}
|
|
}
|
|
- b := Mgo.Update("secondmenu", maps, data2, true, false)
|
|
|
|
|
|
+ b := Mgo.Update("menusecond", maps, data2, true, false)
|
|
c.JSON(200, gin.H{"rep": b})
|
|
c.JSON(200, gin.H{"rep": b})
|
|
}
|
|
}
|
|
func UserUppwd(c *gin.Context) {
|
|
func UserUppwd(c *gin.Context) {
|