| /* |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| */ |
| |
| define(['./module'], function (controllers) { |
| 'use strict'; |
| controllers.controller('ViewRuleCtrl', ['$filter', '$scope', '$http', '$config', '$location', 'toaster', '$timeout', '$routeParams', '$barkChart', '$route', function ($filter, $scope, $http, $config, $location, toaster, $timeout, $routeParams, $barkChart, $route) { |
| |
| var echarts = require('echarts'); |
| |
| pageInit(); |
| |
| function pageInit() { |
| $scope.$emit('initReq'); |
| |
| var getModelUrl = $config.uri.getModel+"/"+$routeParams.modelname; |
| console.log(getModelUrl); |
| $http.get(getModelUrl).then(function successCallback(data){ |
| $scope.ruleData = data.data; |
| $scope.sourceLength = $scope.ruleData.evaluateRule.rules.split('AND').length; |
| console.log($scope.sourceLength); |
| |
| // console.log(JSON.parse($scope.ruleData.source.config)); |
| $scope.sourceDB = $scope.ruleData.source.config.database; |
| console.log($scope.sourceDB); |
| $scope.targetDB = $scope.ruleData.target.config.database; |
| $scope.sourceTable = $scope.ruleData.source.config["table.name"]; |
| $scope.targetTable = $scope.ruleData.target.config["table.name"]; |
| console.log($scope.targetTable); |
| console.log($scope.targetDB); |
| console.log($scope.ruleData.evaluateRule.rules.split('AND')); |
| // $scope.targetLength = $scope.ruleData.evaluateRule.rules.split(';').length; |
| |
| $scope.getNumber = function(n){return new Array(n);} |
| // }).error(function(data){ |
| // // errorMessage(0, 'Save model failed, please try again!'); |
| // toaster.pop('error', data.message); |
| // }); |
| },function errorCallback(response) { |
| toaster.pop('error', 'Error when deleting record', response.message); |
| }); |
| |
| $scope.anTypes = ['', 'History Trend Detection', 'Bollinger Bands Detection', 'Deviation Detection']; |
| |
| var url= $config.uri.rulemetric+"/"+$routeParams.modelname; |
| |
| // $http.get(url).success(function(res){ |
| // $scope.modelresultData = res; |
| // if (res.details) { |
| // $('#viewrule-chart').height(200); |
| // $scope.ruleChart = echarts.init(document.getElementById('viewrule-chart'), 'dark'); |
| // $scope.ruleChart.setOption($barkChart.getOptionSide(res)); |
| // |
| // } |
| // resizeWindow(); |
| // }).error(function(data) { |
| // resizeWindow(); |
| // toaster.pop('error', data.message); |
| // }); |
| } |
| |
| $scope.confirmDeploy = function(){ |
| var deployModelUrl = $config.uri.enableModel + '/' + $scope.ruleData.basic.name; |
| var answer = confirm('Are you sure you want to deploy this model to production?') |
| |
| if(answer){ |
| $http.get(deployModelUrl).then(function successCallback(){ |
| $scope.ruleData.basic.status = 2; |
| toaster.pop('info', 'Your model has been deployed to prduction!'); |
| }); |
| } |
| |
| } |
| |
| |
| $scope.$on('resizeHandler', function(e) { |
| if ($route.current.$$route.controller == "ViewRuleCtrl") { |
| resizeWindow(); |
| } |
| }); |
| |
| function resizeWindow(){ |
| |
| var h1 = $('#viewruleDefinition').height(); |
| var h2 = $('#viewTestResult').height(); |
| var height = Math.max(h1, h2); |
| |
| $('#viewruleDefinition').height(height); |
| $('#viewTestResult').height(height); |
| |
| if ($scope.ruleChart) { |
| $scope.ruleChart.resize(); |
| } |
| } |
| }]); |
| }); |