Repository: kylin Updated Branches: refs/heads/master 8f93945a3 -> 9f21d2a4b
#2174 partition column format hide issue Signed-off-by: zhongjian <jiat...@163.com> Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/9f21d2a4 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/9f21d2a4 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/9f21d2a4 Branch: refs/heads/master Commit: 9f21d2a4bc381f75411d37484f4f6119590607f9 Parents: 8f93945 Author: ShaoChinYu <shaoqin...@kyligence.io> Authored: Thu Nov 10 17:56:45 2016 +0800 Committer: zhongjian <jiat...@163.com> Committed: Thu Nov 10 18:55:20 2016 +0800 ---------------------------------------------------------------------- webapp/app/js/controllers/modelEdit.js | 63 ++++++++++++-------- .../modelDesigner/conditions_settings.html | 6 +- 2 files changed, 42 insertions(+), 27 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/9f21d2a4/webapp/app/js/controllers/modelEdit.js ---------------------------------------------------------------------- diff --git a/webapp/app/js/controllers/modelEdit.js b/webapp/app/js/controllers/modelEdit.js index b843829..264667a 100644 --- a/webapp/app/js/controllers/modelEdit.js +++ b/webapp/app/js/controllers/modelEdit.js @@ -69,28 +69,37 @@ KylinApp.controller('ModelEditCtrl', function ($scope, $q, $routeParams, $locati return type; }; - $scope.isBigInt=false; - $scope.partitionChange = function (dateColumn) { - if(dateColumn==null) { - return; - } - var column = _.filter($scope.getColumnsByTable($scope.modelsManager.selectedModel.fact_table),function(_column){ - var columnName=$scope.modelsManager.selectedModel.fact_table+"."+_column.name; - if(dateColumn==columnName) - return _column; - }); - if(column[0].datatype==="bigint"||column[0].datatype==="int"||column[0].datatype==="integer"){ - $scope.isBigInt=true; - $scope.modelsManager.selectedModel.partition_desc.partition_date_format=null;; - $scope.partitionColumn.hasSeparateTimeColumn=false; - $scope.modelsManager.selectedModel.partition_desc.partition_time_column=null; - $scope.modelsManager.selectedModel.partition_desc.partition_time_format=null; - } - else{ - $scope.isBigInt=false; - } + $scope.isFormatVisible = false; + var judgeFormatVisible = function(dateColumn){ + if(dateColumn == null){ + $scope.isFormatVisible = false; + return; } + var column = _.filter($scope.getColumnsByTable($scope.modelsManager.selectedModel.fact_table),function(_column){ + var columnName=$scope.modelsManager.selectedModel.fact_table+"."+_column.name; + if(dateColumn == columnName) + return _column; + }); + + var data_type = column[0].datatype; + if(data_type ==="bigint" ||data_type ==="int" ||data_type ==="integer"){ + $scope.isFormatVisible = false; + $scope.modelsManager.selectedModel.partition_desc.partition_date_format=null; + $scope.partitionColumn.hasSeparateTimeColumn=false; + $scope.modelsManager.selectedModel.partition_desc.partition_time_column=null; + $scope.modelsManager.selectedModel.partition_desc.partition_time_format=null; + + return; + } + + $scope.isFormatVisible = true; + return; + + }; + $scope.partitionChange = function (dateColumn) { + judgeFormatVisible(dateColumn); + }; // ~ Define data $scope.state = { @@ -110,9 +119,7 @@ KylinApp.controller('ModelEditCtrl', function ($scope, $q, $routeParams, $locati ModelDescService.query({model_name: modelName}, function (model) { if (model) { modelsManager.selectedModel = model; - if(!$scope.modelsManager.selectedModel.partition_desc.partition_data_format){ - $scope.isBigInt = true; - } + if($scope.modelsManager.selectedModel.partition_desc.partition_time_column){ $scope.partitionColumn.hasSeparateTimeColumn = true; } @@ -120,7 +127,15 @@ KylinApp.controller('ModelEditCtrl', function ($scope, $q, $routeParams, $locati if(!ProjectModel.getSelectedProject()){ ProjectModel.setSelectedProject(modelsManager.selectedModel.project); - TableModel.aceSrcTbLoaded(); + TableModel.aceSrcTbLoaded().then(function(){ + judgeFormatVisible($scope.modelsManager.selectedModel.partition_desc.partition_date_column); + }); + + }else{ + if($scope.modelsManager.selectedModel.partition_desc.partition_date_column){ + judgeFormatVisible($scope.modelsManager.selectedModel.partition_desc.partition_date_column); + + } } } }); http://git-wip-us.apache.org/repos/asf/kylin/blob/9f21d2a4/webapp/app/partials/modelDesigner/conditions_settings.html ---------------------------------------------------------------------- diff --git a/webapp/app/partials/modelDesigner/conditions_settings.html b/webapp/app/partials/modelDesigner/conditions_settings.html index 1de93b4..9fdb294 100644 --- a/webapp/app/partials/modelDesigner/conditions_settings.html +++ b/webapp/app/partials/modelDesigner/conditions_settings.html @@ -60,14 +60,14 @@ </div> <!--Date Format--> - <div class="form-group" ng-if="isBigInt==false"> + <div class="form-group" ng-if="(state.mode=='edit'&&isFormatVisible==true) || (state.mode=='view')"> <div class="row"> <label class="control-label col-xs-12 col-sm-3 no-padding-right font-color-default"><b>Date Format</b></label> <div class="col-xs-12 col-sm-6"> <select style="width: 100%" chosen ng-required="modelsManager.selectedModel.partition_desc.partition_date_format" ng-model="modelsManager.selectedModel.partition_desc.partition_date_format" - ng-if="state.mode=='edit'" + ng-if="state.mode=='edit'&&isFormatVisible==true" data-placement="" ng-options="ddt as ddt for ddt in cubeConfig.partitionDateFormatOpt"> <option value="">--Select Date Format--</option> @@ -78,7 +78,7 @@ </div> <!--Date Format--> - <div class="form-group middle-popover" ng-if="isBigInt==false"> + <div class="form-group middle-popover" ng-if="isFormatVisible==true"> <div class="row"> <label class="control-label col-xs-12 col-sm-3 no-padding-right font-color-default"><b>Has a separate "time of the day" column ?</b> <i kylinpopover placement="right" title="Separate Time Column" template="separateTimeColumnTip.html" class="fa fa-info-circle"></i></label> <div class="col-xs-12 col-sm-6">