Browse Source

Merge pull request #88 from millionfor/dev-20190415

Dev 20190415
pull/2/head
millionfor 5 years ago committed by GitHub
parent
commit
c9022540a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 73
      escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/localParams.vue
  2. 12
      escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/jsPlumbHandle.js
  3. 4
      escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/util.js
  4. 12
      escheduler-ui/src/js/conf/home/pages/dag/_source/udp/udp.vue
  5. 42
      escheduler-ui/src/js/conf/home/pages/dag/_source/variable/variablesView.vue
  6. 40
      escheduler-ui/src/js/conf/home/pages/monitor/index.vue
  7. 0
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/list.vue
  8. 49
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/alert.vue
  9. 40
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/apiserver.vue
  10. 2
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
  11. 40
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/mysql.vue
  12. 40
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/rpcserver.vue
  13. 2
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
  14. 40
      escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/zookeeper.vue
  15. 8
      escheduler-ui/src/js/conf/home/pages/security/pages/servers/index.vue
  16. 2
      escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/list.vue
  17. 98
      escheduler-ui/src/js/conf/home/router/index.js
  18. 102
      escheduler-ui/src/js/module/components/secondaryMenu/_source/menu.js
  19. 1
      escheduler-ui/src/js/module/i18n/locale/zh_CN.js

73
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/localParams.vue

@ -11,32 +11,34 @@
:placeholder="$t('prop(required)')" :placeholder="$t('prop(required)')"
maxlength="64" maxlength="64"
@on-blur="_verifProp()" @on-blur="_verifProp()"
style="width: 164px;"> :style="inputStyle">
</x-input> </x-input>
<x-select <template v-if="hide">
style="width: 80px;" <x-select
@change="_handleDirectChanged" style="width: 80px;"
v-model="localParamsList[$index].direct" @change="_handleDirectChanged"
:disabled="isDetails || !hide"> v-model="localParamsList[$index].direct"
<x-option :disabled="isDetails">
v-for="city in directList" <x-option
:key="city.code" v-for="city in directList"
:value="city.code" :key="city.code"
:label="city.code"> :value="city.code"
</x-option> :label="city.code">
</x-select> </x-option>
<x-select </x-select>
style="width: 118px;" <x-select
@change="_handleTypeChanged" style="width: 118px;"
v-model="localParamsList[$index].type" @change="_handleTypeChanged"
:disabled="isDetails || !hide"> v-model="localParamsList[$index].type"
<x-option :disabled="isDetails">
v-for="city in typeList" <x-option
:key="city.code" v-for="city in typeList"
:value="city.code" :key="city.code"
:label="city.code"> :value="city.code"
</x-option> :label="city.code">
</x-select> </x-option>
</x-select>
</template>
<x-input <x-input
:disabled="isDetails" :disabled="isDetails"
type="text" type="text"
@ -44,7 +46,7 @@
:placeholder="$t('value(optional)')" :placeholder="$t('value(optional)')"
maxlength="64" maxlength="64"
@on-blur="_handleValue()" @on-blur="_handleValue()"
style="width: 150px;position: relative;margin-bottom: -2px;"> :style="inputStyle">
</x-input> </x-input>
<span class="lt-add"> <span class="lt-add">
<a href="javascript:" style="color:red;" @click="!isDetails && _removeUdp($index)" > <a href="javascript:" style="color:red;" @click="!isDetails && _removeUdp($index)" >
@ -57,7 +59,7 @@
</a> </a>
</span> </span>
</div> </div>
<span class="add" v-if="!localParamsList.length"> <span class="add-dp" v-if="!localParamsList.length">
<a href="javascript:" @click="!isDetails && _addUdp()" > <a href="javascript:" @click="!isDetails && _addUdp()" >
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('Add')">&#xe636;</i> <i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('Add')">&#xe636;</i>
</a> </a>
@ -173,6 +175,11 @@
created () { created () {
this.localParamsList = this.udpList this.localParamsList = this.udpList
}, },
computed: {
inputStyle () {
return `width:${this.hide ? 160 : 262}px`
}
},
mounted () { mounted () {
}, },
components: { } components: { }
@ -197,6 +204,7 @@
} }
.add { .add {
a { a {
color: #000;
.iconfont { .iconfont {
font-size: 18px; font-size: 18px;
vertical-align: middle; vertical-align: middle;
@ -205,5 +213,16 @@
} }
} }
} }
.add-dp{
a {
color: #0097e0;
.iconfont {
font-size: 18px;
vertical-align: middle;
display: inline-block;
margin-top: 2px;
}
}
}
} }
</style> </style>

