diff --git a/base-manager/src/main/java/com/mortals/xhx/module/site/web/SiteController.java b/base-manager/src/main/java/com/mortals/xhx/module/site/web/SiteController.java
index a572e44f5fa7536b6520fd7e0e17e4acc4429573..7deb3954afb5c282aed90f6c53018e1f6b4413cb 100644
--- a/base-manager/src/main/java/com/mortals/xhx/module/site/web/SiteController.java
+++ b/base-manager/src/main/java/com/mortals/xhx/module/site/web/SiteController.java
@@ -7,6 +7,7 @@ import com.mortals.xhx.base.system.param.service.ParamService;
 import com.mortals.xhx.module.model.model.ModelQuery;
 import com.mortals.xhx.module.model.service.ModelService;
 import com.mortals.xhx.module.site.model.SiteEntity;
+import com.mortals.xhx.module.site.model.SiteQuery;
 import com.mortals.xhx.module.site.model.SiteTreeSelect;
 import com.mortals.xhx.module.site.service.SiteService;
 import lombok.extern.slf4j.Slf4j;
@@ -87,10 +88,10 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
 
 
     /**
-     * 鏍规嵁鍖哄煙鏌ヨ绔欑偣鍒楄〃
+     * 鏍规嵁鍖哄煙缂栫爜鏌ヨ绔欑偣鍒楄〃
      */
     @PostMapping(value = "getFlatSitesByAreaCode")
