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">

Reply via email to