前端界面提示美化

This commit is contained in:
inrgihc
2023-12-23 21:57:25 +08:00
parent dd00b75765
commit d06a97307a
19 changed files with 88 additions and 78 deletions

View File

@@ -107,29 +107,30 @@
dbswitch基于Springboot脚手架进行的后端模块开发模块组成结构如下 dbswitch基于Springboot脚手架进行的后端模块开发模块组成结构如下
<pre> <pre>
dbswitch dbswitch
dbswitch-common // dbswitch通用定义模块 dbswitch-common // dbswitch通用定义模块
dbswitch-core // dbswitch迁移同步实现类 dbswitch-core // dbswitch迁移同步实现类
dbswitch-product // dbswitch数据库方言 dbswitch-product // dbswitch数据库方言
dbswitch-product-mysql // -> mysql方言实现类 dbswitch-product-mysql // -> mysql方言实现类
dbswitch-product-oracle // -> oracle方言实现类 dbswitch-product-oracle // -> oracle方言实现类
dbswitch-product-sqlserver // -> sqlserver方言实现类 dbswitch-product-sqlserver // -> sqlserver方言实现类
dbswitch-product-postgres // -> postgres方言实现类 dbswitch-product-postgres // -> postgres方言实现类
dbswitch-product-dm // -> dm方言实现类 dbswitch-product-dm // -> dm方言实现类
dbswitch-product-kingbase // -> kingbase方言实现类 dbswitch-product-kingbase // -> kingbase方言实现类
dbswitch-product-oscar // -> oscar方言实现类 dbswitch-product-oscar // -> oscar方言实现类
dbswitch-product-gbase // -> gbase方言实现类 dbswitch-product-gbase // -> gbase方言实现类
dbswitch-product-mariadb // -> mariadb方言实现类 dbswitch-product-mariadb // -> mariadb方言实现类
dbswitch-product-openguass // -> openguass方言实现类 dbswitch-product-openguass // -> openguass方言实现类
dbswitch-product-db2 // -> db2方言实现类 dbswitch-product-db2 // -> db2方言实现类
dbswitch-product-sybase // -> sybase方言实现类 dbswitch-product-sybase // -> sybase方言实现类
dbswitch-product-hive // -> hive方言实现类 dbswitch-product-hive // -> hive方言实现类
dbswitch-product-sqlite // -> sqlite方言实现类 dbswitch-product-sqlite // -> sqlite方言实现类
dbswitch-product-clickhouse // -> clickhouse方言实现类 dbswitch-product-clickhouse // -> clickhouse方言实现类
dbswitch-product-mongodb // -> mongodb方言实现类 dbswitch-product-mongodb // -> mongodb方言实现类
dbswitch-data // 工具入口模块,读取配置文件中的参数执行异构迁移同步 dbswitch-product-elasticsearch // -> elasticsearch方言实现类
dbswitch-admin // 在以上模块的基础上引入Quartz的调度服务与接口 dbswitch-data // 工具入口模块,读取配置文件中的参数执行异构迁移同步
dbswitch-admin-ui // 基于Vue2的前段WEB交互页面 dbswitch-admin // 在以上模块的基础上引入Quartz的调度服务与接口
dbswitch-dist // 基于maven-assembly-plugin插件的项目打包模块 dbswitch-admin-ui // 基于Vue2的前段WEB交互页面
dbswitch-dist // 基于maven-assembly-plugin插件的项目打包模块
</pre> </pre>
</p> </p>
<ul> <ul>
@@ -138,7 +139,7 @@
dbwitch基于SpringBoot作为项目的基础框架利用JdbcTemplate提供常规的动态SQL读写操作实现异构数据库数据的导出与导入功能 dbwitch基于SpringBoot作为项目的基础框架利用JdbcTemplate提供常规的动态SQL读写操作实现异构数据库数据的导出与导入功能
</p> </p>
<p> <p>
dbwitch-admin模块为用户交互提供了服务接口基于Mybatis提供配置数据的持久化 dbwitch-admin模块为用户交互提供了服务接口基于Mybatis/Mybatis-plus提供配置数据的持久化
</p> </p>
<li>Quartz</li> <li>Quartz</li>
<p> <p>

View File

