@ -3,9 +3,13 @@
/// <reference path="systemHelpers.ts"/>
/// <reference path="systemServices.ts"/>
/// <reference path="../../configs/ts/configsUtils.ts"/>
/// <reference path="../../kubernetes/ts/kubernetesHelpers.ts"/>
/// <reference path="../../configs/ts/customAlert.ts"/>
/// <reference path="../../configs/ts/configsDataService.ts"/>
/// <reference path="../../kubernetes/ts/term.ts"/>
module System {
export var SystemVerificationController = controller ( 'SystemVerificationController' , [ '$scope' , '$location' , '$http' , '$templateCache' , 'Upload' , 'NgTableParams' , 'ngDialog' , 'SystemModel' , '$element' , ( $scope , $location , $http , $templateCache , Upload , NgTableParams , ngDialog , SystemModel , $element ) = > {
export var SystemVerificationController = controller ( 'SystemVerificationController' , [ '$scope' , '$ interval', '$ location', '$http' , '$templateCache' , 'Upload' , 'NgTableParams' , 'ngDialog' , 'SystemModel' , '$element' , '$timeout' , 'ConfigsModel' , 'DataModel' , 'TerminalService' , 'KubernetesModel' , ( $scope , $interval , $location , $http , $templateCache , Upload , NgTableParams , ngDialog , SystemModel , $element , $timeout , ConfigsModel , DataModel , TerminalService , KubernetesModel ) = > {
shareInit ( $scope ) ;
$scope . cities = classifyCity ( SystemModel . regionalismInfo ) ;
$scope . model = SystemModel ;
@ -21,6 +25,8 @@ module System{
} ) ;
$scope . citySelect = ( x ) = > {
$scope . countries = [ ] ;
$scope . y = "all" ;
if ( x != 'all' ) {
$scope . countries = classifyCountry ( SystemModel . regionalismInfo , x ) ;
$http ( {
@ -36,8 +42,8 @@ module System{
throw "请求失败"
} ) ;
} else {
$scope . countries = [ ] ;
$scope . y = "all" ;
//$scope.countries=[];
//$scope.y = "all";
$scope . tableData = null ;
$scope . checkboxes = {
checked : false ,
@ -63,13 +69,96 @@ module System{
}
}
$scope . checkSQLSERVER = ( ) = > {
/ * *
* * 检 查 是 否 有 默 认 标 准 表 汇 总 库
* * /
var answer = false ;
for ( var i = 0 ; i < ConfigsModel . oracleParam . length ; ++ i ) {
if ( ConfigsModel . oracleParam [ i ] . type == 1 ) {
answer = true
break ;
}
}
if ( answer == false ) {
/ * *
提 示 没 有 配 置 标 准 表 汇 总 库
* * /
Configs . customAlert ( "提示" , "操作失败:没有配置默认的标准表汇总库" , '' , null , 0 , "error" ) ;
return ;
}
var selectedItems = [ ] ;
if ( $scope . tableData && $scope . tableData . length > 0 ) {
for ( var i = 0 ; i < $scope . tableData . length ; ++ i ) {
var item = $scope . tableData [ i ] ;
if ( $scope . checkboxes . items [ item . id ] ) {
if ( item . collection == '否' ) {
/ *
* * 提 示 出 现 没 有 采 集 数 据 的 信 息 系 统
code
* /
Configs . customAlert ( "提示" , "操作失败:选择的系统存在没有数据的系统" , '' , null , 0 , "error" ) ;
return ;
} 7
item [ "_key" ] = item . areaCode + "-" + item . sysCode + "-" + item . dataVersion ;
if ( item . dataBaseType == 'ORACLE' ) {
Configs . customAlert ( "提示" , "操作失败:ORACLE数据请在服务集群界面中抽取标准表! " , '' , null , 0 , "error" ) ;
return ;
}
selectedItems . push ( item ) ;
}
}
$http ( {
url : "/java/console/api/checkout/extractList" ,
method : "POST" ,
data : selectedItems
} ) . success ( ( data , header , config , status ) = > {
//console.log(data);
} ) . error ( ( data , header , config , status ) = > {
throw "请求失败"
} ) ;
}
}
$scope . deleteRows = ( ) = > {
var filter = [ ] ;
if ( $scope . tableData && $scope . tableData . length > 0 ) {
angular . forEach ( $scope . tableData , ( item ) = > {
if ( $scope . checkboxes . items [ item . id ] )
if ( $scope . checkboxes . items [ item . id ] ) {
item [ "index" ] = item . cityName + "_" + item . districtName + "_" + item . sysName + "_" + item . year + "_版本" + item . dataVersion ;
item [ "_key" ] = item . areaCode + "-" + item . sysCode + "-" + item . dataVersion ;
filter . push ( item ) ;
}
} ) ;
}
//检查数据是否存在
for ( var i = 0 ; i < filter . length ; i ++ ) {
if ( filter [ i ] . collection == '否' ) {
Configs . customAlert ( "提示" , "操作失败:部分数据不存在,无法删除" , '' , null , 0 , "error" ) ;
return ;
}
}
//检查数据是否已启动 //检查数据是否在迁移
var message = Kubernetes . checkForMigration ( KubernetesModel . replicationControllers , DataModel . transferTasks , filter , "verify" ) ;
if ( message != "" ) {
Configs . customAlert ( "提示" , "操作失败:部分数据" + message + ",无法删除" , '' , null , 0 , "error" ) ;
return
}
UI . multiItemConfirmActionDialog ( < UI.MultiItemConfirmActionOptions > {
collection : filter ,
index : 'index' ,
onClose : ( result :boolean ) = > {
if ( result ) {
$http ( {
url : "/java/console/api/checkout/deleteList" ,
method : "POST" ,
@ -85,7 +174,6 @@ module System{
} else {
result = $scope . tableData ;
}
$scope . tableParams . settings ( {
dataset : result
} ) ;
@ -93,19 +181,120 @@ module System{
throw "请求失败"
} ) ;
}
} ,
title : '是否需要删除采集数据?' ,
action : '以下采集数据文件将会被删除:' ,
okText : '删除' ,
okClass : 'btn-danger sj_btn_cir' ,
custom : "该删除操作将会彻底删除数据文件,是否删除,请确认!" ,
customClass : "alert alert-warning sj_alert-warning" ,
cancelText : "取消" ,
cancelClass : 'sj_btn_grey'
} ) . open ( ) ;
}
$scope . check = ( ) = > {
var filter = [ ] ;
//var sqlServerDB = [];
var oracleDB = [ ] ;
var selectedItems = [ ] ;
/ * *
* * 检 查 是 否 有 默 认 标 准 表 汇 总 库
* * /
var answer = false ;
for ( var i = 0 ; i < ConfigsModel . oracleParam . length ; ++ i ) {
if ( ConfigsModel . oracleParam [ i ] . type == 1 ) {
answer = true
break ;
}
}
if ( answer == false ) {
/ * *
提 示 没 有 配 置 标 准 表 汇 总 库
* * /
Configs . customAlert ( "提示" , "操作失败:没有配置默认的标准表汇总库" , '' , null , 0 , "error" ) ;
return ;
}
if ( $scope . tableData && $scope . tableData . length > 0 ) {
angular . forEach ( $scope . tableData , ( item ) = > {
if ( $scope . checkboxes . items [ item . id ] )
filter . push ( item ) ;
for ( var i = 0 ; i < $scope . tableData . length ; ++ i ) {
var item = $scope . tableData [ i ] ;
if ( $scope . checkboxes . items [ item . id ] ) {
if ( item . collection == '否' ) {
/ *
* * 提 示 出 现 没 有 采 集 数 据 的 信 息 系 统
code
* /
Configs . customAlert ( "提示" , "操作失败:选择的系统存在没有数据的系统" , '' , null , 0 , "error" ) ;
return ;
}
/ * *
* /
if ( item . payResultLast == 1 ) {
Configs . customAlert ( "提示" , "操作失败:选择的系统存在不需要校验的系统" , '' , null , 0 , "error" ) ;
return ;
}
/ * *
检 查 数 据 是 否 在 热 区
* /
if ( item . mark == 1 && item . dataBaseType == 'ORACLE' ) {
Configs . customAlert ( "提示" , "操作失败:选择的系统的数据存储在冷区,请先将数据迁移到热区再检验!" , '' , null , 0 , "error" ) ;
return
}
item [ "_key" ] = item . areaCode + "-" + item . sysCode + "-" + item . dataVersion ;
selectedItems . push ( item ) ;
if ( item . dataBaseType == 'ORACLE' ) {
oracleDB . push ( item ) ;
}
}
}
/ *
此 处 需 要 检 查 数 据 是 否 已 挂 载 、 正 在 迁 移 。
* /
var exited = Kubernetes . checkForCreateOracle ( DataModel . transferTasks , selectedItems ) ;
if ( exited . length > 0 ) {
Configs . customAlert ( "提示" , "操作失败: 正在迁移的数据不能执行校验操作!" , '' , null , 0 , "error" ) ;
return ;
}
/ *
如 果 是 Oracle 数 据 , 先 启 动 oracle 数 据
* /
if ( oracleDB . length > 0 ) {
angular . forEach ( oracleDB , ( item ) = > {
Kubernetes . createRC ( {
name : item._key ,
labels : {
system : item.sysCode.toString ( ) ,
version : item.dataVersion.toString ( ) ,
region : item.areaCode.toString ( )
} ,
annotations : {
cityName : item.cityName ,
districtName : item.districtName ,
systemName : item.sysName ,
id : item.dataId + "" ,
year : item.year ,
checkoutFlag : item.checkoutFlag
} ,
path : item.path + "app/" ,
isTarget : "false" ,
isExtract : item.extractStatus
} , ( rc ) = > {
//Kubernetes.connectOracle($http, $timeout, "/java/console/api/connectOracle", "create", rc, 0);
} ) ;
} ) ;
$timeout ( ( ) = > {
$location . path ( '/kubernetes/namespace/default/replicationControllers' ) ;
} , 500 ) ;
}
$http ( {
url : "/java/console/api/checkout/checkList" ,
method : "POST" ,
data : filter
data : selectedItems
} ) . success ( ( data , header , config , status ) = > {
$scope . tableData = data . data ;
var result = [ ] ;
@ -200,5 +389,12 @@ module System{
Configs . customAlert ( "提示" , "操作失败:发生请求失败,不能删除!" , '' , null , 0 , "error" ) ;
} ) ;
} ) ;
$scope . openLog = ( entity ) = > {
var name = entity . areaCode + "_" + entity . sysCode + "_" + entity . dataVersion
var containerName = entity . cityName + "-" + entity . districtName + "-" + entity . sysName + "-版本" + entity . dataVersion ;
entity [ "name" ] = name ;
TerminalService . newTerminal ( $interval , entity . id + "" , containerName , entity , "/java/console/api/standardextract/log?rcName=" + name , $templateCache . get ( UrlHelpers . join ( Kubernetes . templatePath , 'logShell.html' ) ) ) ;
}
} ] ) ;
}