You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ch...@apache.org on 2018/01/06 09:45:18 UTC
[2/2] kylin git commit: #3151 query history and save query should be
ssparated by project
#3151 query history and save query should be ssparated by project
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/18ac702a
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/18ac702a
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/18ac702a
Branch: refs/heads/master
Commit: 18ac702ade9e630d9baafc0b8c21920d1e44b05e
Parents: 2ba22a9
Author: chenzhx <ch...@apache.org>
Authored: Sat Jan 6 17:43:58 2018 +0800
Committer: chenzhx <ch...@apache.org>
Committed: Sat Jan 6 17:43:58 2018 +0800
----------------------------------------------------------------------
webapp/app/js/controllers/query.js | 31 ++++++++++++++++++++-----------
webapp/app/partials/query/query.html | 12 ++++++------
2 files changed, 26 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/18ac702a/webapp/app/js/controllers/query.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/controllers/query.js b/webapp/app/js/controllers/query.js
index dea03f4..cac7ccb 100644
--- a/webapp/app/js/controllers/query.js
+++ b/webapp/app/js/controllers/query.js
@@ -48,13 +48,6 @@ KylinApp
];
$scope.statusFilter = null;
$scope.savedQueries = null;
- $scope.cachedQueries = storage.get("saved_queries");
- if (!$scope.cachedQueries) {
- $scope.cachedQueries = [];
- }
- $scope.cachedQueries.curPage = 1;
- $scope.cachedQueries.perPage = 3;
-
$scope.srcTables = [];
$scope.srcColumns = [];
@@ -130,7 +123,7 @@ KylinApp
function getQuery(queries, query) {
for (var i = 0; i < queries.length; i++) {
- if (queries[i].sql == query.sql) {
+ if (queries[i].sql === query.sql && queries[i].project === query.project) {
return queries[i];
}
}
@@ -338,7 +331,6 @@ KylinApp
if ($scope.cachedQueries.length >= 99) {
delete $scope.cachedQueries.splice(0, 1);
- ;
}
$scope.cachedQueries.push({
@@ -351,13 +343,25 @@ KylinApp
}
$scope.listSavedQueries = function () {
- QueryService.list({}, function (queries) {
- $scope.savedQueries = queries;
+ QueryService.list({project: $scope.projectModel.selectedProject}, function (queries) {
+ $scope.savedQueries = queries
$scope.savedQueries.curPage = 1;
$scope.savedQueries.perPage = 3;
});
}
+ $scope.listCachedQueries = function () {
+ $scope.cachedQueries = storage.get("saved_queries")
+ $scope.cachedFilterQueries = $scope.cachedQueries.filter(function (query) {
+ return query.project === $scope.projectModel.selectedProject
+ });
+ if (!$scope.cachedFilterQueries) {
+ $scope.cachedFilterQueries = [];
+ }
+ $scope.cachedFilterQueries.curPage = 1;
+ $scope.cachedFilterQueries.perPage = 3;
+ }
+
$scope.removeSavedQuery = function (id) {
QueryService.delete({subject_id: id}, function () {
$scope.listSavedQueries();
@@ -404,6 +408,11 @@ KylinApp
}
}
+ $scope.$watch('projectModel.selectedProject', function (newValue, oldValue) {
+ $scope.listCachedQueries();
+ $scope.listSavedQueries();
+ });
+
$scope.$on('$locationChangeStart', function (event, next, current) {
var isExecuting = false;
angular.forEach($scope.queries, function (query, index) {
http://git-wip-us.apache.org/repos/asf/kylin/blob/18ac702a/webapp/app/partials/query/query.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/query/query.html b/webapp/app/partials/query/query.html
index 87c43dc..e43f7c0 100644
--- a/webapp/app/partials/query/query.html
+++ b/webapp/app/partials/query/query.html
@@ -41,7 +41,7 @@
<a ng-click="mainPanel='saved';listSavedQueries()" style="cursor: pointer">Saved Queries</a>
</li>
<li class="{{mainPanel=='cached'?'active':''}}">
- <a ng-click="mainPanel='cached'" style="cursor: pointer">Query History</a>
+ <a ng-click="mainPanel='cached';listCachedQueries()" style="cursor: pointer">Query History</a>
</li>
</ul>
@@ -138,12 +138,12 @@
</div>
<div ng-show="mainPanel=='cached'">
- <div ng-if="cachedQueries.length==0">
+ <div ng-if="cachedFilterQueries.length==0">
<div no-result text="No Query History."></div>
</div>
<table class="table table-hover table-striped list">
- <tr ng-repeat="query in cachedQueries | reverse track by $index"
- ng-if="$index >= (cachedQueries.curPage-1)*cachedQueries.perPage && $index < cachedQueries.curPage*cachedQueries.perPage">
+ <tr ng-repeat="query in cachedFilterQueries | reverse track by $index"
+ ng-if="$index >= (cachedFilterQueries.curPage-1)*cachedFilterQueries.perPage && $index < cachedFilterQueries.curPage*cachedFilterQueries.perPage">
<td>
<span style="color: #808080;line-height: 25px">Queried At: {{query.savedAt}} </span><span ng-if="query.project">in Project: {{query.project}}</span>
@@ -177,8 +177,8 @@
</td>
</tr>
</table>
- <pagination total-items="cachedQueries.length" items-per-page="cachedQueries.perPage" max-size="5"
- page="cachedQueries.curPage" class="pull-right"></pagination>
+ <pagination total-items="cachedFilterQueries.length" items-per-page="cachedFilterQueries.perPage" max-size="5"
+ page="cachedFilterQueries.curPage" class="pull-right"></pagination>
</div>
</div>