12
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/jsPlumbHandle.js

@ -668,26 +668,21 @@ JSP.prototype.saveStore = function () {
/** /**
* Event processing * Event processing
*/ */
JSP.prototype.handleEvent = function () { JSP.prototype.handleEvent = function () {
this.JspInstance.bind('beforeDrop', function (info) { this.JspInstance.bind('beforeDrop', function (info) {
let sourceId = info['sourceId']// 出 let sourceId = info['sourceId']// 出
let targetId = info['targetId']// 入 let targetId = info['targetId']// 入
/** /**
* Recursive search for nodes * Recursive search for nodes
*/ */
let recursiveVal let recursiveVal
const recursiveTargetarr = (arr, targetId) => { const recursiveTargetarr = (arr, targetId) => {
for (var i in arr) { for (let i in arr) {
if (arr[i] === targetId) { if (arr[i] === targetId) {
recursiveVal = targetId recursiveVal = targetId
} else { } else {
let recTargetarrArr = rtTargetarrArr(arr[i]) recursiveTargetarr(rtTargetarrArr(arr[i]), targetId)
if (recTargetarrArr.length) {
recursiveTargetarr(recTargetarrArr, targetId)
} else {
return recursiveTargetarr(targetId)
}
} }
} }
return recursiveVal return recursiveVal
@ -700,7 +695,6 @@ JSP.prototype.handleEvent = function () {
// Recursive form to find if the target Targetarr has a sourceId // Recursive form to find if the target Targetarr has a sourceId
if (recursiveTargetarr(rtTargetarrArr(sourceId), targetId)) { if (recursiveTargetarr(rtTargetarrArr(sourceId), targetId)) {
// setRecursiveVal(null)
return false return false
} }

4
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/util.js

@ -24,8 +24,8 @@ import store from '@/conf/home/store'
* Node, to array * Node, to array
*/ */
const rtTargetarrArr = (id) => { const rtTargetarrArr = (id) => {
let a = $(`#${id}`).attr('data-targetarr') let ids = $(`#${id}`).attr('data-targetarr')
return a ? a.split(',') : [] return ids ? ids.split(',') : []
} }
/** /**

12
escheduler-ui/src/js/conf/home/pages/dag/_source/udp/udp.vue

@ -138,8 +138,8 @@
<style lang="scss" rel="stylesheet/scss"> <style lang="scss" rel="stylesheet/scss">
.udp-model { .udp-model {
width: 616px; width: 624px;
min-height: 326px; min-height: 420px;
background: #fff; background: #fff;
border-radius: 3px; border-radius: 3px;
padding:20px 0 ; padding:20px 0 ;
@ -182,6 +182,14 @@
} }
.content { .content {
padding-bottom: 50px; padding-bottom: 50px;
.user-def-params-model {
.add {
a {
color: #0097e0;
}
}
}
} }
} }
</style> </style>

42
escheduler-ui/src/js/conf/home/pages/dag/_source/variable/variablesView.vue

@ -1,9 +1,19 @@
<template> <template>
<div class="variable-model"> <div class="variable-model">
<template v-if="list">
<div class="list"> <div class="list">
<div class="name"><i class="fa fa-code"></i><b style="padding-top: 3px;display: inline-block">{{$t('Global parameters')}}</b></div> <div class="name"><i class="fa fa-code"></i><b style="padding-top: 3px;display: inline-block">{{$t('Global parameters')}}</b></div>
<div class="var-cont"> <div class="var-cont">
<x-button size="xsmall" type="ghost" v-for="(item,$index) in list.globalParams" @click="_copy('gbudp-' + $index)" :data-clipboard-text="item.prop + ' = ' +item.value" :class="'gbudp-' + $index"><b style="color: #2A455B;">{{item.prop}}</b> = {{item.value}}</x-button> <template v-for="(item,$index) in list.globalParams">
<x-button
size="xsmall"
type="ghost"
@click="_copy('gbudp-' + $index)"
:data-clipboard-text="item.prop + ' = ' +item.value"
:class="'gbudp-' + $index">
<b style="color: #2A455B;">{{item.prop}}</b> = {{item.value}}
</x-button>
</template>
</div> </div>
</div> </div>
<div class="list" style="height: 30px;"> <div class="list" style="height: 30px;">
@ -14,15 +24,25 @@
</div> </div>
<div class="list list-t" v-for="(item,key,$index) in list.localParams"> <div class="list list-t" v-for="(item,key,$index) in list.localParams">
<div class="task-name">Task({{$index}}){{key}}</div> <div class="task-name">Task({{$index}}){{key}}</div>
<div class="var-cont" v-if="item.length"> <div class="var-cont" v-if="item.localParamsList.length">
<template v-for="(el,index) in item"> <template v-for="(el,index) in item.localParamsList">
<x-button size="xsmall" type="ghost" @click="_copy('copy-part-' + index)" :data-clipboard-text="_rtClipboard(el)" :class="'copy-part-' + index"> <x-button size="xsmall" type="ghost" @click="_copy('copy-part-' + index)" :data-clipboard-text="_rtClipboard(el,item.taskType)" :class="'copy-part-' + index">
<span v-for="(e,k,i) in el"><b style="color: #2A455B;">{{k}}</b> = {{e}} </span> <span v-for="(e,k,i) in el">
<template v-if="item.taskType === 'SQL' || item.taskType === 'PROCEDURE'">
<template v-if="(k !== 'direct' && k !== 'type')">
<b style="color: #2A455B;">{{k}}</b> = {{e}}
</template>
</template>
<template v-else>
<b style="color: #2A455B;">{{k}}</b> = {{e}}
</template>
</span>
</x-button> </x-button>
</template> </template>
</div> </div>
</div> </div>
</div> </template>
</div>
</template> </template>
<script> <script>
import i18n from '@/module/i18n' import i18n from '@/module/i18n'
@ -71,10 +91,16 @@
/** /**
* Copyed text processing * Copyed text processing
*/ */
_rtClipboard (el) { _rtClipboard (el, taskType) {
let arr = [] let arr = []
Object.keys(el).forEach((key) => { Object.keys(el).forEach((key) => {
arr.push(`${key}=${el[key]}`) if (taskType === 'SQL' || taskType === 'PROCEDURE') {
if (key !== 'direct' && key !== 'type') {
arr.push(`${key}=${el[key]}`)
}
} else {
arr.push(`${key}=${el[key]}`)
}
}) })
return arr.join(' ') return arr.join(' ')
} }

40
escheduler-ui/src/js/conf/home/pages/monitor/index.vue

@ -1,40 +1,14 @@
<template> <template>
<div class="index-model"> <div class="main-layout-box">
index <m-secondary-menu :type="'monitor'"></m-secondary-menu>
<router-view></router-view>
</div> </div>
</template> </template>
<script> <script>
import mSecondaryMenu from '@/module/components/secondaryMenu/secondaryMenu'
export default { export default {
name: 'monitor-index', name: 'monitor-index',
data () { components: { mSecondaryMenu }
return {}
},
props: {},
methods: {},
watch: {},
beforeCreate () {
},
created () {
},
beforeMount () {
},
mounted () {
},
beforeUpdate () {
},
updated () {
},
beforeDestroy () {
},
destroyed () {
},
computed: {},
components: {}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.index-model {
} }
</style> </script>

0
escheduler-ui/src/js/conf/home/pages/security/pages/servers/_source/list.vue → escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/_source/list.vue

49
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/alert.vue

@ -0,0 +1,49 @@
<template>
<m-list-construction title="Alert服务">
<template slot="content">
<template v-if="masterList.length">
<m-list :list="masterList"></m-list>
</template>
<template v-if="!masterList.length">
<m-no-data></m-no-data>
</template>
<m-spin :is-spin="isLoading" ></m-spin>
</template>
</m-list-construction>
</template>
<script>
import { mapActions } from 'vuex'
import mList from './_source/list'
import mSpin from '@/module/components/spin/spin'
import mNoData from '@/module/components/noData/noData'
import mListConstruction from '@/module/components/listConstruction/listConstruction'
export default {
name: 'servers-alert',
data () {
return {
pageSize: 10,
pageNo: 1,
totalPage: null,
searchVal: '',
isLoading: false,
masterList: []
}
},
props: {},
methods: {
...mapActions('security', ['getProcessMasterList'])
},
watch: {},
created () {
this.isLoading = true
this.getProcessMasterList().then(res => {
this.masterList = res.data
this.isLoading = false
})
},
mounted () {
},
components: { mList, mListConstruction, mSpin, mNoData }
}
</script>

40
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/apiserver.vue

@ -0,0 +1,40 @@
<template>
<div class="apiserver-model">
apiserver
</div>
</template>
<script>
export default {
name: 'apiserver',
data () {
return {}
},
props: {},
methods: {},
watch: {},
beforeCreate () {
},
created () {
},
beforeMount () {
},
mounted () {
},
beforeUpdate () {
},
updated () {
},
beforeDestroy () {
},
destroyed () {
},
computed: {},
components: {}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.apiserver-model {
}
</style>

2
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/master/index.vue → escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue

@ -13,7 +13,7 @@
</template> </template>
<script> <script>
import { mapActions } from 'vuex' import { mapActions } from 'vuex'
import mList from '../../_source/list' import mList from './_source/list'
import mSpin from '@/module/components/spin/spin' import mSpin from '@/module/components/spin/spin'
import mNoData from '@/module/components/noData/noData' import mNoData from '@/module/components/noData/noData'
import mListConstruction from '@/module/components/listConstruction/listConstruction' import mListConstruction from '@/module/components/listConstruction/listConstruction'

40
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/mysql.vue

@ -0,0 +1,40 @@
<template>
<div class="mysql-model">
mysql
</div>
</template>
<script>
export default {
name: 'mysql',
data () {
return {}
},
props: {},
methods: {},
watch: {},
beforeCreate () {
},
created () {
},
beforeMount () {
},
mounted () {
},
beforeUpdate () {
},
updated () {
},
beforeDestroy () {
},
destroyed () {
},
computed: {},
components: {}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.mysql-model {
}
</style>

40
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/rpcserver.vue

@ -0,0 +1,40 @@
<template>
<div class="rpcserver-model">
rpcserver
</div>
</template>
<script>
export default {
name: 'rpcserver',
data () {
return {}
},
props: {},
methods: {},
watch: {},
beforeCreate () {
},
created () {
},
beforeMount () {
},
mounted () {
},
beforeUpdate () {
},
updated () {
},
beforeDestroy () {
},
destroyed () {
},
computed: {},
components: {}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.rpcserver-model {
}
</style>

2
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/worker/index.vue → escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue

@ -13,7 +13,7 @@
</template> </template>
<script> <script>
import { mapActions } from 'vuex' import { mapActions } from 'vuex'
import mList from '../../_source/list' import mList from './_source/list'
import mSpin from '@/module/components/spin/spin' import mSpin from '@/module/components/spin/spin'
import mNoData from '@/module/components/noData/noData' import mNoData from '@/module/components/noData/noData'
import mListConstruction from '@/module/components/listConstruction/listConstruction' import mListConstruction from '@/module/components/listConstruction/listConstruction'

40
escheduler-ui/src/js/conf/home/pages/monitor/pages/servers/zookeeper.vue

@ -0,0 +1,40 @@
<template>
<div class="zookeeper-model">
zookeeper
</div>
</template>
<script>
export default {
name: 'zookeeper',
data () {
return {}
},
props: {},
methods: {},
watch: {},
beforeCreate () {
},
created () {
},
beforeMount () {
},
mounted () {
},
beforeUpdate () {
},
updated () {
},
beforeDestroy () {
},
destroyed () {
},
computed: {},
components: {}
}
</script>
<style lang="scss" rel="stylesheet/scss">
.zookeeper-model {
}
</style>

8
escheduler-ui/src/js/conf/home/pages/security/pages/servers/index.vue

@ -1,8 +0,0 @@
<template>
<router-view></router-view>
</template>
<script>
export default {
name: 'servers-index'
}
</script>

2
escheduler-ui/src/js/conf/home/pages/user/pages/token/_source/list.vue

@ -24,7 +24,7 @@
<th> <th>
<span>更新时间</span> <span>更新时间</span>
</th> </th>
<th width="120"> <th width="70">
<span>{{$t('Operation')}}</span> <span>{{$t('Operation')}}</span>
</th> </th>
</tr> </tr>

98
escheduler-ui/src/js/conf/home/router/index.js

@ -317,35 +317,6 @@ const router = new Router({
meta: { meta: {
title: `${i18n.$t('Queue manage')}` title: `${i18n.$t('Queue manage')}`
} }
},
{
path: '/security/servers',
name: 'servers-manage',
component: resolve => require(['../pages/security/pages/servers/index'], resolve),
meta: {
title: `${i18n.$t('Servers manage')}`
},
redirect: {
name: 'servers-master'
},
children: [
{
path: '/security/servers/master',
name: 'servers-master',
component: resolve => require(['../pages/security/pages/servers/pages/master/index'], resolve),
meta: {
title: `${i18n.$t('Service-Master')}`
}
},
{
path: '/security/servers/worker',
name: 'servers-worker',
component: resolve => require(['../pages/security/pages/servers/pages/worker/index'], resolve),
meta: {
title: `${i18n.$t('Service-Worker')}`
}
}
]
} }
] ]
}, },
@ -385,6 +356,75 @@ const router = new Router({
} }
} }
] ]
},
{
path: '/monitor',
name: 'monitor',
component: resolve => require(['../pages/monitor/index'], resolve),
meta: {
title: `monitor`
},
redirect: {
name: 'servers-master'
},
children: [
{
path: '/monitor/servers/master',
name: 'servers-master',
component: resolve => require(['../pages/monitor/pages/servers/master'], resolve),
meta: {
title: `${i18n.$t('Service-Master')}`
}
},
{
path: '/monitor/servers/worker',
name: 'servers-worker',
component: resolve => require(['../pages/monitor/pages/servers/worker'], resolve),
meta: {
title: `${i18n.$t('Service-Worker')}`
}
},
{
path: '/monitor/servers/alert',
name: 'servers-alert',
component: resolve => require(['../pages/monitor/pages/servers/alert'], resolve),
meta: {
title: `alert`
}
},
{
path: '/monitor/servers/rpcserver',
name: 'servers-rpcserver',
component: resolve => require(['../pages/monitor/pages/servers/rpcserver'], resolve),
meta: {
title: `rpcserver`
}
},
{
path: '/monitor/servers/zookeeper',
name: 'servers-zookeeper',
component: resolve => require(['../pages/monitor/pages/servers/zookeeper'], resolve),
meta: {
title: `zookeeper`
}
},
{
path: '/monitor/servers/apiserver',
name: 'servers-apiserver',
component: resolve => require(['../pages/monitor/pages/servers/apiserver'], resolve),
meta: {
title: `apiserver`
}
},
{
path: '/monitor/servers/mysql',
name: 'servers-mysql',
component: resolve => require(['../pages/monitor/pages/servers/mysql'], resolve),
meta: {
title: `mysql`
}
}
]
} }
] ]
}) })

