From b5a08d080c9b32ac6102e162972a7d7e96cf396b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9A=AE=E5=85=89=EF=BC=9A=E5=9F=8E=E4=B8=AD=E5=9F=8E?= <806783409@qq.com> Date: Fri, 15 Feb 2019 21:23:42 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=85=B3=E4=BA=8E=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/doc-db.html | 40 +- .../resources/webjars/doc-db/js/doc-db.js | 747 +++++++++--------- 2 files changed, 414 insertions(+), 373 deletions(-) diff --git a/zyplayer-doc-db/src/main/resources/doc-db.html b/zyplayer-doc-db/src/main/resources/doc-db.html index 124a217b..c2137a14 100644 --- a/zyplayer-doc-db/src/main/resources/doc-db.html +++ b/zyplayer-doc-db/src/main/resources/doc-db.html @@ -35,7 +35,10 @@
-
表名:
+
+ 表名: + +
@@ -146,6 +149,41 @@
+ + diff --git a/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js b/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js index 4730fac1..db42554a 100644 --- a/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js +++ b/zyplayer-doc-db/src/main/resources/webjars/doc-db/js/doc-db.js @@ -1,372 +1,375 @@ - -var pageConfig = { - host: '', - tableRelationDataIndex: 0, -} - -// 表关系图表 -var tableRelationCharts; - -$(document).ready(function(){ - $('select.chosen-select').chosen({ - no_results_text: '没有找到', // 当检索时没有找到匹配项时显示的提示文本 - disable_search_threshold: 0, // 10 个以下的选择项则不显示检索框 - search_contains: true, // 从任意位置开始检索 - width: '100%' - }); - $('#checkAllTable').click(function(e){ - $("#exportUl li").addClass("checked"); - }); - $('#notCheckAllTable').click(function(e){ - $("#exportUl li").removeClass("checked"); - }); - $('#choiseExportDatabase').on('change', function(e){ - var host = $('#choiseExportHost').val(); - var dbName = $('#choiseExportDatabase').val(); - postService("zyplayer-doc-db/doc-db/getTableList", {host: host, dbName: dbName}, function(result){ - $('#exportUl').empty(); - for (var i = 0; i < result.data.length; i++) { - $("#exportUl").append('
  • '+result.data[i].tableName+'
  • '); - } - $('#exportModal').modal('ajustPosition', 'fit'); - }); - }); - $('#choiseExportHost').on('change', function(e){ - var host = $(this).val(); - postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: host}, function(result){ - $('#choiseExportDatabase').empty(); - $("#choiseExportDatabase").append(''); - for (var i = 0; i < result.data.length; i++) { - var dbName = result.data[i].dbName; - $("#choiseExportDatabase").append(''); - } - $('#choiseExportDatabase').trigger('chosen:updated'); - }); - }); - $('#choiseFuzzyHost').on('change', function(e){ - var host = $(this).val(); - postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: host}, function(result){ - $('#choiseFuzzyDatabase').empty(); - $("#choiseFuzzyDatabase").append(''); - for (var i = 0; i < result.data.length; i++) { - var dbName = result.data[i].dbName; - $("#choiseFuzzyDatabase").append(''); - } - $('#choiseFuzzyDatabase').trigger('chosen:updated'); - }); - }); - $('#choiseHost').on('change', function(e){ - pageConfig.host = $(this).val(); - postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: pageConfig.host}, function(result){ - $('#choiseDatabase').empty(); - $('#choiseTable').empty(); - $("#choiseDatabase").append(''); - $("#choiseTable").append(''); - for (var i = 0; i < result.data.length; i++) { - var dbName = result.data[i].dbName; - $("#choiseDatabase").append(''); - } - $('#choiseDatabase').trigger('chosen:updated'); - $('#choiseTable').trigger('chosen:updated'); - }); - }); - $('#choiseDatabase').on('change', function(e){ - var dbName = $(this).val(); - var param = {host: pageConfig.host, dbName: dbName}; - postService("zyplayer-doc-db/doc-db/getTableList", param, function(result){ - $('#choiseTable').empty(); - $("#choiseTable").append(''); - for (var i = 0; i < result.data.length; i++) { - var tableName = result.data[i].tableName; - $("#choiseTable").append(''); - } - $('#choiseTable').trigger('chosen:updated'); - }); - }); - $('#choiseTable').on('change', function(e){ - getTableColumnList(); - }); - $('#tableDescShow .icon-edit').click(function(e){ - var nowDesc = $("#tableDescShow .table-desc").html(); - $("#tableDescInput").val((nowDesc == "暂无注释") ? "" : nowDesc); - $("#tableDescShow").hide(); - $("#tableDescInput").show().focus(); - }); - $("#tableDescInput").blur(function(){ - $("#tableDescShow").show(); - $("#tableDescInput").hide(); - updateTableDesc(); - }); - $("#fuzzySearchBtn").click(function(){ - $('#fuzzySearchModal').modal({moveable:true, backdrop: 'static'}); - $('#choiseFuzzyHost').trigger('chosen:updated'); - }); - $("#exportBtn").click(function(){ - $('#exportModal').modal({moveable:true, backdrop: 'static'}); - }); - $("#doExport").click(function(){ - var host = $('#choiseExportHost').val(); - var dbName = $('#choiseExportDatabase').val(); - var tableNames = ""; - $('#exportUl li.checked').text(function(index, value){ - if(tableNames != "") {tableNames += ",";} - tableNames += value; - }); - if(isEmpty(host)){ - Toast.warn("请先选择库名");return; - } - if(isEmpty(dbName)){ - Toast.warn("请先选择库名");return; - } - if(isEmpty(tableNames)){ - Toast.warn("请输选择需要导出的表");return; - } - window.open("zyplayer-doc-db/doc-db/exportDatabase?host="+host - +"&dbName="+dbName - +"&tableNames="+tableNames); - }); - $("#exportUl").on("click", "li", function(){ - $(this).toggleClass("checked"); - }); - $("#showEchartsBtn").click(function(){ - $("#tableRelationBox").toggleClass("hide"); - if($("#tableRelationBox").hasClass("hide")){ - $(this).text("显示表关系图"); - } else { - $(this).text("隐藏表关系图"); - tableRelationCharts.resize(); - } - }); - $("#doSearch").click(function(){ - fuzzySearchByDesc(); - }); - $("#tableCloumnsTable tbody").on("click", ".column-desc", function(event){ - $(this).find("span").hide(); - $(this).find(".desc-input").show().focus(); - }).on("blur", ".column-desc", function(event){ - var newDesc = $(this).find(".desc-input").val(); - var columnName = $(this).find(".desc-input").attr("column"); - var oldDesc = $(this).find("span").text(); - $(this).find("span").show(); - $(this).find(".desc-input").hide(); - if(newDesc != oldDesc){ - var objThis = this; - var param = getChoiseDbInfo(3); - if(param == null){ - return; - } - param.newDesc = newDesc; - param.columnName = columnName; - postService("zyplayer-doc-db/doc-db/updateTableColumnDesc", param, function(msg){ - $(objThis).find("span").text(newDesc); - }); - } - }); - initData(); -}); - -function initData(){ - postService("zyplayer-doc-db/doc-db/getDataSourceList", {}, function(result){ - $('#choiseHost,#choiseFuzzyHost,#choiseExportHost').empty(); - if(validateResult(result)) { - $("#choiseHost,#choiseFuzzyHost,#choiseExportHost").append(''); - for (var i = 0; i < result.data.length; i++) { - $("#choiseHost,#choiseFuzzyHost,#choiseExportHost").append(''); - } - } - $('#choiseHost').trigger('chosen:updated'); - $('#choiseFuzzyHost').trigger('chosen:updated'); - $('#choiseExportHost').trigger('chosen:updated'); - }); - tableRelationCharts = echarts.init(document.getElementById('tableRelationCharts')); - tableRelationCharts.setOption(tableRelationOption); - tableRelationCharts.on('click', function (params) { - //console.log(params.data); - var dataIndex = params.data.index; - var description = params.data.description; - // 用户ID,T:user_info.id - // 用户ID,T:order_db.user_info.id - var indexOf = description.indexOf("T:"); - if(indexOf < 0) { - Toast.warn("该字段未关联表"); - return; - } - var dbAndTable = description.substring(indexOf + 2, description.length); - var dbNameChoise, tableNameChoise; - var tempSplit = dbAndTable.split("."); - if(tempSplit.length == 3) { - dbNameChoise = tempSplit[0]; - tableNameChoise = tempSplit[1]; - } else if(tempSplit.length == 2) { - tableNameChoise = tempSplit[0]; - } else { - tableNameChoise = dbAndTable; - } - var children = findChildren(tableRelationData, dataIndex); - if(children != null && children.children.length <= 0) { - // 查询表字段 - var param = getChoiseDbInfo(2); - if(param == null){ - return; - } - if(isNotEmpty(dbNameChoise)){ - param.dbName = dbNameChoise; - } - param.tableName = tableNameChoise; - postService("zyplayer-doc-db/doc-db/getTableColumnList", param, function(msg){ - var columnList = msg.data.columnList - if(!columnList || columnList.length <= 0) { - Toast.warn("未找到该字段关联的表信息");return; - } - changetableRelationOption(children, columnList); - tableRelationCharts.setOption(tableRelationOption); - var height = pageConfig.tableRelationDataIndex * 25; - $("#tableRelationBox").css("height", height + "px"); - tableRelationCharts.resize(); - }); - } - }); -} - -function changetableRelationOption(data, columnList){ - var childrenArr = []; - for (var i = 0; i < columnList.length; i++) { - var item = columnList[i]; - var description = getNotEmptyStr(item.description); - var indexOf = description.indexOf("T:"); - var dbAndTable = ""; - if(indexOf >= 0) { - dbAndTable = " " + description.substring(indexOf + 2, description.length); - } - childrenArr.push({ - name: item.name + " " + item.type + dbAndTable, - children: [], - collapsed: false, - index: pageConfig.tableRelationDataIndex++, - description: getNotEmptyStr(item.description), - length: item.length - }); - } - data.children = childrenArr; -} - -function findChildren(source, dataIndex){ - var result = null; - echarts.util.each(source.children, function (datum, index) { - if(result != null) { - return; - } - if(datum.index == dataIndex) { - result = datum; - } else if(datum.children && datum.children.length > 0) { - result = findChildren(datum, dataIndex); - } - }); - if(result != null) { - return result; - } -} - -function getTableColumnList(){ - var param = getChoiseDbInfo(3); - if(param == null){ - return; - } - $("#tableDescShow .icon-edit").hide(); - $("#tableCloumnsTable tbody").empty(); - $(".table-name").text(param.tableName); - $(".table-desc").text("暂无注释"); - postService("zyplayer-doc-db/doc-db/getTableColumnList", param, function(msg){ - var columnList = msg.data.columnList - for (var i = 0; i < columnList.length; i++) { - var item = columnList[i]; - //var isidentity = isNull(item.isidentity) ? '-' : (1 == item.isidentity ? '是' : '否'); - $("#tableCloumnsTable tbody").append( - '' - +'' + item.name + '' - +'' + (1 == item.isidentity ? '是' : '否') + '' - +'' + getNotEmptyStr(item.type) + '' - +'' + getNotEmptyStr(item.length) + '' - +'' + (1 == item.nullable ? '允许' : '不允许') + '' - +'' + ("true" == item.ispramary ? '是' : '否') + '' - +'' + getNotEmptyStr(item.description) + '' - +'' - +'' - ); - } - var tableInfo = msg.data.tableInfo; - if (!!tableInfo && isNotEmpty(tableInfo.description)) { - $(".table-desc").text(getNotEmptyStr(tableInfo.description)); - } - $("#tableDescShow .icon-edit").show(); - pageConfig.tableRelationDataIndex = 0; - changetableRelationOption(tableRelationData, columnList); - tableRelationData.name = tableInfo.tableName; - tableRelationCharts.setOption(tableRelationOption); - var height = pageConfig.tableRelationDataIndex * 25; - $("#tableRelationBox").css("height", height + "px"); - tableRelationCharts.resize(); - }); -} - -function updateTableDesc(){ - var tableDescInput = $("#tableDescInput").val(); - var param = getChoiseDbInfo(3); - if(param == null){ - return; - } - param.newDesc = tableDescInput; - postService("zyplayer-doc-db/doc-db/updateTableDesc", param, function(msg){ - $("#tableDescShow .table-desc").text(tableDescInput); - }); -} - -function getChoiseDbInfo(type) { - var host = $("#choiseHost").val(); - var dbName = $("#choiseDatabase").val(); - var tableName = $("#choiseTable").val(); - if(type >= 1 && isEmpty(host)){ - Toast.warn("请先选择连接");return null; - } - if(type >= 2 && isEmpty(dbName)){ - Toast.warn("请先选择库名");return null; - } - if(type >= 3 && isEmpty(tableName)){ - Toast.warn("请先选择表名");return null; - } - return {host: host, dbName: dbName, tableName: tableName}; -} - -function fuzzySearchByDesc(){ - var host = $("#choiseFuzzyHost").val(); - var dbName = $("#choiseFuzzyDatabase").val(); - var searchText = $("#searchText").val(); - if(isEmpty(host)){ - Toast.warn("请先选择库名");return; - } - if(isEmpty(dbName)){ - Toast.warn("请先选择库名");return; - } - if(isEmpty(searchText)){ - Toast.warn("请输入模糊匹配的内容");return; - } - $("#doSearch .icon").removeClass("hidden"); - var param = {host: host, dbName: dbName, searchText: searchText}; - postService("zyplayer-doc-db/doc-db/getTableAndColumnBySearch", param, function(msg){ - $("#fuzzySearchTable tbody").empty(); - for (var i = 0; i < msg.data.length; i++) { - var item = msg.data[i]; - $("#fuzzySearchTable tbody").append( - '' - +'' + item.tableName + '' - +'' + item.columnName + '' - +'' + getNotEmptyStr(item.description) + '' - +'' - ); - } - $('#fuzzySearchModal').modal('ajustPosition', 'fit'); - }, function(){ - $("#doSearch .icon").addClass("hidden"); - }); -} - + +var pageConfig = { + host: '', + tableRelationDataIndex: 0, +} + +// 表关系图表 +var tableRelationCharts; + +$(document).ready(function(){ + $('select.chosen-select').chosen({ + no_results_text: '没有找到', // 当检索时没有找到匹配项时显示的提示文本 + disable_search_threshold: 0, // 10 个以下的选择项则不显示检索框 + search_contains: true, // 从任意位置开始检索 + width: '100%' + }); + $('#checkAllTable').click(function(e){ + $("#exportUl li").addClass("checked"); + }); + $('#notCheckAllTable').click(function(e){ + $("#exportUl li").removeClass("checked"); + }); + $('#choiseExportDatabase').on('change', function(e){ + var host = $('#choiseExportHost').val(); + var dbName = $('#choiseExportDatabase').val(); + postService("zyplayer-doc-db/doc-db/getTableList", {host: host, dbName: dbName}, function(result){ + $('#exportUl').empty(); + for (var i = 0; i < result.data.length; i++) { + $("#exportUl").append('
  • '+result.data[i].tableName+'
  • '); + } + $('#exportModal').modal('ajustPosition', 'fit'); + }); + }); + $('#choiseExportHost').on('change', function(e){ + var host = $(this).val(); + postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: host}, function(result){ + $('#choiseExportDatabase').empty(); + $("#choiseExportDatabase").append(''); + for (var i = 0; i < result.data.length; i++) { + var dbName = result.data[i].dbName; + $("#choiseExportDatabase").append(''); + } + $('#choiseExportDatabase').trigger('chosen:updated'); + }); + }); + $('#choiseFuzzyHost').on('change', function(e){ + var host = $(this).val(); + postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: host}, function(result){ + $('#choiseFuzzyDatabase').empty(); + $("#choiseFuzzyDatabase").append(''); + for (var i = 0; i < result.data.length; i++) { + var dbName = result.data[i].dbName; + $("#choiseFuzzyDatabase").append(''); + } + $('#choiseFuzzyDatabase').trigger('chosen:updated'); + }); + }); + $('#choiseHost').on('change', function(e){ + pageConfig.host = $(this).val(); + postService("zyplayer-doc-db/doc-db/getDatabaseList", {host: pageConfig.host}, function(result){ + $('#choiseDatabase').empty(); + $('#choiseTable').empty(); + $("#choiseDatabase").append(''); + $("#choiseTable").append(''); + for (var i = 0; i < result.data.length; i++) { + var dbName = result.data[i].dbName; + $("#choiseDatabase").append(''); + } + $('#choiseDatabase').trigger('chosen:updated'); + $('#choiseTable').trigger('chosen:updated'); + }); + }); + $('#choiseDatabase').on('change', function(e){ + var dbName = $(this).val(); + var param = {host: pageConfig.host, dbName: dbName}; + postService("zyplayer-doc-db/doc-db/getTableList", param, function(result){ + $('#choiseTable').empty(); + $("#choiseTable").append(''); + for (var i = 0; i < result.data.length; i++) { + var tableName = result.data[i].tableName; + $("#choiseTable").append(''); + } + $('#choiseTable').trigger('chosen:updated'); + }); + }); + $('#choiseTable').on('change', function(e){ + getTableColumnList(); + }); + $('#tableDescShow .icon-edit').click(function(e){ + var nowDesc = $("#tableDescShow .table-desc").html(); + $("#tableDescInput").val((nowDesc == "暂无注释") ? "" : nowDesc); + $("#tableDescShow").hide(); + $("#tableDescInput").show().focus(); + }); + $("#tableDescInput").blur(function(){ + $("#tableDescShow").show(); + $("#tableDescInput").hide(); + updateTableDesc(); + }); + $("#fuzzySearchBtn").click(function(){ + $('#fuzzySearchModal').modal({moveable:true, backdrop: 'static'}); + $('#choiseFuzzyHost').trigger('chosen:updated'); + }); + $("#exportBtn").click(function(){ + $('#exportModal').modal({moveable:true, backdrop: 'static'}); + }); + $("#doExport").click(function(){ + var host = $('#choiseExportHost').val(); + var dbName = $('#choiseExportDatabase').val(); + var tableNames = ""; + $('#exportUl li.checked').text(function(index, value){ + if(tableNames != "") {tableNames += ",";} + tableNames += value; + }); + if(isEmpty(host)){ + Toast.warn("请先选择库名");return; + } + if(isEmpty(dbName)){ + Toast.warn("请先选择库名");return; + } + if(isEmpty(tableNames)){ + Toast.warn("请输选择需要导出的表");return; + } + window.open("zyplayer-doc-db/doc-db/exportDatabase?host="+host + +"&dbName="+dbName + +"&tableNames="+tableNames); + }); + $("#exportUl").on("click", "li", function(){ + $(this).toggleClass("checked"); + }); + $("#showEchartsBtn").click(function(){ + $("#tableRelationBox").toggleClass("hide"); + if($("#tableRelationBox").hasClass("hide")){ + $(this).text("显示表关系图"); + } else { + $(this).text("隐藏表关系图"); + tableRelationCharts.resize(); + } + }); + $("#doSearch").click(function(){ + fuzzySearchByDesc(); + }); + $("#aboutBtn").click(function(){ + $('#aboutModal').modal({moveable:true, backdrop: 'static'}); + }); + $("#tableCloumnsTable tbody").on("click", ".column-desc", function(event){ + $(this).find("span").hide(); + $(this).find(".desc-input").show().focus(); + }).on("blur", ".column-desc", function(event){ + var newDesc = $(this).find(".desc-input").val(); + var columnName = $(this).find(".desc-input").attr("column"); + var oldDesc = $(this).find("span").text(); + $(this).find("span").show(); + $(this).find(".desc-input").hide(); + if(newDesc != oldDesc){ + var objThis = this; + var param = getChoiseDbInfo(3); + if(param == null){ + return; + } + param.newDesc = newDesc; + param.columnName = columnName; + postService("zyplayer-doc-db/doc-db/updateTableColumnDesc", param, function(msg){ + $(objThis).find("span").text(newDesc); + }); + } + }); + initData(); +}); + +function initData(){ + postService("zyplayer-doc-db/doc-db/getDataSourceList", {}, function(result){ + $('#choiseHost,#choiseFuzzyHost,#choiseExportHost').empty(); + if(validateResult(result)) { + $("#choiseHost,#choiseFuzzyHost,#choiseExportHost").append(''); + for (var i = 0; i < result.data.length; i++) { + $("#choiseHost,#choiseFuzzyHost,#choiseExportHost").append(''); + } + } + $('#choiseHost').trigger('chosen:updated'); + $('#choiseFuzzyHost').trigger('chosen:updated'); + $('#choiseExportHost').trigger('chosen:updated'); + }); + tableRelationCharts = echarts.init(document.getElementById('tableRelationCharts')); + tableRelationCharts.setOption(tableRelationOption); + tableRelationCharts.on('click', function (params) { + //console.log(params.data); + var dataIndex = params.data.index; + var description = params.data.description; + // 用户ID,T:user_info.id + // 用户ID,T:order_db.user_info.id + var indexOf = description.indexOf("T:"); + if(indexOf < 0) { + Toast.warn("该字段未关联表"); + return; + } + var dbAndTable = description.substring(indexOf + 2, description.length); + var dbNameChoise, tableNameChoise; + var tempSplit = dbAndTable.split("."); + if(tempSplit.length == 3) { + dbNameChoise = tempSplit[0]; + tableNameChoise = tempSplit[1]; + } else if(tempSplit.length == 2) { + tableNameChoise = tempSplit[0]; + } else { + tableNameChoise = dbAndTable; + } + var children = findChildren(tableRelationData, dataIndex); + if(children != null && children.children.length <= 0) { + // 查询表字段 + var param = getChoiseDbInfo(2); + if(param == null){ + return; + } + if(isNotEmpty(dbNameChoise)){ + param.dbName = dbNameChoise; + } + param.tableName = tableNameChoise; + postService("zyplayer-doc-db/doc-db/getTableColumnList", param, function(msg){ + var columnList = msg.data.columnList + if(!columnList || columnList.length <= 0) { + Toast.warn("未找到该字段关联的表信息");return; + } + changetableRelationOption(children, columnList); + tableRelationCharts.setOption(tableRelationOption); + var height = pageConfig.tableRelationDataIndex * 25; + $("#tableRelationBox").css("height", height + "px"); + tableRelationCharts.resize(); + }); + } + }); +} + +function changetableRelationOption(data, columnList){ + var childrenArr = []; + for (var i = 0; i < columnList.length; i++) { + var item = columnList[i]; + var description = getNotEmptyStr(item.description); + var indexOf = description.indexOf("T:"); + var dbAndTable = ""; + if(indexOf >= 0) { + dbAndTable = " " + description.substring(indexOf + 2, description.length); + } + childrenArr.push({ + name: item.name + " " + item.type + dbAndTable, + children: [], + collapsed: false, + index: pageConfig.tableRelationDataIndex++, + description: getNotEmptyStr(item.description), + length: item.length + }); + } + data.children = childrenArr; +} + +function findChildren(source, dataIndex){ + var result = null; + echarts.util.each(source.children, function (datum, index) { + if(result != null) { + return; + } + if(datum.index == dataIndex) { + result = datum; + } else if(datum.children && datum.children.length > 0) { + result = findChildren(datum, dataIndex); + } + }); + if(result != null) { + return result; + } +} + +function getTableColumnList(){ + var param = getChoiseDbInfo(3); + if(param == null){ + return; + } + $("#tableDescShow .icon-edit").hide(); + $("#tableCloumnsTable tbody").empty(); + $(".table-name").text(param.tableName); + $(".table-desc").text("暂无注释"); + postService("zyplayer-doc-db/doc-db/getTableColumnList", param, function(msg){ + var columnList = msg.data.columnList + for (var i = 0; i < columnList.length; i++) { + var item = columnList[i]; + //var isidentity = isNull(item.isidentity) ? '-' : (1 == item.isidentity ? '是' : '否'); + $("#tableCloumnsTable tbody").append( + '' + +'' + item.name + '' + +'' + (1 == item.isidentity ? '是' : '否') + '' + +'' + getNotEmptyStr(item.type) + '' + +'' + getNotEmptyStr(item.length) + '' + +'' + (1 == item.nullable ? '允许' : '不允许') + '' + +'' + ("true" == item.ispramary ? '是' : '否') + '' + +'' + getNotEmptyStr(item.description) + '' + +'' + +'' + ); + } + var tableInfo = msg.data.tableInfo; + if (!!tableInfo && isNotEmpty(tableInfo.description)) { + $(".table-desc").text(getNotEmptyStr(tableInfo.description)); + } + $("#tableDescShow .icon-edit").show(); + pageConfig.tableRelationDataIndex = 0; + changetableRelationOption(tableRelationData, columnList); + tableRelationData.name = tableInfo.tableName; + tableRelationCharts.setOption(tableRelationOption); + var height = pageConfig.tableRelationDataIndex * 25; + $("#tableRelationBox").css("height", height + "px"); + tableRelationCharts.resize(); + }); +} + +function updateTableDesc(){ + var tableDescInput = $("#tableDescInput").val(); + var param = getChoiseDbInfo(3); + if(param == null){ + return; + } + param.newDesc = tableDescInput; + postService("zyplayer-doc-db/doc-db/updateTableDesc", param, function(msg){ + $("#tableDescShow .table-desc").text(tableDescInput); + }); +} + +function getChoiseDbInfo(type) { + var host = $("#choiseHost").val(); + var dbName = $("#choiseDatabase").val(); + var tableName = $("#choiseTable").val(); + if(type >= 1 && isEmpty(host)){ + Toast.warn("请先选择连接");return null; + } + if(type >= 2 && isEmpty(dbName)){ + Toast.warn("请先选择库名");return null; + } + if(type >= 3 && isEmpty(tableName)){ + Toast.warn("请先选择表名");return null; + } + return {host: host, dbName: dbName, tableName: tableName}; +} + +function fuzzySearchByDesc(){ + var host = $("#choiseFuzzyHost").val(); + var dbName = $("#choiseFuzzyDatabase").val(); + var searchText = $("#searchText").val(); + if(isEmpty(host)){ + Toast.warn("请先选择库名");return; + } + if(isEmpty(dbName)){ + Toast.warn("请先选择库名");return; + } + if(isEmpty(searchText)){ + Toast.warn("请输入模糊匹配的内容");return; + } + $("#doSearch .icon").removeClass("hidden"); + var param = {host: host, dbName: dbName, searchText: searchText}; + postService("zyplayer-doc-db/doc-db/getTableAndColumnBySearch", param, function(msg){ + $("#fuzzySearchTable tbody").empty(); + for (var i = 0; i < msg.data.length; i++) { + var item = msg.data[i]; + $("#fuzzySearchTable tbody").append( + '' + +'' + item.tableName + '' + +'' + item.columnName + '' + +'' + getNotEmptyStr(item.description) + '' + +'' + ); + } + $('#fuzzySearchModal').modal('ajustPosition', 'fit'); + }, function(){ + $("#doSearch .icon").addClass("hidden"); + }); +} +