@@ -4,8 +4,9 @@
<div class="container"> <div class="container">
<el-card class="box-card"> <el-card class="box-card">
<div slot="header" <div slot="header"
align="center"
class="clearfix"> class="clearfix">
<span>数据库类型列表</span> <span><b>数据库产品类型列表</b></span>
</div> </div>
<div class="navsBox"> <div class="navsBox">
<ul> <ul>
@@ -174,7 +175,7 @@ export default {
} }
.container .el-card { .container .el-card {
width: 30%; width: 20%;
height: 100%; height: 100%;
overflow: auto; overflow: auto;
} }

View File

@@ -426,6 +426,7 @@ export default {
.el-card { .el-card {
width: 100%; width: 100%;
height: 100%; height: 100%;
min-height: 200px;
} }
.el-message { .el-message {
@@ -443,14 +444,13 @@ export default {
min-width: 350px; min-width: 350px;
position: relative; position: relative;
cursor: default; cursor: default;
background: #f3f1f1;
} }
.scroller { .scroller {
min-width: 100%; min-width: 200px;
max-height: calc(90vh);
} }
.tree-container .tree { .tree-container .tree {
overflow: auto; overflow: auto;
max-height: 200px;
} }
.table-container { .table-container {
width: 80%; width: 80%;

View File

@@ -192,7 +192,10 @@
</span> </span>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
<p>如果只同步数据内容则需要目标端需要存在符合映射规则的物理表可在执行任务前手动建好</p> <p>目标端建表并同步数据首次在目标的自动建表(存在重命表时会删除重建)然后执行数据同步(支持有主键表的变化量同步)操作</p>
<p>目标端只创建物理表: 只在目标端自动建表存在重名表时会删除后重建</p>
<p>目标端只同步表里数据如果只同步数据内容则需要目标端需要存在符合映射规则的物理表可在执行任务前手动建好该选项通<br />
常适用于两端表结构相同时(目标端字段包含源端所有的字段且字段数据类型相似)的数据同步场景</p>
</div> </div>
<i class="el-icon-question"></i> <i class="el-icon-question"></i>
</el-tooltip> </el-tooltip>
@@ -213,7 +216,7 @@
style="width:65%"> style="width:65%">
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
创建表时是否自动支持字段的自增只有使用自动建表才会生效不过前提需要两端的数据库表支持自增字段默认为false 创建表时是否自动支持字段的自增只有使用自动建表才会生效不过前提需要两端的数据库表建表时支持指定自增字段默认为false
</div> </div>
<i class="el-icon-question"></i> <i class="el-icon-question"></i>
</el-tooltip> </el-tooltip>
@@ -291,14 +294,13 @@
</el-form-item> </el-form-item>
</div> </div>
<div v-show="active == 4"> <div v-show="active == 4">
<div class="tip-content"> <el-alert title="说明信息"
<p>说明(1) 当表名映射规则记录为空时代表目标表名与源表名的名称相同;</p> type="success">
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p>(1) 当表名映射规则记录为空时代表目标表名与源表名的名称相同;</p>
(2) 当字段名映射规则记录为空时代表目标表的字段名与源表名的字段名相同</p> <p>(2) 当字段名映射规则记录为空时代表目标表的字段名与源表名的字段名相同</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p>(3) 在字段名映射规则中如果目标字段名为空未填写则代表剔除该字段不能是主键的同步</p>
(3) 在字段名映射规则中如果目标字段名为空未填写则代表剔除该字段不能是主键的同步</p> </el-alert>
</div> <el-button type="primary"
<el-button type="success"
@click="addTableNameMapperListRow()" @click="addTableNameMapperListRow()"
round>添加表名映射</el-button> round>添加表名映射</el-button>
<el-button type="warning" <el-button type="warning"
@@ -335,7 +337,7 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-button type="success" <el-button type="primary"
@click="addColumnNameMapperListRow()" @click="addColumnNameMapperListRow()"
round>添加字段名映射</el-button> round>添加字段名映射</el-button>
<el-button type="warning" <el-button type="warning"

View File

@@ -191,7 +191,10 @@
</span> </span>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
<p>如果只同步数据内容则需要目标端需要存在符合映射规则的物理表可在执行任务前手动建好</p> <p>目标端建表并同步数据首次在目标的自动建表(存在重命表时会删除重建)然后执行数据同步(支持有主键表的变化量同步)操作</p>
<p>目标端只创建物理表: 只在目标端自动建表存在重名表时会删除后重建</p>
<p>目标端只同步表里数据如果只同步数据内容则需要目标端需要存在符合映射规则的物理表可在执行任务前手动建好该选项通<br />
常适用于两端表结构相同时(目标端字段包含源端所有的字段且字段数据类型相似)的数据同步场景</p>
</div> </div>
<i class="el-icon-question"></i> <i class="el-icon-question"></i>
</el-tooltip> </el-tooltip>
@@ -212,7 +215,7 @@
style="width:65%"> style="width:65%">
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
创建表时是否自动支持字段的自增只有使用自动建表才会生效不过前提需要两端的数据库表支持自增字段默认为false 创建表时是否自动支持字段的自增只有使用自动建表才会生效不过前提需要两端的数据库表建表时支持指定自增字段默认为false
</div> </div>
<i class="el-icon-question"></i> <i class="el-icon-question"></i>
</el-tooltip> </el-tooltip>
@@ -290,14 +293,13 @@
</el-form-item> </el-form-item>
</div> </div>
<div v-show="active == 4"> <div v-show="active == 4">
<div class="tip-content"> <el-alert title="说明信息"
<p>说明(1) 当表名映射规则记录为空时代表目标表名与源表名的名称相同;</p> type="success">
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p>(1) 当表名映射规则记录为空时代表目标表名与源表名的名称相同;</p>
(2) 当字段名映射规则记录为空时代表目标表的字段名与源表名的字段名相同</p> <p>(2) 当字段名映射规则记录为空时代表目标表的字段名与源表名的字段名相同</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p>(3) 在字段名映射规则中如果目标字段名为空未填写则代表剔除该字段不能是主键的同步</p>
(3) 在字段名映射规则中如果目标字段名为空未填写则代表剔除该字段不能是主键的同步</p> </el-alert>
</div> <el-button type="primary"
<el-button type="success"
@click="addTableNameMapperListRow()" @click="addTableNameMapperListRow()"
round>添加表名映射</el-button> round>添加表名映射</el-button>
<el-button type="warning" <el-button type="warning"
@@ -334,7 +336,7 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-button type="success" <el-button type="primary"
@click="addColumnNameMapperListRow()" @click="addColumnNameMapperListRow()"
round>添加字段名映射</el-button> round>添加字段名映射</el-button>
<el-button type="warning" <el-button type="warning"
@@ -418,9 +420,12 @@
目标端只同步表里数据 目标端只同步表里数据
</span> </span>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="建表字段自增" v-if=" updateform.autoSyncMode!==0 ">{{updateform.targetAutoIncrement}}</el-descriptions-item> <el-descriptions-item label="建表字段自增"
<el-descriptions-item label="数据批次大小" v-if=" updateform.autoSyncMode!==1 ">{{updateform.batchSize}}</el-descriptions-item> v-if=" updateform.autoSyncMode!==0 ">{{updateform.targetAutoIncrement}}</el-descriptions-item>
<el-descriptions-item label="表名大小写转换" v-if=" updateform.autoSyncMode!==0 "> <el-descriptions-item label="数据批次大小"
v-if=" updateform.autoSyncMode!==1 ">{{updateform.batchSize}}</el-descriptions-item>
<el-descriptions-item label="表名大小写转换"
v-if=" updateform.autoSyncMode!==0 ">
<span v-if="updateform.tableNameCase == 'NONE'"> <span v-if="updateform.tableNameCase == 'NONE'">
无转换 无转换
</span> </span>
@@ -431,7 +436,8 @@
转小写 转小写
</span> </span>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="列名大小写转换" v-if=" updateform.autoSyncMode!==0 "> <el-descriptions-item label="列名大小写转换"
v-if=" updateform.autoSyncMode!==0 ">
<span v-if="updateform.columnNameCase == 'NONE'"> <span v-if="updateform.columnNameCase == 'NONE'">
无转换 无转换
</span> </span>

View File

@@ -1 +1 @@
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>异构数据迁移工具</title><link href=/static/css/app.ce2a0ebb9b7cb076901c8d6eb485cb1e.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.06f1bd4d8056b1bf28b5.js></script><script type=text/javascript src=/static/js/vendor.12f5219d5efab3af9f2f.js></script><script type=text/javascript src=/static/js/app.fc618160399ef65c30dd.js></script></body></html> <!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>异构数据迁移工具</title><link href=/static/css/app.20d6eafe6a62211e9c1f22fad71a9db0.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.5d37b4a8aa14c9a3bf1f.js></script><script type=text/javascript src=/static/js/vendor.12f5219d5efab3af9f2f.js></script><script type=text/javascript src=/static/js/app.e8e5e92b2ee7f15cd565.js></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +0,0 @@
webpackJsonp([17],{AbLW:function(t,e){},WfA7:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a={data:function(){return{dialogVisible:!1,loading:!0,connectionTypes:[],versionDrivers:[],isActive:-1}},methods:{loadConnectionTypes:function(){var t=this;this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(e){0===e.data.code?(t.connectionTypes=e.data.data,t.handleChooseClick("MYSQL",0)):e.data.message&&alert("初始化数据库类型信息失败:"+e.data.message)})},handleChooseClick:function(t,e){var i=this;this.isActive=e,this.$http.get("/dbswitch/admin/api/v1/connection/"+t+"/drivers").then(function(t){0===t.data.code?i.versionDrivers=t.data.data:t.data.message&&alert("查询驱动版本信息失败,"+t.data.message)})},handleClose:function(t){this.$confirm("确认关闭?").then(function(e){t()}).catch(function(t){})},formatJarFileList:function(t,e){return t[e.property].join(";\n")}},created:function(){this.loadConnectionTypes()},beforeDestroy:function(){}},n={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("el-card",[i("div",{staticClass:"container"},[i("el-card",{staticClass:"box-card"},[i("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[i("span",[t._v("数据库类型列表")])]),t._v(" "),i("div",{staticClass:"navsBox"},[i("ul",t._l(t.connectionTypes,function(e,a){return i("li",{key:a,class:{active:a==t.isActive},on:{click:function(i){return t.handleChooseClick(e.type,a)}}},[t._v("["+t._s(e.id)+"]"+t._s(e.type))])}),0)])]),t._v(" "),i("div",{staticClass:"contentBox"},[i("div",{staticStyle:{margin:"10px 5px"},attrs:{align:"right",width:"95%"}},[i("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-document-add"},on:{click:function(e){t.dialogVisible=!0}}},[t._v("添加")])],1),t._v(" "),i("el-table",{attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},data:t.versionDrivers,size:"small",stripe:"",border:""}},[i("template",{slot:"empty"},[i("span",[t._v("单击左侧数据库类型来查看对应的驱动版本信息")])]),t._v(" "),i("el-table-column",{attrs:{property:"driverVersion",label:"驱动版本号","min-width":"15%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverClass",label:"驱动类名","min-width":"20%"}}),t._v(" "),i("el-table-column",{attrs:{property:"jarFiles",formatter:t.formatJarFileList,label:"驱动JAR名称","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverPath",label:"驱动版本路径","min-width":"50%"}})],2)],1)],1)]),t._v(" "),i("el-dialog",{attrs:{title:"添加数据库驱动JAR说明",visible:t.dialogVisible,width:"40%","before-close":t.handleClose},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("span",[t._v("请按照驱动路径所在的目录${DBSWITCH_HOME}/drivers下在数据库类型为名称的目录下以驱动版本号为名称创建目录并放置对应的驱动jar文件然后重启即可生效。具体可参考https://gitee.com/inrgihc/dbswitch/tree/master/drivers下的目录结构。")]),t._v(" "),i("span"),t._v(" "),i("span",[t._v("特殊说明驱动版本目录下的所有JAR必须无任何外部依赖否则也需将其依赖JAR一起放置到对应的目录下。")]),t._v(" "),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),t._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:function(e){t.dialogVisible=!1}}},[t._v("确 定")])],1)])],1)},staticRenderFns:[]};var s=i("VU/8")(a,n,!1,function(t){i("AbLW")},"data-v-3bedb500",null);e.default=s.exports}});
//# sourceMappingURL=17.4c01d3a82006113dd8bb.js.map

View File

@@ -0,0 +1,2 @@
webpackJsonp([18],{Modp:function(t,e){},WfA7:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a={data:function(){return{dialogVisible:!1,loading:!0,connectionTypes:[],versionDrivers:[],isActive:-1}},methods:{loadConnectionTypes:function(){var t=this;this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(e){0===e.data.code?(t.connectionTypes=e.data.data,t.handleChooseClick("MYSQL",0)):e.data.message&&alert("初始化数据库类型信息失败:"+e.data.message)})},handleChooseClick:function(t,e){var i=this;this.isActive=e,this.$http.get("/dbswitch/admin/api/v1/connection/"+t+"/drivers").then(function(t){0===t.data.code?i.versionDrivers=t.data.data:t.data.message&&alert("查询驱动版本信息失败,"+t.data.message)})},handleClose:function(t){this.$confirm("确认关闭?").then(function(e){t()}).catch(function(t){})},formatJarFileList:function(t,e){return t[e.property].join(";\n")}},created:function(){this.loadConnectionTypes()},beforeDestroy:function(){}},n={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("el-card",[i("div",{staticClass:"container"},[i("el-card",{staticClass:"box-card"},[i("div",{staticClass:"clearfix",attrs:{slot:"header",align:"center"},slot:"header"},[i("span",[i("b",[t._v("数据库产品类型列表")])])]),t._v(" "),i("div",{staticClass:"navsBox"},[i("ul",t._l(t.connectionTypes,function(e,a){return i("li",{key:a,class:{active:a==t.isActive},on:{click:function(i){return t.handleChooseClick(e.type,a)}}},[t._v("["+t._s(e.id)+"]"+t._s(e.type))])}),0)])]),t._v(" "),i("div",{staticClass:"contentBox"},[i("div",{staticStyle:{margin:"10px 5px"},attrs:{align:"right",width:"95%"}},[i("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-document-add"},on:{click:function(e){t.dialogVisible=!0}}},[t._v("添加")])],1),t._v(" "),i("el-table",{attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},data:t.versionDrivers,size:"small",stripe:"",border:""}},[i("template",{slot:"empty"},[i("span",[t._v("单击左侧数据库类型来查看对应的驱动版本信息")])]),t._v(" "),i("el-table-column",{attrs:{property:"driverVersion",label:"驱动版本号","min-width":"15%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverClass",label:"驱动类名","min-width":"20%"}}),t._v(" "),i("el-table-column",{attrs:{property:"jarFiles",formatter:t.formatJarFileList,label:"驱动JAR名称","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverPath",label:"驱动版本路径","min-width":"50%"}})],2)],1)],1)]),t._v(" "),i("el-dialog",{attrs:{title:"添加数据库驱动JAR说明",visible:t.dialogVisible,width:"40%","before-close":t.handleClose},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("span",[t._v("请按照驱动路径所在的目录${DBSWITCH_HOME}/drivers下在数据库类型为名称的目录下以驱动版本号为名称创建目录并放置对应的驱动jar文件然后重启即可生效。具体可参考https://gitee.com/inrgihc/dbswitch/tree/master/drivers下的目录结构。")]),t._v(" "),i("span"),t._v(" "),i("span",[t._v("特殊说明驱动版本目录下的所有JAR必须无任何外部依赖否则也需将其依赖JAR一起放置到对应的目录下。")]),t._v(" "),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),t._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:function(e){t.dialogVisible=!1}}},[t._v("确 定")])],1)])],1)},staticRenderFns:[]};var s=i("VU/8")(a,n,!1,function(t){i("Modp")},"data-v-25cae184",null);e.default=s.exports}});
//# sourceMappingURL=18.7ac38643e0f275e0bc96.js.map