102
escheduler-ui/src/js/module/components/secondaryMenu/_source/menu.js

@ -23,7 +23,7 @@ let menu = {
projects: [ projects: [
{ {
name: `${i18n.$t('Project Home')}`, name: `${i18n.$t('Project Home')}`,
id: 1, id: 0,
path: 'projects-index', path: 'projects-index',
isOpen: true, isOpen: true,
disabled: true, disabled: true,
@ -32,7 +32,7 @@ let menu = {
}, },
{ {
name: `${i18n.$t('Process')}`, name: `${i18n.$t('Process')}`,
id: 2, id: 1,
path: '', path: '',
isOpen: true, isOpen: true,
disabled: true, disabled: true,
@ -41,31 +41,31 @@ let menu = {
{ {
name: `${i18n.$t('Process definition')}`, name: `${i18n.$t('Process definition')}`,
path: 'definition', path: 'definition',
id: 1, id: 0,
disabled: true disabled: true
}, },
{ {
name: `${i18n.$t('Process Instance')}`, name: `${i18n.$t('Process Instance')}`,
path: 'instance', path: 'instance',
id: 2, id: 1,
disabled: true disabled: true
}, },
{ {
name: `${i18n.$t('Task Instance')}`, name: `${i18n.$t('Task Instance')}`,
path: 'task-instance', path: 'task-instance',
id: 3, id: 2,
disabled: true disabled: true
}, },
{ {
name: `${i18n.$t('Task record')}`, name: `${i18n.$t('Task record')}`,
path: 'task-record', path: 'task-record',
id: 4, id: 3,
disabled: config.recordSwitch disabled: config.recordSwitch
}, },
{ {
name: `${i18n.$t('History task record')}`, name: `${i18n.$t('History task record')}`,
path: 'history-task-record', path: 'history-task-record',
id: 5, id: 4,
disabled: config.recordSwitch disabled: config.recordSwitch
} }
] ]
@ -75,7 +75,7 @@ let menu = {
security: [ security: [
{ {
name: `${i18n.$t('Tenant Manage')}`, name: `${i18n.$t('Tenant Manage')}`,
id: 1, id: 0,
path: 'tenement-manage', path: 'tenement-manage',
isOpen: true, isOpen: true,
disabled: true, disabled: true,
@ -93,7 +93,7 @@ let menu = {
}, },
{ {
name: `${i18n.$t('Warning group manage')}`, name: `${i18n.$t('Warning group manage')}`,
id: 1, id: 2,
path: 'warning-groups-manage', path: 'warning-groups-manage',
isOpen: true, isOpen: true,
disabled: true, disabled: true,
@ -102,40 +102,18 @@ let menu = {
}, },
{ {
name: `${i18n.$t('Queue manage')}`, name: `${i18n.$t('Queue manage')}`,
id: 1, id: 3,
path: 'queue-manage', path: 'queue-manage',
isOpen: true, isOpen: true,
disabled: true, disabled: true,
icon: 'fa-recycle', icon: 'fa-recycle',
children: [] children: []
},
{
name: `${i18n.$t('Servers manage')}`,
id: 1,
path: '',
isOpen: true,
disabled: true,
icon: 'fa-server',
children: [
{
name: 'master',
path: 'servers-master',
id: 1,
disabled: true
},
{
name: 'worker',
path: 'servers-worker',
id: 2,
disabled: true
}
]
} }
], ],
resource: [ resource: [
{ {
name: `${i18n.$t('File Manage')}`, name: `${i18n.$t('File Manage')}`,
id: 1, id: 0,
path: 'file', path: 'file',
isOpen: true, isOpen: true,
icon: 'fa-files-o', icon: 'fa-files-o',
@ -153,13 +131,13 @@ let menu = {
{ {
name: `${i18n.$t('Resource manage')}`, name: `${i18n.$t('Resource manage')}`,
path: 'resource-udf-resource', path: 'resource-udf-resource',
id: 1, id: 0,
disabled: true disabled: true
}, },
{ {
name: `${i18n.$t('Function manage')}`, name: `${i18n.$t('Function manage')}`,
path: 'resource-udf-function', path: 'resource-udf-function',
id: 2, id: 1,
disabled: true disabled: true
} }
] ]
@ -193,6 +171,60 @@ let menu = {
children: [], children: [],
disabled: !Permissions.getAuth() disabled: !Permissions.getAuth()
} }
],
monitor: [
{
name: `${i18n.$t('Servers manage')}`,
id: 0,
path: '',
isOpen: true,
disabled: true,
icon: 'fa-server',
children: [
{
name: 'Master',
path: 'servers-master',
id: 0,
disabled: true
},
{
name: 'Worker',
path: 'servers-worker',
id: 1,
disabled: true
},
{
name: 'Alert',
path: 'servers-alert',
id: 2,
disabled: true
},
{
name: 'RpcServer',
path: 'servers-rpcserver',
id: 3,
disabled: true
},
{
name: 'Zookeeper',
path: 'servers-zookeeper',
id: 4,
disabled: true
},
{
name: 'ApiServer',
path: 'servers-apiserver',
id: 5,
disabled: true
},
{
name: 'Mysql',
path: 'servers-mysql',
id: 6,
disabled: true
}
]
}
] ]
} }

1
escheduler-ui/src/js/module/i18n/locale/zh_CN.js

@ -295,6 +295,7 @@ export default {
'Waiting for dependence': '等待依赖', 'Waiting for dependence': '等待依赖',
'Start': '运行', 'Start': '运行',
'Copy': '复制节点', 'Copy': '复制节点',
'Delete': '删除',
'Please enter keyword': '请输入关键词', 'Please enter keyword': '请输入关键词',
'File Upload': '文件上传', 'File Upload': '文件上传',
'Drag the file into the current upload window': '请将文件拖拽到当前上传窗口内', 'Drag the file into the current upload window': '请将文件拖拽到当前上传窗口内',

Loading…
Cancel
Save