-    public String getFlatSitesByAreaCode(@RequestBody SiteEntity site) {
+    public String getFlatSitesByAreaCode(@RequestBody SiteQuery site) {
         JSONObject jsonObject = new JSONObject();
         Map<String, Object> model = new HashMap<>();
         String busiDesc = "鏍规嵁鍖哄煙缂栫爜鏌ヨ绔欑偣鍒楄〃" + this.getModuleDesc();
@@ -109,27 +110,27 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
     }
 
 
-/*
-    public SiteTreeSelect reFucurs(List<SiteTreeSelect> siteTree, Set<String> siteSet) {
-        SiteTreeSelect temp=null;
-        for (SiteTreeSelect site : siteTree) {
-
-
-            if (site.getId().equals(siteId)) {
-                log.info("curTree:{}", JSON.toJSONString(site));
-                temp=site;
-                break;
-            } else {
-                if (!ObjectUtils.isEmpty(site.getChildren())) {
-                    temp=reFucurs(site.getChildren(), siteId);
-                    if(temp!=null){
-                        break;
-                    }
-                }
-            }
+    /**
+     * 鏍规嵁鍖哄煙id鏌ヨ绔欑偣鍒楄〃
+     */
+    @PostMapping(value = "getFlatSitesByAreaIds")
+    public String getFlatSitesByAreaIds(@RequestBody SiteQuery site) {
+        JSONObject jsonObject = new JSONObject();
+        Map<String, Object> model = new HashMap<>();
+        String busiDesc = "鏍规嵁鍖哄煙缂栫爜鏌ヨ绔欑偣鍒楄〃" + this.getModuleDesc();
+        try {
+            List<SiteEntity> siteEntityList = this.service.getFlatSitesByAreaCode(site.getAreaCode(), getContext());
+            recordSysLog(request, busiDesc + " 銆愭垚鍔熴€�");
+            jsonObject.put(KEY_RESULT_DATA, siteEntityList);
+            jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
+            jsonObject.put(KEY_RESULT_MSG, "鏌ヨ绔欑偣鍒楄〃鎴愬姛锛�");
+        } catch (Exception e) {
+            log.error("鑾峰彇寮傚父", e);
+            jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
+            jsonObject.put(KEY_RESULT_MSG, super.convertException(e));
         }
-        return temp;
-    }*/
+        return jsonObject.toJSONString();
+    }
 
     public static void main(String[] args) {
         //娣卞害鍏嬮殕
diff --git a/base-manager/src/test/java/com/mortals/httpclient/window/WindowController.http b/base-manager/src/test/java/com/mortals/httpclient/window/WindowController.http
index 305829ddf7694eeb40f7795144ab37519249d08e..6ce795bb2febaa0bcbfedb95b9a2d5488da99c4e 100644
--- a/base-manager/src/test/java/com/mortals/httpclient/window/WindowController.http
+++ b/base-manager/src/test/java/com/mortals/httpclient/window/WindowController.http
@@ -4,6 +4,7 @@ POST {{baseUrl}}/window/list
 Content-Type: application/json
 
 {
+  "siteId":8,
     "page":1,
     "size":10
 }
diff --git a/portal-manager/doc/api.md b/portal-manager/doc/api.md
index 251c50faac195f02ee14c3f863825f34a145d238..f7b0f146e065f7ff3586472160085ad7c7459abc 100644
--- a/portal-manager/doc/api.md
+++ b/portal-manager/doc/api.md
@@ -845,8 +845,11 @@ data|object|鏁版嵁瀵硅薄
 &emsp;&emsp;authType|Integer|鏉冮檺绫诲瀷(0.鏃犻檺鍒讹紝1.鏃犻渶鐧诲綍鏌ョ湅锛�2.闇€瑕佺櫥褰曟煡鐪嬶紝3.闇€瑕佽鑹叉潈闄愭煡鐪�)
 &emsp;&emsp;orderId|Integer|鎺掑簭缂栧彿
 &emsp;&emsp;firstLevel|String|涓€绾ц彍鍗�
+&emsp;&emsp;firstLevel|Long|涓€绾ц彍鍗旾D
 &emsp;&emsp;secondLevel|String|浜岀骇鑿滃崟
+&emsp;&emsp;secondMenuId|Long|浜岀骇鑿滃崟ID
 &emsp;&emsp;thirdLevel|String|涓夌骇鑿滃崟
+&emsp;&emsp;thirdMenuId|Long|涓夌骇鑿滃崟ID
 &emsp;&emsp;createTime|Date|鍒涘缓鏃堕棿
 &emsp;&emsp;createUserId|Long|鍒涘缓鐢ㄦ埛
 &emsp;&emsp;createUserName|String|鍒涘缓鐢ㄦ埛鍚嶇О
diff --git a/portal-manager/src/main/java/com/mortals/xhx/module/menu/model/vo/MenuVo.java b/portal-manager/src/main/java/com/mortals/xhx/module/menu/model/vo/MenuVo.java
index 69af8559b87550996704c15ba270e6c6ceaecaab..9e10edb2ac7551bc1e1c1116be23d57639612c4a 100644
--- a/portal-manager/src/main/java/com/mortals/xhx/module/menu/model/vo/MenuVo.java
+++ b/portal-manager/src/main/java/com/mortals/xhx/module/menu/model/vo/MenuVo.java
@@ -18,13 +18,30 @@ public class MenuVo extends BaseEntityLong {
      * 涓€绾ц彍鍗�
      */
     private String firstLevel;
+
+    /**
+     * 涓€绾ц彍鍗旾d
+     */
+    private Long firstMenuId;
+
     /**
      * 浜岀骇鑿滃崟
      */
     private String secondLevel;
+
+    /**
+     * 浜岀骇鑿滃崟Id
+     */
+    private Long secondMenuId;
+
     /**
      * 涓夌骇鑿滃崟
      */
     private String thirdLevel;
 
+    /**
+     * 涓夌骇鑿滃崟Id
+     */
+    private Long thirdMenuId;
+
 }
\ No newline at end of file
diff --git a/portal-manager/src/main/java/com/mortals/xhx/module/menu/service/impl/MenuServiceImpl.java b/portal-manager/src/main/java/com/mortals/xhx/module/menu/service/impl/MenuServiceImpl.java
index d66596d68a90e7787ed4d9320597d01c2ee9b0bf..459bb5d57f863c9283f52d0f0579014e47e1ee63 100644
--- a/portal-manager/src/main/java/com/mortals/xhx/module/menu/service/impl/MenuServiceImpl.java
+++ b/portal-manager/src/main/java/com/mortals/xhx/module/menu/service/impl/MenuServiceImpl.java
@@ -38,16 +38,22 @@ public class MenuServiceImpl extends AbstractCRUDServiceImpl<MenuDao, MenuEntity
             if (map.size() == 0) {
                 //褰撳墠鑿滃崟涓洪《绾�
                 item.setFirstLevel(item.getName());
+                item.setFirstMenuId(item.getId());
                 item.setSecondLevel("");
                 item.setThirdLevel("");
             } else if (map.size() == 1) {
                 item.setFirstLevel(map.get(1).getName());
+                item.setFirstMenuId(map.get(1).getId());
                 item.setSecondLevel(item.getName());
+                item.setSecondMenuId(item.getId());
                 item.setThirdLevel("");
             } else if (map.size() == 2) {
                 item.setFirstLevel(map.get(2).getName());
+                item.setFirstMenuId(map.get(2).getId());
                 item.setSecondLevel(map.get(1).getName());
+                item.setSecondMenuId(map.get(1).getId());
                 item.setThirdLevel(item.getName());
+                item.setThirdMenuId(item.getId());
             } else {
 
             }
diff --git a/portal-manager/src/test/java/com/mortals/httpclient/user/UserController.http b/portal-manager/src/test/java/com/mortals/httpclient/user/UserController.http
index e03f9312aee19a78b7a2ded6f8e66a1de5ca17a5..1f8344c8ccd8c5422ff46067563e1390a56c6c1c 100644
--- a/portal-manager/src/test/java/com/mortals/httpclient/user/UserController.http
+++ b/portal-manager/src/test/java/com/mortals/httpclient/user/UserController.http
@@ -26,7 +26,7 @@ Content-Type: application/json
         "loginPwd":"test",
         "realName":"娴嬭瘯",
         "mobile":"13281114856",
-        "userType":1,
+        "roleId": "1",
         "siteIds":"",
         "areaCodes":""
 }