View File

@@ -1,2 +1,2 @@
webpackJsonp([20],{NHnr:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=t("//Fk"),r=t.n(o),a=t("7+uW"),c={render:function(){var n=this.$createElement,e=this._self._c||n;return e("div",{staticClass:"body-wrapper"},[e("router-view")],1)},staticRenderFns:[]};var i=t("VU/8")({name:"App"},c,!1,function(n){t("Pibb")},"data-v-a97617c2",null).exports,u=t("/ocq");a.default.use(u.a);var l=new u.a({routes:[{path:"/",name:"首页",component:function(){return t.e(4).then(t.bind(null,"4er+"))},redirect:"/dashboard",children:[{path:"/dashboard",name:"概览",icon:"el-icon-menu",component:function(){return Promise.all([t.e(0),t.e(9)]).then(t.bind(null,"ARoL"))}},{path:"/connection",name:"连接配置",icon:"el-icon-s-order",component:function(){return t.e(8).then(t.bind(null,"Hoc+"))},children:[{path:"/connection/driver",name:"驱动配置",icon:"el-icon-help",component:function(){return t.e(17).then(t.bind(null,"WfA7"))}},{path:"/connection/list",name:"连接管理",icon:"el-icon-bank-card",component:function(){return Promise.all([t.e(0),t.e(15)]).then(t.bind(null,"qdtB"))}}]},{path:"/metadata",name:"数据目录",icon:"el-icon-coin",component:function(){return t.e(1).then(t.bind(null,"PJ2q"))}},{path:"/task",name:"任务管理",icon:"el-icon-s-tools",component:function(){return t.e(6).then(t.bind(null,"4KEO"))},children:[{path:"/task/assignment",name:"任务安排",icon:"el-icon-eleme",component:function(){return Promise.all([t.e(0),t.e(18)]).then(t.bind(null,"D0I9"))}},{path:"/task/schedule",name:"调度记录",icon:"el-icon-pie-chart",component:function(){return Promise.all([t.e(0),t.e(10)]).then(t.bind(null,"mKp/"))}}]},{path:"/log",name:"审计日志",icon:"el-icon-platform-eleme",component:function(){return t.e(7).then(t.bind(null,"QWih"))},children:[{path:"/log/access",name:"登录日志",icon:"el-icon-place",component:function(){return t.e(12).then(t.bind(null,"oQRv"))}},{path:"/log/action",name:"操作日志",icon:"el-icon-s-check",component:function(){return t.e(11).then(t.bind(null,"0eSS"))}}]},{path:"/about",name:"关于系统",icon:"el-icon-s-custom",component:function(){return t.e(2).then(t.bind(null,"m25N"))}},{path:"/user/personal",name:"个人中心",hidden:!0,component:function(){return t.e(3).then(t.bind(null,"uTKz"))}},{path:"/task/create",name:"创建任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(13)]).then(t.bind(null,"/rCC"))}},{path:"/task/update",name:"修改任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(14)]).then(t.bind(null,"txod"))}},{path:"/task/detail",name:"查看任务",hidden:!0,component:function(){return t.e(16).then(t.bind(null,"nrt7"))}}]},{path:"/login",name:"登录",component:function(){return t.e(5).then(t.bind(null,"T+/8"))}}]}),p=t("mtWM"),d=t.n(p).a.create();d.interceptors.request.use(function(n){return n.url=""+n.url,n});var s=d,h=t("zL8q"),m=t.n(h),f=(t("muQq"),t("tvR6"),t("7Vno")),b=t.n(f),v=t("XLwt"),k=t.n(v);a.default.use(s),a.default.use(m.a),a.default.use(b.a),a.default.prototype.$http=s,a.default.config.productionTip=!1,a.default.prototype.$echarts=k.a,s.interceptors.request.use(function(n){var e=sessionStorage.getItem("token");return e&&(n.headers.Authorization="Bearer "+e),n},function(n){return r.a.reject(n)}),s.interceptors.response.use(function(n){return!n.data||401!==n.data.code&&403!==n.data.code&&404!==n.data.code||l.push({path:"/login"}),n},function(n){return console.log(n),r.a.reject(n.response)}),new a.default({el:"#app",router:l,components:{App:i},template:"<App/>"})},Pibb:function(n,e){},muQq:function(n,e){},tvR6:function(n,e){}},["NHnr"]); webpackJsonp([20],{NHnr:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=t("//Fk"),r=t.n(o),a=t("7+uW"),c={render:function(){var n=this.$createElement,e=this._self._c||n;return e("div",{staticClass:"body-wrapper"},[e("router-view")],1)},staticRenderFns:[]};var i=t("VU/8")({name:"App"},c,!1,function(n){t("Pibb")},"data-v-a97617c2",null).exports,u=t("/ocq");a.default.use(u.a);var l=new u.a({routes:[{path:"/",name:"首页",component:function(){return t.e(4).then(t.bind(null,"4er+"))},redirect:"/dashboard",children:[{path:"/dashboard",name:"概览",icon:"el-icon-menu",component:function(){return Promise.all([t.e(0),t.e(9)]).then(t.bind(null,"ARoL"))}},{path:"/connection",name:"连接配置",icon:"el-icon-s-order",component:function(){return t.e(8).then(t.bind(null,"Hoc+"))},children:[{path:"/connection/driver",name:"驱动配置",icon:"el-icon-help",component:function(){return t.e(18).then(t.bind(null,"WfA7"))}},{path:"/connection/list",name:"连接管理",icon:"el-icon-bank-card",component:function(){return Promise.all([t.e(0),t.e(14)]).then(t.bind(null,"qdtB"))}}]},{path:"/metadata",name:"数据目录",icon:"el-icon-coin",component:function(){return t.e(1).then(t.bind(null,"PJ2q"))}},{path:"/task",name:"任务管理",icon:"el-icon-s-tools",component:function(){return t.e(6).then(t.bind(null,"4KEO"))},children:[{path:"/task/assignment",name:"任务安排",icon:"el-icon-eleme",component:function(){return Promise.all([t.e(0),t.e(17)]).then(t.bind(null,"D0I9"))}},{path:"/task/schedule",name:"调度记录",icon:"el-icon-pie-chart",component:function(){return Promise.all([t.e(0),t.e(10)]).then(t.bind(null,"mKp/"))}}]},{path:"/log",name:"审计日志",icon:"el-icon-platform-eleme",component:function(){return t.e(7).then(t.bind(null,"QWih"))},children:[{path:"/log/access",name:"登录日志",icon:"el-icon-place",component:function(){return t.e(12).then(t.bind(null,"oQRv"))}},{path:"/log/action",name:"操作日志",icon:"el-icon-s-check",component:function(){return t.e(11).then(t.bind(null,"0eSS"))}}]},{path:"/about",name:"关于系统",icon:"el-icon-s-custom",component:function(){return t.e(2).then(t.bind(null,"m25N"))}},{path:"/user/personal",name:"个人中心",hidden:!0,component:function(){return t.e(3).then(t.bind(null,"uTKz"))}},{path:"/task/create",name:"创建任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(13)]).then(t.bind(null,"/rCC"))}},{path:"/task/update",name:"修改任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(16)]).then(t.bind(null,"txod"))}},{path:"/task/detail",name:"查看任务",hidden:!0,component:function(){return t.e(15).then(t.bind(null,"nrt7"))}}]},{path:"/login",name:"登录",component:function(){return t.e(5).then(t.bind(null,"T+/8"))}}]}),p=t("mtWM"),d=t.n(p).a.create();d.interceptors.request.use(function(n){return n.url=""+n.url,n});var s=d,h=t("zL8q"),m=t.n(h),f=(t("muQq"),t("tvR6"),t("7Vno")),b=t.n(f),v=t("XLwt"),k=t.n(v);a.default.use(s),a.default.use(m.a),a.default.use(b.a),a.default.prototype.$http=s,a.default.config.productionTip=!1,a.default.prototype.$echarts=k.a,s.interceptors.request.use(function(n){var e=sessionStorage.getItem("token");return e&&(n.headers.Authorization="Bearer "+e),n},function(n){return r.a.reject(n)}),s.interceptors.response.use(function(n){return!n.data||401!==n.data.code&&403!==n.data.code&&404!==n.data.code||l.push({path:"/login"}),n},function(n){return console.log(n),r.a.reject(n.response)}),new a.default({el:"#app",router:l,components:{App:i},template:"<App/>"})},Pibb:function(n,e){},muQq:function(n,e){},tvR6:function(n,e){}},["NHnr"]);
//# sourceMappingURL=app.fc618160399ef65c30dd.js.map //# sourceMappingURL=app.e8e5e92b2ee7f15cd565.js.map

