Procházet zdrojové kódy

1、添加域菜单数据,2、修改查询菜单

huangrf před 6 roky
rodič
revize
14e706a67c
1 změnil soubory, kde provedl 11 přidání a 32 odebrání
  1. 11 32
      controllers/partial/SystemController.go

+ 11 - 32
controllers/partial/SystemController.go

@@ -860,10 +860,7 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		//域名ID
 		DomainId   string `json:"domain_id"`
 		//菜单
-		Menus   []struct{
-			Id string `json:"id"`
-			Name string `json:"name"`
-		} `json:"menus"`
+		Menus   []sysmodel.SysMenu `json:"menus"`
 
 	}
 	err := c.Ctx.BindJSON(&paramObj0)
@@ -871,10 +868,6 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		c.Ctx.JSON(500, sysmodel.SysReturn{500, "BindJSON error: " + err.Error(), nil})
 		return
 	}
-	if len(paramObj0.Menus) <= 0{
-		c.Ctx.JSON(200, sysmodel.SysReturn{500, "the menus is empty", nil})
-		return
-	}
 
 	var domain sysmodel.SysDomain
 	param := map[string]interface{}{"id": paramObj0.DomainId}
@@ -884,25 +877,6 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		return
 	}
 
-	var menuIds = make([]string, len(paramObj0.Menus))
-	for i := range paramObj0.Menus{
-		menuIds[i] = paramObj0.Menus[i].Id
-	}
-	var menus []sysmodel.SysMenu
-	err = c.Db.In("id", menuIds).Find(&menus)
-	if err != nil {
-		c.Ctx.JSON(500, sysmodel.SysReturn{500, "find menu error: " + err.Error(), nil})
-		return
-	}
-	for i := range menus{
-		for j := range paramObj0.Menus{
-			if menus[i].Id == paramObj0.Menus[j].Id{
-				menus[i].Name = paramObj0.Menus[j].Name
-				break
-			}
-		}
-	}
-
 	session := c.App.GetBusinessDb(domain.Domain).NewSession()
 	defer session.Close()
 	session.Begin()
@@ -912,7 +886,12 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		c.Ctx.JSON(500, sysmodel.SysReturn{500, "Insert menu error: " + err.Error(), nil})
 		return
 	}
-	_, err = c.App.GetBusinessDb(domain.Domain).Insert(&menus)
+	if len(paramObj0.Menus) <= 0{
+		session.Rollback()
+		c.Ctx.JSON(200, sysmodel.SysReturn{500, "the menus is empty", nil})
+		return
+	}
+	_, err = c.App.GetBusinessDb(domain.Domain).Insert(&paramObj0.Menus)
 	if err != nil {
 		session.Rollback()
 		c.Ctx.JSON(500, sysmodel.SysReturn{500, "Insert menu error: " + err.Error(), nil})
@@ -950,7 +929,7 @@ func System_GetDomainMenuTree(c *entitys.CtrlContext) {
 		return
 	}
 
-	paramMap := map[string]interface{}{"sort": "name"}
+	paramMap := map[string]interface{}{"type": _type, "type_op": type_op, "name": "", "hidden": ""}
 	domainMenus, err := c.App.GetBusinessDb(domain.Domain).SqlTemplateClient("system_get_menu_tree.tpl", &paramMap).Query().List()
 	if err != nil {
 		c.Ctx.JSON(500, sysmodel.SysReturn{500, "get domain_menu tree: " + err.Error(), nil})
@@ -971,9 +950,9 @@ func System_GetDomainMenuTree(c *entitys.CtrlContext) {
 	}
 
 	//剔除域已存在的菜单
-	for _, domainMenu := range domainMenus {
-		delete(sysMenusMap, domainMenu["id"].(string))
-	}
+	//for _, domainMenu := range domainMenus {
+	//	delete(sysMenusMap, domainMenu["id"].(string))
+	//}
 
 	var sysMenuRest []map[string]interface{}
 	for _, menu := range sysMenusMap{