Ver código fonte

Merge branch 'v2' of https://git.qianqiusoft.com/qianqiusoft/light-apiengine into v2

huangyh 6 anos atrás
pai
commit
79ba72fedb

+ 12 - 8
controllers/partial/SystemController.go

@@ -968,6 +968,8 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		DomainId string `json:"domain_id"`
 		//菜单
 		Menus []sysmodel.SysMenu `json:"menus"`
+		// type
+		Type int `json:"type"`
 	}
 	err := c.Ctx.BindJSON(&paramObj0)
 	if err != nil {
@@ -975,11 +977,6 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 		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}
 	_, err = c.Db.SqlMapClient("selectone_sys_domain", &param).Get(&domain)
@@ -1010,15 +1007,22 @@ func System_AddDomainMenu(c *entitys.CtrlContext) {
 	session := c.App.GetBusinessDb(domain.Domain).NewSession()
 	defer session.Close()
 	session.Begin()
-	_, err = c.App.GetBusinessDb(domain.Domain).SqlMapClient("delete_all_sys_menu").Execute()
+	deleteSqlMapKey := ""
+	if paramObj0.Type >= 0{
+		deleteSqlMapKey = "delete_backend_sys_menu"
+	}else{
+		deleteSqlMapKey = "delete_app_sys_menu"
+	}
+
+	_, err = c.App.GetBusinessDb(domain.Domain).SqlMapClient(deleteSqlMapKey).Execute()
 	if err != nil {
 		session.Rollback()
 		c.Ctx.JSON(500, sysmodel.SysReturn{500, "Insert menu error: " + err.Error(), nil})
 		return
 	}
 	if len(paramObj0.Menus) <= 0 {
-		session.Rollback()
-		c.Ctx.JSON(200, sysmodel.SysReturn{500, "the menus is empty", nil})
+		session.Commit()
+		c.Ctx.JSON(200, sysmodel.SysReturn{200, "the menus is empty", nil})
 		return
 	}
 	_, err = c.App.GetBusinessDb(domain.Domain).Insert(&paramObj0.Menus)

+ 8 - 0
sqlconfig/light-apiengine-develop/sys_menu.xml

@@ -7,4 +7,12 @@
     <sql id="delete_all_sys_menu">
         delete from sys_menu
     </sql>
+    <sql id="delete_backend_sys_menu">
+        delete from sys_menu where sys_menu.type >= 0
+    </sql>
+    <sql id="delete_app_sys_menu">
+        <![CDATA[
+            delete from sys_menu where sys_menu.type < 0
+        ]]>
+    </sql>
 </sqlMap>