View File

@@ -1,2 +1,2 @@
!function(e){var n=window.webpackJsonp;window.webpackJsonp=function(r,a,o){for(var d,f,i,u=0,s=[];u<r.length;u++)f=r[u],t[f]&&s.push(t[f][0]),t[f]=0;for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(e[d]=a[d]);for(n&&n(r,a,o);s.length;)s.shift()();if(o)for(u=0;u<o.length;u++)i=c(c.s=o[u]);return i};var r={},t={21:0};function c(n){if(r[n])return r[n].exports;var t=r[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,c),t.l=!0,t.exports}c.e=function(e){var n=t[e];if(0===n)return new Promise(function(e){e()});if(n)return n[2];var r=new Promise(function(r,c){n=t[e]=[r,c]});n[2]=r;var a=document.getElementsByTagName("head")[0],o=document.createElement("script");o.type="text/javascript",o.charset="utf-8",o.async=!0,o.timeout=12e4,c.nc&&o.setAttribute("nonce",c.nc),o.src=c.p+"static/js/"+e+"."+{0:"ca67e87d8c000a42e592",1:"8b052e0e6a9c6db6ca0f",2:"e6a396586260b6dc43a2",3:"3bad9aaf46ce9329fd19",4:"880c74c2473cd4493cad",5:"837a4a67f1fcf6ee6c6a",6:"7f56c2238fb7e4ee2ecd",7:"d5dc80a855f66a3208ff",8:"0b82703c6f3d2dd72354",9:"9b19245845e7fa49300a",10:"3ded61c33158be9eb6b4",11:"c61c0ebee350b7e0cba3",12:"e59d78e330bd5e2703c1",13:"22d831c1c0f31fd6552c",14:"65aae17758fd2d000d9a",15:"e3875ce9a863a129e085",16:"4679c2a57016dd90c37c",17:"4c01d3a82006113dd8bb",18:"3a72191a815e2121a587"}[e]+".js";var d=setTimeout(f,12e4);function f(){o.onerror=o.onload=null,clearTimeout(d);var n=t[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return o.onerror=o.onload=f,a.appendChild(o),r},c.m=e,c.c=r,c.d=function(e,n,r){c.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},c.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(n,"a",n),n},c.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},c.p="/",c.oe=function(e){throw console.error(e),e}}([]); !function(e){var n=window.webpackJsonp;window.webpackJsonp=function(r,a,o){for(var f,d,i,u=0,b=[];u<r.length;u++)d=r[u],t[d]&&b.push(t[d][0]),t[d]=0;for(f in a)Object.prototype.hasOwnProperty.call(a,f)&&(e[f]=a[f]);for(n&&n(r,a,o);b.length;)b.shift()();if(o)for(u=0;u<o.length;u++)i=c(c.s=o[u]);return i};var r={},t={21:0};function c(n){if(r[n])return r[n].exports;var t=r[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,c),t.l=!0,t.exports}c.e=function(e){var n=t[e];if(0===n)return new Promise(function(e){e()});if(n)return n[2];var r=new Promise(function(r,c){n=t[e]=[r,c]});n[2]=r;var a=document.getElementsByTagName("head")[0],o=document.createElement("script");o.type="text/javascript",o.charset="utf-8",o.async=!0,o.timeout=12e4,c.nc&&o.setAttribute("nonce",c.nc),o.src=c.p+"static/js/"+e+"."+{0:"ca67e87d8c000a42e592",1:"4917c0d3a0abb78cb20b",2:"39a763d3b4021d291917",3:"3bad9aaf46ce9329fd19",4:"880c74c2473cd4493cad",5:"837a4a67f1fcf6ee6c6a",6:"7f56c2238fb7e4ee2ecd",7:"d5dc80a855f66a3208ff",8:"0b82703c6f3d2dd72354",9:"9b19245845e7fa49300a",10:"3ded61c33158be9eb6b4",11:"c61c0ebee350b7e0cba3",12:"e59d78e330bd5e2703c1",13:"7884eb53460e4e42abf9",14:"ddb30a741298637bb87a",15:"ffe8a9ca84181f830332",16:"eefa40313135866bdcd8",17:"8f9664eb8becc2013aca",18:"7ac38643e0f275e0bc96"}[e]+".js";var f=setTimeout(d,12e4);function d(){o.onerror=o.onload=null,clearTimeout(f);var n=t[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return o.onerror=o.onload=d,a.appendChild(o),r},c.m=e,c.c=r,c.d=function(e,n,r){c.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},c.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(n,"a",n),n},c.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},c.p="/",c.oe=function(e){throw console.error(e),e}}([]);
//# sourceMappingURL=manifest.06f1bd4d8056b1bf28b5.js.map //# sourceMappingURL=manifest.5d37b4a8aa14c9a3bf1f.js.map