From 48b0ed87a1c15d8e5f1b11b68d3ea196010a76a4 Mon Sep 17 00:00:00 2001 From: tanghc Date: Tue, 19 Mar 2019 12:50:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B7=AF=E7=94=B1=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sop-admin-front/assets/css/xadmin.css | 2 +- .../sop-admin-front/assets/js/ApiUtil.js | 15 ++ sop-admin/sop-admin-front/assets/js/common.js | 24 --- sop-admin/sop-admin-front/assets/js/lib.js | 2 +- .../sop-admin-front/assets/js/profile.js | 30 ++++ .../pages/service/routeManager.html | 73 ++++++--- .../pages/service/routeManager.js | 150 ++++++++++-------- .../pages/service/serviceList.html | 4 - .../adminserver/api/service/RouteListApi.java | 13 ++ .../api/service/param/UpdateRouteParam.java | 57 +++++++ .../bean/GatewayRouteDefinition.java | 39 ++++- .../adminserver/bean/ZookeeperContext.java | 13 ++ .../bean/BaseRouteDefinition.java | 6 + .../route/GatewayZookeeperRouteManager.java | 2 +- .../zuul/route/SopRouteLocator.java | 4 +- .../zuul/route/ZuulRouteDefinition.java | 1 - .../zuul/route/ZuulZookeeperRouteManager.java | 2 +- .../ServiceZookeeperApiMetaManager.java | 17 +- .../route/GatewayRouteDefinition.java | 34 +++- 19 files changed, 339 insertions(+), 149 deletions(-) delete mode 100644 sop-admin/sop-admin-front/assets/js/common.js create mode 100644 sop-admin/sop-admin-front/assets/js/profile.js create mode 100644 sop-admin/sop-admin-server/src/main/java/com/gitee/sop/adminserver/api/service/param/UpdateRouteParam.java diff --git a/sop-admin/sop-admin-front/assets/css/xadmin.css b/sop-admin/sop-admin-front/assets/css/xadmin.css index 76b9ae4a..ffd4fe72 100644 --- a/sop-admin/sop-admin-front/assets/css/xadmin.css +++ b/sop-admin/sop-admin-front/assets/css/xadmin.css @@ -118,7 +118,7 @@ body{ width: 100%; } .x-body{ - padding: 20px; + padding: 10px; } .x-nav{ padding: 0 20px; diff --git a/sop-admin/sop-admin-front/assets/js/ApiUtil.js b/sop-admin/sop-admin-front/assets/js/ApiUtil.js index ddf08017..3c7033dd 100644 --- a/sop-admin/sop-admin-front/assets/js/ApiUtil.js +++ b/sop-admin/sop-admin-front/assets/js/ApiUtil.js @@ -5,6 +5,18 @@ var ApiUtil = (function () { // 接口URL,更改此处即可 var url = 'http://localhost:8082/api'; var URI_CHAR = '/'; + var params = {}; + + (function () { + var aPairs, aTmp; + var queryString = window.location.search.toString(); + queryString = queryString.substring(1, queryString.length); //remove "?" + aPairs = queryString.split("&"); + for (var i = 0; i < aPairs.length; i++) { + aTmp = aPairs[i].split("="); + params[aTmp[0]] = decodeURIComponent(aTmp[1]); + } + })(); function formatUri(uri) { if (uri.substring(0, 1) !== URI_CHAR) { @@ -49,5 +61,8 @@ var ApiUtil = (function () { } return url + formatUri(uri); } + , getParam: function (paramName) { + return params[paramName]; + } } })(); diff --git a/sop-admin/sop-admin-front/assets/js/common.js b/sop-admin/sop-admin-front/assets/js/common.js deleted file mode 100644 index 541f5e86..00000000 --- a/sop-admin/sop-admin-front/assets/js/common.js +++ /dev/null @@ -1,24 +0,0 @@ -var Common = (function () { - - function initProfiles() { - var $profileList = $('#profileList'); - if ($profileList.length > 0) { - ApiUtil.post('system.profile.list', {}, function (resp) { - var list = resp.data; - var html = []; - for (var i = 0; i < list.length; i++) { - html.push('' + list[i] + ''); - } - $profileList.html(html.join('')) - - $profileList.find('li').on('click', function () { - window.profile = $(this).text(); - }); - }); - } - } - - initProfiles(); - - return {} -})(); \ No newline at end of file diff --git a/sop-admin/sop-admin-front/assets/js/lib.js b/sop-admin/sop-admin-front/assets/js/lib.js index a436366d..3f4246c5 100644 --- a/sop-admin/sop-admin-front/assets/js/lib.js +++ b/sop-admin/sop-admin-front/assets/js/lib.js @@ -14,7 +14,7 @@ var lib = (function () { ,'../../assets/lib/layui/layui.js' ,'../../assets/lib/easyopen/sdk.js' ,'../../assets/js/ApiUtil.js' - ,'../../assets/js/common.js' + ,'../../assets/js/profile.js' ] var jsArr = []; diff --git a/sop-admin/sop-admin-front/assets/js/profile.js b/sop-admin/sop-admin-front/assets/js/profile.js new file mode 100644 index 00000000..9af40288 --- /dev/null +++ b/sop-admin/sop-admin-front/assets/js/profile.js @@ -0,0 +1,30 @@ +;(function () { + var currentProfile = ApiUtil.getParam('profile') || 'default'; + + ApiUtil.post('system.profile.list', {}, function (resp) { + var profileList = resp.data; + var html = ['
']; + html.push('
    ') + for (var i = 0; i < profileList.length; i++) { + var profile = profileList[i]; + var cls = currentProfile == profile ? 'layui-this' : ''; + html.push('
  • ' + profile + '
  • '); + } + html.push('
') + html.push('
') + $('.x-body').prepend(html.join('')); + }); + + function getCurrentPage(profile) { + var currentUrl = location.href.toString(); + var indexStart = currentUrl.lastIndexOf('/') + 1; + var indexEnd = currentUrl.lastIndexOf('?'); + var page = indexEnd > -1 + ? currentUrl.substring(indexStart, indexEnd) + : currentUrl.substring(indexStart); + + return page + '?q=' + new Date().getTime() + '&profile=' + profile; + } + + window.profile = currentProfile; +})(); \ No newline at end of file diff --git a/sop-admin/sop-admin-front/pages/service/routeManager.html b/sop-admin/sop-admin-front/pages/service/routeManager.html index bc0dca85..032a1950 100644 --- a/sop-admin/sop-admin-front/pages/service/routeManager.html +++ b/sop-admin/sop-admin-front/pages/service/routeManager.html @@ -22,37 +22,46 @@
-
-
    -
-
-
-
    -
    -
    -
    -
    - 路由名称: - - -
    -
    +
    -
    - -
    -
    -
    +
    +
    +
      +
      +
      + 点击树节点查看 +
      + +
      +