mirror of
https://gitee.com/dolphinscheduler/DolphinScheduler.git
synced 2024-12-03 20:58:11 +08:00
commit
f14f8866b5
@ -32,31 +32,31 @@ const toolOper = (dagThis) => {
|
||||
code: 'pointer',
|
||||
icon: '',
|
||||
disable: disabled,
|
||||
desc: `${i18n.$t('拖动节点和选中项')}`
|
||||
desc: `${i18n.$t('Drag Nodes and Selected Items')}`
|
||||
},
|
||||
{
|
||||
code: 'line',
|
||||
icon: '',
|
||||
disable: disabled,
|
||||
desc: `${i18n.$t('选择线条连接')}`
|
||||
desc: `${i18n.$t('Select Line Connection')}`
|
||||
},
|
||||
{
|
||||
code: 'remove',
|
||||
icon: '',
|
||||
disable: disabled,
|
||||
desc: `${i18n.$t('删除选中的线或节点')}`
|
||||
desc: `${i18n.$t('Delete selected lines or nodes')}`
|
||||
},
|
||||
{
|
||||
code: 'download',
|
||||
icon: '',
|
||||
disable: !!dagThis.type,
|
||||
desc: `${i18n.$t('下载')}`
|
||||
desc: `${i18n.$t('Download')}`
|
||||
},
|
||||
{
|
||||
code: 'screen',
|
||||
icon: '',
|
||||
disable: disabled,
|
||||
desc: `${i18n.$t('全屏')}`
|
||||
desc: `${i18n.$t('Full Screen')}`
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -70,17 +70,17 @@ const toolOper = (dagThis) => {
|
||||
let publishStatus = [
|
||||
{
|
||||
id: 0,
|
||||
desc: `${i18n.$t('未发布')}`,
|
||||
desc: `${i18n.$t('Unpublished')}`,
|
||||
code: 'NOT_RELEASE'
|
||||
},
|
||||
{
|
||||
id: 1,
|
||||
desc: `${i18n.$t('上线')}`,
|
||||
desc: `${i18n.$t('online')}`,
|
||||
code: 'ONLINE'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
desc: `${i18n.$t('下线')}`,
|
||||
desc: `${i18n.$t('offline')}`,
|
||||
code: 'OFFLINE'
|
||||
}
|
||||
]
|
||||
@ -92,47 +92,47 @@ let publishStatus = [
|
||||
*/
|
||||
let runningType = [
|
||||
{
|
||||
desc: `${i18n.$t('启动工作流')}`,
|
||||
desc: `${i18n.$t('Start Process')}`,
|
||||
code: 'START_PROCESS'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('从当前节点开始执行')}`,
|
||||
desc: `${i18n.$t('Execute from the current node')}`,
|
||||
code: 'START_CURRENT_TASK_PROCESS'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('恢复被容错的工作流')}`,
|
||||
desc: `${i18n.$t('Recover tolerance fault process')}`,
|
||||
code: 'RECOVER_TOLERANCE_FAULT_PROCESS'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('恢复暂停流程')}`,
|
||||
desc: `${i18n.$t('Resume the suspension process')}`,
|
||||
code: 'RECOVER_SUSPENDED_PROCESS'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('从失败节点开始执行')}`,
|
||||
desc: `${i18n.$t('Execute from the failed nodes')}`,
|
||||
code: 'START_FAILURE_TASK_PROCESS'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('补数')}`,
|
||||
desc: `${i18n.$t('Complement Data')}`,
|
||||
code: 'COMPLEMENT_DATA'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('调度执行')}`,
|
||||
desc: `${i18n.$t('Scheduling execution')}`,
|
||||
code: 'SCHEDULER'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('重跑')}`,
|
||||
desc: `${i18n.$t('Rerun')}`,
|
||||
code: 'REPEAT_RUNNING'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('暂停')}`,
|
||||
desc: `${i18n.$t('Pause')}`,
|
||||
code: 'PAUSE'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('停止')}`,
|
||||
desc: `${i18n.$t('Stop')}`,
|
||||
code: 'STOP'
|
||||
},
|
||||
{
|
||||
desc: `${i18n.$t('恢复等待线程')}`,
|
||||
desc: `${i18n.$t('Recovery waiting thread')}`,
|
||||
code: 'RECOVER_WAITTING_THREAD'
|
||||
}
|
||||
]
|
||||
@ -149,63 +149,63 @@ let runningType = [
|
||||
let tasksState = {
|
||||
'SUBMITTED_SUCCESS': {
|
||||
id: 0,
|
||||
desc: `${i18n.$t('提交成功')}`,
|
||||
desc: `${i18n.$t('Submitted successfully')}`,
|
||||
color: '#A9A9A9',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'RUNNING_EXEUTION': {
|
||||
id: 1,
|
||||
desc: `${i18n.$t('正在执行')}`,
|
||||
desc: `${i18n.$t('Executing')}`,
|
||||
color: '#0097e0',
|
||||
icoUnicode: '',
|
||||
isSpin: true
|
||||
},
|
||||
'READY_PAUSE': {
|
||||
id: 2,
|
||||
desc: `${i18n.$t('准备暂停')}`,
|
||||
desc: `${i18n.$t('Ready to pause')}`,
|
||||
color: '#07b1a3',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'PAUSE': {
|
||||
id: 3,
|
||||
desc: `${i18n.$t('暂停')}`,
|
||||
desc: `${i18n.$t('Pause')}`,
|
||||
color: '#057c72',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'READY_STOP': {
|
||||
id: 4,
|
||||
desc: `${i18n.$t('准备停止')}`,
|
||||
desc: `${i18n.$t('Ready to stop')}`,
|
||||
color: '#FE0402',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'STOP': {
|
||||
id: 5,
|
||||
desc: `${i18n.$t('停止')}`,
|
||||
desc: `${i18n.$t('Stop')}`,
|
||||
color: '#e90101',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'FAILURE': {
|
||||
id: 6,
|
||||
desc: `${i18n.$t('失败')}`,
|
||||
desc: `${i18n.$t('failed')}`,
|
||||
color: '#000000',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'SUCCESS': {
|
||||
id: 7,
|
||||
desc: `${i18n.$t('成功')}`,
|
||||
desc: `${i18n.$t('success')}`,
|
||||
color: '#33cc00',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'NEED_FAULT_TOLERANCE': {
|
||||
id: 8,
|
||||
desc: `${i18n.$t('需要容错')}`,
|
||||
desc: `${i18n.$t('Need fault tolerance')}`,
|
||||
color: '#FF8C00',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
@ -219,14 +219,14 @@ let tasksState = {
|
||||
},
|
||||
'WAITTING_THREAD': {
|
||||
id: 10,
|
||||
desc: `${i18n.$t('等待线程')}`,
|
||||
desc: `${i18n.$t('Waiting for thread')}`,
|
||||
color: '#912eed',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
},
|
||||
'WAITTING_DEPEND': {
|
||||
id: 11,
|
||||
desc: `${i18n.$t('等待依赖')}`,
|
||||
desc: `${i18n.$t('Waiting for dependence')}`,
|
||||
color: '#5101be',
|
||||
icoUnicode: '',
|
||||
isSpin: false
|
||||
|
@ -386,10 +386,11 @@ svg path:hover {
|
||||
.name-p {
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
bottom: -24px;
|
||||
top: 58px;
|
||||
width: 200px;
|
||||
text-align: center;
|
||||
margin-left: -100px;
|
||||
word-break:break-all;
|
||||
}
|
||||
.ban-p {
|
||||
position: absolute;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="clearfix dag-model" >
|
||||
<div class="toolbar">
|
||||
<div class="title"><span>{{$t('工具栏')}}</span></div>
|
||||
<div class="title"><span>{{$t('Toolbar')}}</span></div>
|
||||
<div class="toolbar-btn">
|
||||
<div class="bar-box roundedRect jtk-draggable jtk-droppable jtk-endpoint-anchor jtk-connected"
|
||||
:class="v === dagBarId ? 'active' : ''"
|
||||
@ -20,7 +20,7 @@
|
||||
<x-button
|
||||
style="vertical-align: middle;"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('查看变量')"
|
||||
:title="$t('View variables')"
|
||||
data-container="body"
|
||||
type="primary"
|
||||
size="xsmall"
|
||||
@ -42,7 +42,7 @@
|
||||
</div>
|
||||
<x-button
|
||||
data-toggle="tooltip"
|
||||
:title="$t('刷新DAG状态')"
|
||||
:title="$t('Refresh DAG status')"
|
||||
data-container="body"
|
||||
style="vertical-align: middle;"
|
||||
icon="fa fa-refresh"
|
||||
@ -59,7 +59,7 @@
|
||||
size="xsmall"
|
||||
icon="fa fa-reply"
|
||||
@click="_rtNodesDag" >
|
||||
{{$t('返回上一节点')}}
|
||||
{{$t('Return_1')}}
|
||||
</x-button>
|
||||
<x-button
|
||||
style="vertical-align: middle;"
|
||||
@ -70,7 +70,7 @@
|
||||
@click="_saveChart"
|
||||
icon="fa fa-save"
|
||||
:disabled="isDetails">
|
||||
{{spinnerLoading ? 'Loading...' : $t('保存')}}
|
||||
{{spinnerLoading ? 'Loading...' : $t('Save')}}
|
||||
</x-button>
|
||||
</div>
|
||||
</div>
|
||||
@ -152,7 +152,7 @@
|
||||
let idArr = allNodesId()
|
||||
const titleTpl = (item, desc) => {
|
||||
let $item = _.filter(taskList, v => v.name === item.name)[0]
|
||||
return `<div style="text-align: left">${i18n.$t('名称')}:${$item.name}</br>${i18n.$t('状态')}:${desc}</br>${i18n.$t('类型')}:${$item.taskType}</br>${i18n.$t('host')}:${$item.host || '-'}</br>${i18n.$t('重试次数')}:${$item.retryTimes}</br>${i18n.$t('提交时间')}:${formatDate($item.submitTime)}</br>${i18n.$t('开始时间')}:${formatDate($item.startTime)}</br>${i18n.$t('结束时间')}:${$item.endTime ? formatDate($item.endTime) : '-'}</br></div>`
|
||||
return `<div style="text-align: left">${i18n.$t('Name')}:${$item.name}</br>${i18n.$t('State')}:${desc}</br>${i18n.$t('type')}:${$item.taskType}</br>${i18n.$t('host')}:${$item.host || '-'}</br>${i18n.$t('Retry Count')}:${$item.retryTimes}</br>${i18n.$t('Submit Time')}:${formatDate($item.submitTime)}</br>${i18n.$t('Start Time')}:${formatDate($item.startTime)}</br>${i18n.$t('End Time')}:${$item.endTime ? formatDate($item.endTime) : '-'}</br></div>`
|
||||
}
|
||||
data.forEach(v1 => {
|
||||
idArr.forEach(v2 => {
|
||||
@ -232,7 +232,7 @@
|
||||
Dag.saveStore().then(res => {
|
||||
if (this.urlParam.id) {
|
||||
/**
|
||||
* 编辑
|
||||
* Edit
|
||||
* @param saveInstanceEditDAGChart => Process instance editing
|
||||
* @param saveEditDAGChart => Process definition editing
|
||||
*/
|
||||
@ -300,7 +300,7 @@
|
||||
_saveChart () {
|
||||
// Verify node
|
||||
if (!this.tasks.length) {
|
||||
this.$message.warning(`${i18n.$t('未创建节点保存失败')}`)
|
||||
this.$message.warning(`${i18n.$t('Failed to create node to save')}`)
|
||||
return
|
||||
}
|
||||
|
||||
@ -350,7 +350,7 @@
|
||||
this._getTaskState(false).then(res => {
|
||||
setTimeout(() => {
|
||||
this.isRefresh = false
|
||||
this.$message.success(`${i18n.$t('刷新状态成功')}`)
|
||||
this.$message.success(`${i18n.$t('Refresh status succeeded')}`)
|
||||
}, 2200)
|
||||
})
|
||||
},
|
||||
|
@ -12,7 +12,7 @@
|
||||
slot-scope="{ selectedModel }"
|
||||
maxlength="4"
|
||||
@on-blur="_onBlur"
|
||||
:placeholder="$t('请选择')"
|
||||
:placeholder="$t('Please choose')"
|
||||
:value="selectedModel === null ? '0' : selectedModel.value"
|
||||
style="width: 100%;"
|
||||
@on-click-icon.stop="_ckIcon">
|
||||
@ -81,7 +81,7 @@
|
||||
if (val === '0') return true
|
||||
|
||||
if (!(/(^[0-9]*[1-9][0-9]*$)/.test(val))) {
|
||||
this.$message.warning(`${i18n.$t('请输入正整数')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a positive integer')}`)
|
||||
// init
|
||||
this._ckIcon()
|
||||
return false
|
||||
|
@ -2,7 +2,7 @@
|
||||
<div class="timeout-alarm-model">
|
||||
<div class="clearfix list">
|
||||
<div class="text-box">
|
||||
<span>{{$t('任务超时告警')}}</span>
|
||||
<span>{{$t('Timeout alarm')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
@ -14,14 +14,14 @@
|
||||
</div>
|
||||
<div class="clearfix list" v-if="enable">
|
||||
<div class="text-box">
|
||||
<span>{{$t('超时策略')}}</span>
|
||||
<span>{{$t('Timeout strategy')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
<div style="padding-top: 6px;">
|
||||
<x-checkbox-group v-model="strategy">
|
||||
<x-checkbox label="WARN" :disabled="isDetails">{{$t('超时告警')}}</x-checkbox>
|
||||
<x-checkbox label="FAILED" :disabled="isDetails">{{$t('超时失败')}}</x-checkbox>
|
||||
<x-checkbox label="WARN" :disabled="isDetails">{{$t('Timeout alarm')}}</x-checkbox>
|
||||
<x-checkbox label="FAILED" :disabled="isDetails">{{$t('Timeout failure')}}</x-checkbox>
|
||||
</x-checkbox-group>
|
||||
</div>
|
||||
</label>
|
||||
@ -29,12 +29,12 @@
|
||||
</div>
|
||||
<div class="clearfix list" v-if="enable">
|
||||
<div class="text-box">
|
||||
<span>{{$t('超时时长')}}</span>
|
||||
<span>{{$t('Timeout period')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
<x-input v-model="interval" style="width: 128px;" :disabled="isDetails">
|
||||
<span slot="append">{{$t('分')}}</span>
|
||||
<span slot="append">{{$t('Minute')}}</span>
|
||||
</x-input>
|
||||
</label>
|
||||
</div>
|
||||
@ -71,12 +71,12 @@
|
||||
_verification () {
|
||||
// Verification timeout policy
|
||||
if (this.enable && !this.strategy.length) {
|
||||
this.$message.warning(`${this.$t('超时策略必须选一个')}`)
|
||||
this.$message.warning(`${this.$t('Timeout strategy must be selected')}`)
|
||||
return false
|
||||
}
|
||||
// Verify timeout duration Non 0 positive integer
|
||||
if (this.enable && !parseInt(this.interval) && !_.isInteger(this.interval)) {
|
||||
this.$message.warning(`${this.$t('超时时长必须为正整数')}`)
|
||||
this.$message.warning(`${this.$t('Timeout must be a positive integer')}`)
|
||||
return false
|
||||
}
|
||||
this.$emit('on-timeout', {
|
||||
|
@ -1,14 +1,14 @@
|
||||
<template>
|
||||
<div class="form-model-model" v-clickoutside="_handleClose">
|
||||
<div class="title-box">
|
||||
<span class="name">{{$t('当前节点设置')}}</span>
|
||||
<span class="name">{{$t('Current node settings')}}</span>
|
||||
<span class="go-subtask">
|
||||
<!-- Component can't pop up box to do component processing -->
|
||||
<m-log :item="backfillItem">
|
||||
<template slot="history"><a href="javascript:" @click="_seeHistory" ><i class="iconfont"></i><em>{{$t('查看历史')}}</em></a></template>
|
||||
<template slot="log"><a href="javascript:"><i class="iconfont"></i><em>{{$t('查看日志')}}</em></a></template>
|
||||
<template slot="history"><a href="javascript:" @click="_seeHistory" ><i class="iconfont"></i><em>{{$t('View history')}}</em></a></template>
|
||||
<template slot="log"><a href="javascript:"><i class="iconfont"></i><em>{{$t('View log')}}</em></a></template>
|
||||
</m-log>
|
||||
<a href="javascript:" @click="_goSubProcess" v-if="_isGoSubProcess"><i class="iconfont"></i><em>{{$t('进入该子节点')}}</em></a>
|
||||
<a href="javascript:" @click="_goSubProcess" v-if="_isGoSubProcess"><i class="iconfont"></i><em>{{$t('Enter this child node')}}</em></a>
|
||||
</span>
|
||||
</div>
|
||||
<div class="content-box" v-if="isContentBox">
|
||||
@ -16,14 +16,14 @@
|
||||
|
||||
<!-- Node name -->
|
||||
<div class="clearfix list">
|
||||
<div class="text-box"><span>{{$t('节点名称')}}</span></div>
|
||||
<div class="text-box"><span>{{$t('Node name')}}</span></div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
<x-input
|
||||
type="text"
|
||||
v-model="name"
|
||||
:disabled="isDetails"
|
||||
:placeholder="$t('请输入name(必填)')"
|
||||
:placeholder="$t('Please enter name(required)')"
|
||||
maxlength="100"
|
||||
@on-blur="_verifName()"
|
||||
autocomplete="off">
|
||||
@ -34,12 +34,12 @@
|
||||
|
||||
<!-- Running sign -->
|
||||
<div class="clearfix list">
|
||||
<div class="text-box"><span>{{$t('运行标志')}}</span></div>
|
||||
<div class="text-box"><span>{{$t('Run flag')}}</span></div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
<x-radio-group v-model="runFlag" >
|
||||
<x-radio :label="'NORMAL'" :disabled="isDetails">{{$t('正常')}}</x-radio>
|
||||
<x-radio :label="'FORBIDDEN'" :disabled="isDetails">{{$t('禁止执行')}}</x-radio>
|
||||
<x-radio :label="'NORMAL'" :disabled="isDetails">{{$t('Normal')}}</x-radio>
|
||||
<x-radio :label="'FORBIDDEN'" :disabled="isDetails">{{$t('Prohibition execution')}}</x-radio>
|
||||
</x-radio-group>
|
||||
</label>
|
||||
</div>
|
||||
@ -48,7 +48,7 @@
|
||||
<!-- desc -->
|
||||
<div class="clearfix list">
|
||||
<div class="text-box">
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
|
||||
@ -59,7 +59,7 @@
|
||||
type="textarea"
|
||||
:disabled="isDetails"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</label>
|
||||
@ -69,7 +69,7 @@
|
||||
<!-- Task priority -->
|
||||
<div class="clearfix list">
|
||||
<div class="text-box">
|
||||
<span>{{$t('任务优先级')}}</span>
|
||||
<span>{{$t('Task priority')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<label class="label-box">
|
||||
@ -81,16 +81,16 @@
|
||||
<!-- Number of failed retries -->
|
||||
<div class="clearfix list" v-if="taskType !== 'SUB_PROCESS'">
|
||||
<div class="text-box">
|
||||
<span>{{$t('失败重试次数')}}</span>
|
||||
<span>{{$t('Number of failed retries')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<m-select-input v-model="maxRetryTimes" :list="[0,1,2,3,4]">
|
||||
</m-select-input>
|
||||
<span>({{$t('次')}})</span>
|
||||
<span class="text-b">{{$t('失败重试间隔')}}</span>
|
||||
<span>({{$t('Times')}})</span>
|
||||
<span class="text-b">{{$t('Failed retry interval')}}</span>
|
||||
<m-select-input v-model="retryInterval" :list="[1,10,30,60,120]">
|
||||
</m-select-input>
|
||||
<span>({{$t('分')}})</span>
|
||||
<span>({{$t('Minute')}})</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -163,8 +163,8 @@
|
||||
</div>
|
||||
<div class="bottom-box">
|
||||
<div class="submit" style="background: #fff;">
|
||||
<x-button type="text" @click="close()"> {{$t('取消')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" :disabled="isDetails" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('确认添加')}} </x-button>
|
||||
<x-button type="text" @click="close()"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" :disabled="isDetails" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('Confirm add')}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -269,13 +269,13 @@
|
||||
*/
|
||||
_goSubProcess () {
|
||||
if (_.isEmpty(this.backfillItem)) {
|
||||
this.$message.warning(`${i18n.$t('新创建子工作流还未执行,不能进入子工作流')}`)
|
||||
this.$message.warning(`${i18n.$t('The newly created sub-Process has not yet been executed and cannot enter the sub-Process')}`)
|
||||
return
|
||||
}
|
||||
if (this.router.history.current.name === 'projects-instance-details') {
|
||||
let stateId = $(`#${this.id}`).attr('data-state-id') || null
|
||||
if (!stateId) {
|
||||
this.$message.warning(`${i18n.$t('该任务还未执行,不能进入子工作流')}`)
|
||||
this.$message.warning(`${i18n.$t('The task has not been executed and cannot enter the sub-Process')}`)
|
||||
return
|
||||
}
|
||||
this.store.dispatch('dag/getSubProcessId', { taskId: stateId }).then(res => {
|
||||
@ -304,7 +304,7 @@
|
||||
*/
|
||||
_verifName () {
|
||||
if (!_.trim(this.name)) {
|
||||
this.$message.warning(`${i18n.$t('请输入名称(必填)')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter name (required)')}`)
|
||||
return false
|
||||
}
|
||||
if (this.name === this.backfillItem.name) {
|
||||
@ -312,7 +312,7 @@
|
||||
}
|
||||
// Name repeat depends on dom backfill dependent store
|
||||
if (isNameExDag(this.name, _.isEmpty(this.backfillItem) ? 'dom' : 'backfill')) {
|
||||
this.$message.warning(`${i18n.$t('名称已存在请重新输入')}`)
|
||||
this.$message.warning(`${i18n.$t('Name already exists')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
@ -353,6 +353,9 @@
|
||||
},
|
||||
fromThis: this
|
||||
})
|
||||
|
||||
// set run flag
|
||||
this._setRunFlag()
|
||||
},
|
||||
/**
|
||||
* Sub-workflow selected node echo name
|
||||
@ -360,6 +363,16 @@
|
||||
_onSetProcessName (name) {
|
||||
this.name = name
|
||||
},
|
||||
/**
|
||||
* set run flag
|
||||
*/
|
||||
_setRunFlag(){
|
||||
let dom = $(`#${this.id}`).find('.ban-p')
|
||||
dom.html('')
|
||||
if (this.runFlag === 'FORBIDDEN') {
|
||||
dom.append(rtBantpl())
|
||||
}
|
||||
},
|
||||
/**
|
||||
* Submit verification
|
||||
*/
|
||||
@ -384,13 +397,7 @@
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
runFlag(val){
|
||||
let dom = $(`#${this.id}`).find('.ban-p')
|
||||
dom.html('')
|
||||
if (val === 'FORBIDDEN') {
|
||||
dom.append(rtBantpl())
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
created () {
|
||||
// Unbind copy and paste events
|
||||
|
@ -10,18 +10,18 @@
|
||||
<div v-show="isLog || source === 'list'" class="log-pop">
|
||||
<div class="log-box" >
|
||||
<div class="title">
|
||||
<span>{{$t('查看日志')}}</span>
|
||||
<span>{{$t('View log')}}</span>
|
||||
<div class="full-screen">
|
||||
<a href="javascript:" @click="_downloadLog" data-container="body" data-toggle="tooltip" :title="$t('下载日志')">
|
||||
<a href="javascript:" @click="_downloadLog" data-container="body" data-toggle="tooltip" :title="$t('Download Log')">
|
||||
<i class="iconfont" style="font-size: 20px"></i>
|
||||
</a>
|
||||
<a href="javascript:" class="refresh-log" :class="loading ? 'active' :''" @click="!loading && _refreshLog()" data-container="body" data-toggle="tooltip" :title="$t('刷新日志')">
|
||||
<a href="javascript:" class="refresh-log" :class="loading ? 'active' :''" @click="!loading && _refreshLog()" data-container="body" data-toggle="tooltip" :title="$t('Refresh Log')">
|
||||
<i class="fa iconfont"></i>
|
||||
</a>
|
||||
<a href="javascript:" @click="_screenOpen" v-show="!isScreen" data-container="body" data-toggle="tooltip" :title="$t('进入全屏')">
|
||||
<a href="javascript:" @click="_screenOpen" v-show="!isScreen" data-container="body" data-toggle="tooltip" :title="$t('Enter full screen')">
|
||||
<i class="iconfont"></i>
|
||||
</a>
|
||||
<a href="javascript:" @click="_screenClose" v-show="isScreen" data-container="body" data-toggle="tooltip" :title="$t('取消全屏')">
|
||||
<a href="javascript:" @click="_screenClose" v-show="isScreen" data-container="body" data-toggle="tooltip" :title="$t('Cancel full screen')">
|
||||
<i class="iconfont"></i>
|
||||
</a>
|
||||
</div>
|
||||
@ -32,7 +32,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="operation">
|
||||
<x-button type="primary" shape="circle" @click="close"> {{$t('关闭')}} </x-button>
|
||||
<x-button type="primary" shape="circle" @click="close"> {{$t('Close')}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -88,13 +88,13 @@
|
||||
setTimeout(() => {
|
||||
this.loading = false
|
||||
if (res.data) {
|
||||
this.$message.success(`${i18n.$t('更新日志成功')}`)
|
||||
this.$message.success(`${i18n.$t('Update log success')}`)
|
||||
} else {
|
||||
this.$message.warning(`${i18n.$t('暂无更多日志')}`)
|
||||
this.$message.warning(`${i18n.$t('No more logs')}`)
|
||||
}
|
||||
}, 1500)
|
||||
// Handling text field size
|
||||
handerTextareaSize().html('').text(res.data || `${i18n.$t('暂无日志')}`)
|
||||
handerTextareaSize().html('').text(res.data || `${i18n.$t('No log')}`)
|
||||
}).catch(e => {
|
||||
this.$message.error(e.msg || '')
|
||||
this.loading = false
|
||||
@ -108,15 +108,15 @@
|
||||
if (!res.data) {
|
||||
this.isData = false
|
||||
setTimeout(() => {
|
||||
this.$message.warning(`${i18n.$t('暂无更多日志')}`)
|
||||
this.$message.warning(`${i18n.$t('No more logs')}`)
|
||||
}, 1000)
|
||||
// Handling text field size
|
||||
handerTextareaSize().html('').text(content || `${i18n.$t('暂无日志')}`)
|
||||
handerTextareaSize().html('').text(content || `${i18n.$t('No log')}`)
|
||||
} else {
|
||||
this.isData = true
|
||||
content = res.data
|
||||
// Handling text field size
|
||||
handerTextareaSize().html('').text(content || `${i18n.$t('暂无日志')}`)
|
||||
handerTextareaSize().html('').text(content || `${i18n.$t('No log')}`)
|
||||
|
||||
setTimeout(() => {
|
||||
$('#textarea').scrollTop(2)
|
||||
@ -189,7 +189,7 @@
|
||||
if (($this.scrollTop() + $this.height()) === $this.height()) {
|
||||
if (self.loadingIndex > 0) {
|
||||
self.$message.loading({
|
||||
content: `${i18n.$t('正在努力请求日志中...')}`,
|
||||
content: `${i18n.$t('Loading Log...')}`,
|
||||
duration: 0,
|
||||
closable: false
|
||||
})
|
||||
@ -201,7 +201,7 @@
|
||||
// No data is not requested
|
||||
if (self.isData) {
|
||||
self.$message.loading({
|
||||
content: `${i18n.$t('正在努力请求日志中...')}`,
|
||||
content: `${i18n.$t('Loading Log...')}`,
|
||||
duration: 0,
|
||||
closable: false
|
||||
})
|
||||
@ -226,7 +226,7 @@
|
||||
// Source is a task instance
|
||||
if (this.source === 'list') {
|
||||
this.$message.loading({
|
||||
content: `${i18n.$t('正在努力请求日志中...')}`,
|
||||
content: `${i18n.$t('Loading Log...')}`,
|
||||
duration: 0,
|
||||
closable: false
|
||||
})
|
||||
|
@ -7,19 +7,19 @@ import i18n from '@/module/i18n'
|
||||
const cycleList = [
|
||||
{
|
||||
value: 'month',
|
||||
label: `${i18n.$t('月')}`
|
||||
label: `${i18n.$t('month')}`
|
||||
},
|
||||
{
|
||||
value: 'week',
|
||||
label: `${i18n.$t('周')}`
|
||||
label: `${i18n.$t('week')}`
|
||||
},
|
||||
{
|
||||
value: 'day',
|
||||
label: `${i18n.$t('日')}`
|
||||
label: `${i18n.$t('day')}`
|
||||
},
|
||||
{
|
||||
value: 'hour',
|
||||
label: `${i18n.$t('时')}`
|
||||
label: `${i18n.$t('hour')}`
|
||||
}
|
||||
]
|
||||
|
||||
@ -30,81 +30,81 @@ const dateValueList = {
|
||||
'hour': [
|
||||
{
|
||||
value: 'last1Hour',
|
||||
label: `${i18n.$t('前1小时')}`
|
||||
label: `${i18n.$t('Last1Hour')}`
|
||||
},
|
||||
{
|
||||
value: 'last2Hours',
|
||||
label: `${i18n.$t('前2小时')}`
|
||||
label: `${i18n.$t('Last2Hours')}`
|
||||
},
|
||||
{
|
||||
value: 'last3Hours',
|
||||
label: `${i18n.$t('前3小时')}`
|
||||
label: `${i18n.$t('Last3Hours')}`
|
||||
}
|
||||
],
|
||||
'day': [
|
||||
{
|
||||
value: 'last1Days',
|
||||
label: `${i18n.$t('昨天')}`
|
||||
label: `${i18n.$t('Last1Days')}`
|
||||
},
|
||||
{
|
||||
value: 'last2Days',
|
||||
label: `${i18n.$t('前两天')}`
|
||||
label: `${i18n.$t('Last2Days')}`
|
||||
},
|
||||
{
|
||||
value: 'last3Days',
|
||||
label: `${i18n.$t('前三天')}`
|
||||
label: `${i18n.$t('Last3Days')}`
|
||||
},
|
||||
{
|
||||
value: 'last7Days',
|
||||
label: `${i18n.$t('前七天')}`
|
||||
label: `${i18n.$t('Last7Days')}`
|
||||
}
|
||||
],
|
||||
'week': [
|
||||
{
|
||||
value: 'lastWeek',
|
||||
label: `${i18n.$t('上周')}`
|
||||
label: `${i18n.$t('LastWeek')}`
|
||||
},
|
||||
{
|
||||
value: 'lastMonday',
|
||||
label: `${i18n.$t('上周一')}`
|
||||
label: `${i18n.$t('LastMonday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastTuesday',
|
||||
label: `${i18n.$t('上周二')}`
|
||||
label: `${i18n.$t('LastTuesday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastWednesday',
|
||||
label: `${i18n.$t('上周三')}`
|
||||
label: `${i18n.$t('LastWednesday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastThursday',
|
||||
label: `${i18n.$t('上周四')}`
|
||||
label: `${i18n.$t('LastThursday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastFriday',
|
||||
label: `${i18n.$t('上周五')}`
|
||||
label: `${i18n.$t('LastFriday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastSaturday',
|
||||
label: `${i18n.$t('上周六')}`
|
||||
label: `${i18n.$t('LastSaturday')}`
|
||||
},
|
||||
{
|
||||
value: 'lastSunday',
|
||||
label: `${i18n.$t('上周日')}`
|
||||
label: `${i18n.$t('LastSunday')}`
|
||||
}
|
||||
],
|
||||
'month': [
|
||||
{
|
||||
value: 'lastMonth',
|
||||
label: `${i18n.$t('上月')}`
|
||||
label: `${i18n.$t('LastMonth')}`
|
||||
},
|
||||
{
|
||||
value: 'lastMonthBegin',
|
||||
label: `${i18n.$t('上月初')}`
|
||||
label: `${i18n.$t('LastMonthBegin')}`
|
||||
},
|
||||
{
|
||||
value: 'lastMonthEnd',
|
||||
label: `${i18n.$t('上月末')}`
|
||||
label: `${i18n.$t('LastMonthEnd')}`
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -182,11 +182,11 @@ const typeList = [
|
||||
const sqlTypeList = [
|
||||
{
|
||||
id: 0,
|
||||
code: `${i18n.$t('查询')}`
|
||||
code: `${i18n.$t('Query')}`
|
||||
},
|
||||
{
|
||||
id: 1,
|
||||
code: `${i18n.$t('非查询')}`
|
||||
code: `${i18n.$t('Non Query')}`
|
||||
}
|
||||
]
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
:label="city.code">
|
||||
</x-option>
|
||||
</x-select>
|
||||
<x-select :placeholder="$t('请选择数据源')"
|
||||
<x-select :placeholder="$t('Please select the datasource')"
|
||||
v-model="datasource"
|
||||
style="width: 288px;"
|
||||
:disabled="isDetails">
|
||||
@ -56,7 +56,7 @@
|
||||
*/
|
||||
_verifDatasource () {
|
||||
if (!this.datasource) {
|
||||
this.$message.warning(`${i18n.$t('请选择数据源')}`)
|
||||
this.$message.warning(`${i18n.$t('Please select the datasource')}`)
|
||||
return false
|
||||
}
|
||||
this.$emit('on-dsData', {
|
||||
|
@ -19,17 +19,17 @@
|
||||
</x-select>
|
||||
<template v-if="isInstance">
|
||||
<span class="instance-state">
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'SUCCESS'" data-toggle="tooltip" data-container="body" :title="$t('成功')"></i>
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'WAITING'" data-toggle="tooltip" data-container="body" :title="$t('等待')"></i>
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'FAILED'" data-toggle="tooltip" data-container="body" :title="$t('失败')"></i>
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'SUCCESS'" data-toggle="tooltip" data-container="body" :title="$t('success')"></i>
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'WAITING'" data-toggle="tooltip" data-container="body" :title="$t('waiting')"></i>
|
||||
<i class="iconfont" :class="'icon-' + el.state" v-if="el.state === 'FAILED'" data-toggle="tooltip" data-container="body" :title="$t('failed')"></i>
|
||||
</span>
|
||||
</template>
|
||||
<span class="operation">
|
||||
<a href="javascript:" class="delete" @click="!isDetails && _remove($index)">
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" data-container="body" :title="$t('删除')" ></i>
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" data-container="body" :title="$t('delete')" ></i>
|
||||
</a>
|
||||
<a href="javascript:" class="add" @click="!isDetails && _add()" v-if="$index === (dependItemList.length - 1)">
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" data-container="body" :title="$t('添加')"></i>
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" data-container="body" :title="$t('Add')"></i>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -8,7 +8,7 @@
|
||||
:disabled="isDetails"
|
||||
type="text"
|
||||
v-model="localParamsList[$index].prop"
|
||||
:placeholder="$t('prop(必填)')"
|
||||
:placeholder="$t('prop(required)')"
|
||||
maxlength="64"
|
||||
@on-blur="_verifProp()"
|
||||
style="width: 164px;">
|
||||
@ -41,25 +41,25 @@
|
||||
:disabled="isDetails"
|
||||
type="text"
|
||||
v-model="localParamsList[$index].value"
|
||||
:placeholder="$t('value(选填)')"
|
||||
:placeholder="$t('value(optional)')"
|
||||
maxlength="64"
|
||||
@on-blur="_handleValue()"
|
||||
style="width: 150px;position: relative;margin-bottom: -2px;">
|
||||
</x-input>
|
||||
<span class="lt-add">
|
||||
<a href="javascript:" style="color:red;" @click="!isDetails && _removeUdp($index)" >
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('删除')" ></i>
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('delete')" ></i>
|
||||
</a>
|
||||
</span>
|
||||
<span class="add" v-if="$index === (localParamsList.length - 1)">
|
||||
<a href="javascript:" @click="!isDetails && _addUdp()" >
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('添加')"></i>
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('Add')"></i>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
<span class="add" v-if="!localParamsList.length">
|
||||
<a href="javascript:" @click="!isDetails && _addUdp()" >
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('添加')"></i>
|
||||
<i class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('Add')"></i>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
@ -149,14 +149,14 @@
|
||||
})
|
||||
if (!flag) {
|
||||
if (!type) {
|
||||
this.$message.warning(`${i18n.$t('prop不能为空')}`)
|
||||
this.$message.warning(`${i18n.$t('prop is empty')}`)
|
||||
}
|
||||
return false
|
||||
}
|
||||
let newArr = _.cloneDeep(_.uniqWith(arr, _.isEqual))
|
||||
if (newArr.length !== arr.length) {
|
||||
if (!type) {
|
||||
this.$message.warning(`${i18n.$t('prop中有重复')}`)
|
||||
this.$message.warning(`${i18n.$t('prop is repeat')}`)
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
v-model="value"
|
||||
filterable
|
||||
:disabled="isDetails"
|
||||
:placeholder="$t('请选择资源')"
|
||||
:placeholder="$t('Please select resources')"
|
||||
style="width: 100%;">
|
||||
<x-option
|
||||
v-for="city in resList"
|
||||
|
@ -1,16 +1,16 @@
|
||||
<template>
|
||||
<div class="dependence-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('添加依赖')}}</div>
|
||||
<div slot="text">{{$t('Add dependency')}}</div>
|
||||
<div slot="content">
|
||||
<div class="dep-opt">
|
||||
<a href="javascript:"
|
||||
@click="!isDetails && _addDep()"
|
||||
class="add-dep">
|
||||
<i v-if="!isLoading" class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('添加')">
|
||||
<i v-if="!isLoading" class="iconfont" :class="_isDetails" data-toggle="tooltip" :title="$t('Add')">
|
||||

|
||||
</i>
|
||||
<i v-if="isLoading" class="iconfont fa fa-spin" data-toggle="tooltip" :title="$t('添加')">
|
||||
<i v-if="isLoading" class="iconfont fa fa-spin" data-toggle="tooltip" :title="$t('Add')">
|
||||

|
||||
</i>
|
||||
</a>
|
||||
@ -20,20 +20,20 @@
|
||||
class="dep-relation"
|
||||
@click="!isDetails && _setGlobalRelation()"
|
||||
v-if="dependTaskList.length">
|
||||
{{relation === 'AND' ? $t('且') : $t('或')}}
|
||||
{{relation === 'AND' ? $t('and') : $t('or')}}
|
||||
</span>
|
||||
<div class="dep-list" v-for="(el,$index) in dependTaskList">
|
||||
<span class="dep-line-pie"
|
||||
v-if="el.dependItemList.length"
|
||||
@click="!isDetails && _setRelation($index)">
|
||||
{{el.relation === 'AND' ? $t('且') : $t('或')}}
|
||||
{{el.relation === 'AND' ? $t('and') : $t('or')}}
|
||||
</span>
|
||||
<i class="iconfont dep-delete"
|
||||
data-toggle="tooltip"
|
||||
data-container="body"
|
||||
:class="_isDetails"
|
||||
@click="!isDetails && _deleteDep($index)"
|
||||
:title="$t('删除')" >
|
||||
:title="$t('delete')" >
|
||||

|
||||
</i>
|
||||
<m-depend-item-list
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="spark-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('程序类型')}}</div>
|
||||
<div slot="text">{{$t('Program Type')}}</div>
|
||||
<div slot="content">
|
||||
<x-select v-model="programType" :disabled="isDetails" style="width: 100px;">
|
||||
<x-option
|
||||
@ -14,23 +14,23 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box v-if="programType !== 'PYTHON'">
|
||||
<div slot="text">{{$t('主函数的class')}}</div>
|
||||
<div slot="text">{{$t('Main class')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="mainClass"
|
||||
:placeholder="$t('请输入mainClass')"
|
||||
:placeholder="$t('Please enter main class')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('主jar包')}}</div>
|
||||
<div slot="text">{{$t('Main jar package')}}</div>
|
||||
<div slot="content">
|
||||
<x-select
|
||||
style="width: 100%;"
|
||||
:placeholder="$t('请选择主jar包')"
|
||||
:placeholder="$t('Please enter main jar package')"
|
||||
v-model="mainJar"
|
||||
filterable
|
||||
:disabled="isDetails">
|
||||
@ -44,33 +44,33 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('命令行参数')}}</div>
|
||||
<div slot="text">{{$t('Command-line parameters')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:autosize="{minRows:2}"
|
||||
:disabled="isDetails"
|
||||
type="textarea"
|
||||
v-model="mainArgs"
|
||||
:placeholder="$t('请输入命令行参数')"
|
||||
:placeholder="$t('Please enter Command-line parameters')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('其他参数')}}</div>
|
||||
<div slot="text">{{$t('Other parameters')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
:autosize="{minRows:2}"
|
||||
type="textarea"
|
||||
v-model="others"
|
||||
:placeholder="$t('请输入其他参数')"
|
||||
:placeholder="$t('Please enter other parameters')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('资源')}}</div>
|
||||
<div slot="text">{{$t('Resources')}}</div>
|
||||
<div slot="content">
|
||||
<m-resources
|
||||
ref="refResources"
|
||||
@ -80,7 +80,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -145,12 +145,12 @@
|
||||
*/
|
||||
_verification () {
|
||||
if (this.programType !== 'PYTHON' && !this.mainClass) {
|
||||
this.$message.warning(`${i18n.$t('请填写主函数的class')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter main class')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.mainJar) {
|
||||
this.$message.warning(`${i18n.$t('请选择主jar包')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter main jar package')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="procedure-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('数据源')}}</div>
|
||||
<div slot="text">{{$t('Datasource')}}</div>
|
||||
<div slot="content">
|
||||
<m-datasource
|
||||
ref="refDs"
|
||||
@ -12,19 +12,19 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('方法')}}</div>
|
||||
<div slot="text">{{$t('methods')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
:disabled="isDetails"
|
||||
v-model="method"
|
||||
:placeholder="$t('请输入method(选填)')"
|
||||
:placeholder="$t('Please enter method(optional)')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -85,7 +85,7 @@
|
||||
|
||||
// Verification function
|
||||
if (!this.method) {
|
||||
this.$message.warning(`${i18n.$t('请输入方法')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter method')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="shell-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('脚本')}}</div>
|
||||
<div slot="text">{{$t('Script')}}</div>
|
||||
<div slot="content">
|
||||
<div class="from-mirror">
|
||||
<textarea id="code-python-mirror" name="code-python-mirror" style="opacity: 0;">
|
||||
@ -10,7 +10,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('资源')}}</div>
|
||||
<div slot="text">{{$t('Resources')}}</div>
|
||||
<div slot="content">
|
||||
<m-resources
|
||||
ref="refResources"
|
||||
@ -21,7 +21,7 @@
|
||||
</m-list-box>
|
||||
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -79,7 +79,7 @@
|
||||
_verification () {
|
||||
// rawScript 验证
|
||||
if (!editor.getValue()) {
|
||||
this.$message.warning(`${i18n.$t('请输入rawScript(必填)')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter script(required)')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="shell-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('脚本')}}</div>
|
||||
<div slot="text">{{$t('Script')}}</div>
|
||||
<div slot="content">
|
||||
<div class="from-mirror">
|
||||
<textarea
|
||||
@ -13,7 +13,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('资源')}}</div>
|
||||
<div slot="text">{{$t('Resources')}}</div>
|
||||
<div slot="content">
|
||||
<m-resources
|
||||
ref="refResources"
|
||||
@ -23,7 +23,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -81,7 +81,7 @@
|
||||
_verification () {
|
||||
// rawScript verification
|
||||
if (!editor.getValue()) {
|
||||
this.$message.warning(`${i18n.$t('请输入rawScript(必填)')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter script(required)')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="spark-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('程序类型')}}</div>
|
||||
<div slot="text">{{$t('Program Type')}}</div>
|
||||
<div slot="content">
|
||||
<x-select
|
||||
style="width: 130px;"
|
||||
@ -17,23 +17,23 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box v-if="programType !== 'PYTHON'">
|
||||
<div slot="text">{{$t('主函数的class')}}</div>
|
||||
<div slot="text">{{$t('Main class')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="mainClass"
|
||||
:placeholder="$t('请输入mainClass')"
|
||||
:placeholder="$t('Please enter main class')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('主jar包')}}</div>
|
||||
<div slot="text">{{$t('Main jar package')}}</div>
|
||||
<div slot="content">
|
||||
<x-select
|
||||
style="width: 100%;"
|
||||
:placeholder="$t('请选择主jar包')"
|
||||
:placeholder="$t('Please enter main jar package')"
|
||||
v-model="mainJar"
|
||||
filterable
|
||||
:disabled="isDetails">
|
||||
@ -47,7 +47,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('部署方式')}}</div>
|
||||
<div slot="text">{{$t('Deploy Mode')}}</div>
|
||||
<div slot="content">
|
||||
<x-radio-group v-model="deployMode">
|
||||
<x-radio :label="'cluster'" :disabled="isDetails"></x-radio>
|
||||
@ -58,61 +58,61 @@
|
||||
</m-list-box>
|
||||
<div class="list-box-4p">
|
||||
<div class="clearfix list">
|
||||
<span class="sp1">{{$t('Driver内核数')}}</span>
|
||||
<span class="sp1">{{$t('Driver core number')}}</span>
|
||||
<span class="sp2">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="driverCores"
|
||||
:placeholder="$t('请输入Driver内核数')"
|
||||
:placeholder="$t('Please enter driver core number')"
|
||||
style="width: 200px;"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</span>
|
||||
<span class="sp1 sp3">{{$t('Driver内存数')}}</span>
|
||||
<span class="sp1 sp3">{{$t('Driver memory use')}}</span>
|
||||
<span class="sp2">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="driverMemory"
|
||||
:placeholder="$t('请输入Driver内存数')"
|
||||
:placeholder="$t('Please enter driver memory use')"
|
||||
style="width: 186px;"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</span>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<span class="sp1">{{$t('Executor数量')}}</span>
|
||||
<span class="sp1">{{$t('Number of Executors')}}</span>
|
||||
<span class="sp2">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="numExecutors"
|
||||
:placeholder="$t('请输入Executor数量')"
|
||||
:placeholder="$t('Please enter the number of Executor')"
|
||||
style="width: 200px;"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</span>
|
||||
<span class="sp1 sp3">{{$t('Executor内存数')}}</span>
|
||||
<span class="sp1 sp3">{{$t('Executor memory')}}</span>
|
||||
<span class="sp2">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="executorMemory"
|
||||
:placeholder="$t('请输入Executor内存数')"
|
||||
:placeholder="$t('Please enter the Executor memory')"
|
||||
style="width: 186px;"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</span>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<span class="sp1">{{$t('Executor内核数')}}</span>
|
||||
<span class="sp1">{{$t('Executor core number')}}</span>
|
||||
<span class="sp2">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="executorCores"
|
||||
:placeholder="$t('请输入Executor内核数')"
|
||||
:placeholder="$t('Please enter Executor core number')"
|
||||
style="width: 200px;"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
@ -120,32 +120,32 @@
|
||||
</div>
|
||||
</div>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('命令行参数')}}</div>
|
||||
<div slot="text">{{$t('Command-line parameters')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:autosize="{minRows:2}"
|
||||
:disabled="isDetails"
|
||||
type="textarea"
|
||||
v-model="mainArgs"
|
||||
:placeholder="$t('请输入命令行参数')"
|
||||
:placeholder="$t('Please enter Command-line parameters')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('其他参数')}}</div>
|
||||
<div slot="text">{{$t('Other parameters')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
:autosize="{minRows:2}"
|
||||
type="textarea"
|
||||
v-model="others"
|
||||
:placeholder="$t('请输入其他参数')">
|
||||
:placeholder="$t('Please enter other parameters')">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('资源')}}</div>
|
||||
<div slot="text">{{$t('Resources')}}</div>
|
||||
<div slot="content">
|
||||
<m-resources
|
||||
ref="refResources"
|
||||
@ -155,7 +155,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -233,47 +233,47 @@
|
||||
*/
|
||||
_verification () {
|
||||
if (this.programType !== 'PYTHON' && !this.mainClass) {
|
||||
this.$message.warning(`${i18n.$t('请填写主函数的class')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter main class')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.mainJar) {
|
||||
this.$message.warning(`${i18n.$t('请选择主jar包')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter main jar package')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.numExecutors) {
|
||||
this.$message.warning(`${i18n.$t('请填写Executor数量')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the number of Executor')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!Number.isInteger(parseInt(this.numExecutors))) {
|
||||
this.$message.warning(`${i18n.$t('Executor数量为正整数')}`)
|
||||
this.$message.warning(`${i18n.$t('The number of Executors should be a positive integer')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.executorMemory) {
|
||||
this.$message.warning(`${i18n.$t('请填写Executor内存数')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the Executor memory')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.executorMemory) {
|
||||
this.$message.warning(`${i18n.$t('请填写Executor内存数')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the Executor memory')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!_.isNumber(parseInt(this.executorMemory))) {
|
||||
this.$message.warning(`${i18n.$t('内存数为数字')}`)
|
||||
this.$message.warning(`${i18n.$t('Memory should be a positive integer')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.executorCores) {
|
||||
this.$message.warning(`${i18n.$t('请填写Executor内核数')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter ExecutorPlease enter Executor core number')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!Number.isInteger(parseInt(this.executorCores))) {
|
||||
this.$message.warning(`${i18n.$t('内核数为正整数')}`)
|
||||
this.$message.warning(`${i18n.$t('Core number should be positive integer')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="sql-model">
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('数据源')}}</div>
|
||||
<div slot="text">{{$t('Datasource')}}</div>
|
||||
<div slot="content">
|
||||
<m-datasource
|
||||
ref="refDs"
|
||||
@ -11,7 +11,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('sql类型')}}</div>
|
||||
<div slot="text">{{$t('SQL Type')}}</div>
|
||||
<div slot="content">
|
||||
<div style="display: inline-block;">
|
||||
<m-sql-type
|
||||
@ -21,26 +21,26 @@
|
||||
</div>
|
||||
<div v-if="!sqlType" style="display: inline-block;padding-left: 10px;margin-top: 2px;">
|
||||
<x-checkbox-group v-model="showType">
|
||||
<x-checkbox :label="'TABLE'" :disabled="isDetails">{{$t('表格')}}</x-checkbox>
|
||||
<x-checkbox :label="'ATTACHMENT'" :disabled="isDetails">{{$t('附件')}}</x-checkbox>
|
||||
<x-checkbox :label="'TABLE'" :disabled="isDetails">{{$t('Table')}}</x-checkbox>
|
||||
<x-checkbox :label="'ATTACHMENT'" :disabled="isDetails">{{$t('Attachment')}}</x-checkbox>
|
||||
</x-checkbox-group>
|
||||
</div>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box v-show="type === 'HIVE'">
|
||||
<div slot="text">{{$t('sql参数')}}</div>
|
||||
<div slot="text">{{$t('SQL Parameter')}}</div>
|
||||
<div slot="content">
|
||||
<x-input
|
||||
:disabled="isDetails"
|
||||
type="input"
|
||||
v-model="connParams"
|
||||
:placeholder="$t('请输入格式为') + ' key1=value1;key2=value2...'"
|
||||
:placeholder="$t('Please enter format') + ' key1=value1;key2=value2...'"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('sql语句')}}</div>
|
||||
<div slot="text">{{$t('SQL Statement')}}</div>
|
||||
<div slot="content">
|
||||
<div class="from-mirror">
|
||||
<textarea
|
||||
@ -52,7 +52,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box v-if="type === 'HIVE'">
|
||||
<div slot="text">{{$t('UDF函数')}}</div>
|
||||
<div slot="text">{{$t('UDF Function')}}</div>
|
||||
<div slot="content">
|
||||
<m-udfs
|
||||
ref="refUdfs"
|
||||
@ -63,7 +63,7 @@
|
||||
</div>
|
||||
</m-list-box>
|
||||
<m-list-box>
|
||||
<div slot="text">{{$t('自定义参数')}}</div>
|
||||
<div slot="text">{{$t('Custom Parameters')}}</div>
|
||||
<div slot="content">
|
||||
<m-local-params
|
||||
ref="refLocalParams"
|
||||
@ -146,7 +146,7 @@
|
||||
*/
|
||||
_verification () {
|
||||
if (!editor.getValue()) {
|
||||
this.$message.warning(`${i18n.$t('请输入sql语句(必填)')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a SQL Statement(required)')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
<div class="sub_process-model">
|
||||
<div class="clearfix list">
|
||||
<div class="text-box">
|
||||
<span>{{$t('子节点')}}</span>
|
||||
<span>{{$t('Child Node')}}</span>
|
||||
</div>
|
||||
<div class="cont-box">
|
||||
<div class="label-box">
|
||||
@ -49,7 +49,7 @@
|
||||
*/
|
||||
_verification () {
|
||||
if (!this.wdiCurr) {
|
||||
this.$message.warning(`${i18n.$t('请选择子工作流')}`)
|
||||
this.$message.warning(`${i18n.$t('Please select a sub-Process')}`)
|
||||
return false
|
||||
}
|
||||
this.$emit('on-params', {
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="affirm-model">
|
||||
<m-popup :ok-text="$t('确认保存')"
|
||||
:nameText="$t('是否保存DAG图')"
|
||||
<m-popup :ok-text="$t('Save')"
|
||||
:nameText="$t('Whether to save the DAG graph')"
|
||||
@close="_close"
|
||||
@ok="_ok">
|
||||
</m-popup>
|
||||
|
@ -264,10 +264,10 @@ JSP.prototype.tasksContextmenu = function (event) {
|
||||
let isTwo = store.state.dag.isDetails
|
||||
|
||||
let html = [
|
||||
`<a href="javascript:" id="startRunning" class="${isOne ? '' : 'disbled'}"><i class="iconfont"></i><span>${i18n.$t('开始运行')}</span></a>`,
|
||||
`<a href="javascript:" id="editNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('编辑节点')}</span></a>`,
|
||||
`<a href="javascript:" id="copyNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('复制节点')}</span></a>`,
|
||||
`<a href="javascript:" id="removeNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('删除节点')}</span></a>`
|
||||
`<a href="javascript:" id="startRunning" class="${isOne ? '' : 'disbled'}"><i class="iconfont"></i><span>${i18n.$t('Start')}</span></a>`,
|
||||
`<a href="javascript:" id="editNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('Edit')}</span></a>`,
|
||||
`<a href="javascript:" id="copyNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('Copy')}</span></a>`,
|
||||
`<a href="javascript:" id="removeNodes" class="${isTwo ? 'disbled' : ''}"><i class="iconfont"></i><span>${i18n.$t('Delete')}</span></a>`
|
||||
]
|
||||
|
||||
let operationHtml = () => {
|
||||
|
@ -38,7 +38,7 @@ const saveTargetarr = (valId, domId) => {
|
||||
}
|
||||
|
||||
const rtBantpl = () => {
|
||||
return `<i class="iconfont" data-toggle="tooltip" data-html="true" data-container="body" data-placement="left" title="${i18n.$t('禁止执行')}"></i>`
|
||||
return `<i class="iconfont" data-toggle="tooltip" data-html="true" data-container="body" data-placement="left" title="${i18n.$t('Prohibition execution')}"></i>`
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2,14 +2,14 @@
|
||||
<div class="udp-model">
|
||||
<div class="scrollbar contpi-boxt">
|
||||
<div class="title">
|
||||
<span>{{$t('设置DAG图名称')}}</span>
|
||||
<span>{{$t('Set the DAG diagram name')}}</span>
|
||||
</div>
|
||||
<div>
|
||||
<x-input
|
||||
type="text"
|
||||
v-model="name"
|
||||
:disabled="router.history.current.name === 'projects-instance-details'"
|
||||
:placeholder="$t('请输入name(必填)')">
|
||||
:placeholder="$t('Please enter name(required)')">
|
||||
</x-input>
|
||||
</div>
|
||||
<template v-if="router.history.current.name !== 'projects-instance-details'">
|
||||
@ -18,13 +18,13 @@
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:autosize="{minRows:2}"
|
||||
:placeholder="$t('请输入desc(选填)')"
|
||||
:placeholder="$t('Please enter description(optional)')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</div>
|
||||
</template>
|
||||
<div class="title" style="padding-top: 6px;">
|
||||
<span>{{$t('设置全局')}}</span>
|
||||
<span>{{$t('Set global')}}</span>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div>
|
||||
@ -41,11 +41,11 @@
|
||||
<div class="submit">
|
||||
<template v-if="router.history.current.name === 'projects-instance-details'">
|
||||
<div class="lint-pt">
|
||||
<x-checkbox v-model="syncDefine">{{$t('是否更新流程定义')}}</x-checkbox>
|
||||
<x-checkbox v-model="syncDefine">{{$t('Whether to update the process definition')}}</x-checkbox>
|
||||
</div>
|
||||
</template>
|
||||
<x-button type="text" @click="close()"> {{$t('取消')}} </x-button>
|
||||
<x-button type="primary" shape="circle" @click="ok()" v-ps="['GENERAL_USER']" >{{$t('添加')}}</x-button>
|
||||
<x-button type="text" @click="close()"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="primary" shape="circle" @click="ok()" v-ps="['GENERAL_USER']" >{{$t('Add')}}</x-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -86,7 +86,7 @@
|
||||
*/
|
||||
ok () {
|
||||
if (!this.name) {
|
||||
this.$message.warning(`${i18n.$t('DAG图名称不能为空')}`)
|
||||
this.$message.warning(`${i18n.$t('DAG graph name cannot be empty')}`)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -1,13 +1,13 @@
|
||||
<template>
|
||||
<div class="variable-model">
|
||||
<div class="list">
|
||||
<div class="name"><i class="fa fa-code"></i><b style="padding-top: 3px;display: inline-block">{{$t('全局参数')}}</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">
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
<div class="list" style="height: 30px;">
|
||||
<div class="name"><i class="fa fa-code"></i><b style="padding-top: 3px;display: inline-block">{{$t('局部参数')}}</b></div>
|
||||
<div class="name"><i class="fa fa-code"></i><b style="padding-top: 3px;display: inline-block">{{$t('Local parameters')}}</b></div>
|
||||
<div class="var-cont">
|
||||
|
||||
</div>
|
||||
@ -57,13 +57,13 @@
|
||||
_copy (className) {
|
||||
let clipboard = new Clipboard(`.${className}`)
|
||||
clipboard.on('success', e => {
|
||||
this.$message.success(`${i18n.$t('复制成功')}`)
|
||||
this.$message.success(`${i18n.$t('Copy success')}`)
|
||||
// Free memory
|
||||
clipboard.destroy()
|
||||
})
|
||||
clipboard.on('error', e => {
|
||||
// Copy is not supported
|
||||
this.$message.warning(`${i18n.$t('该浏览器不支持自动复制')}`)
|
||||
this.$message.warning(`${i18n.$t('The browser does not support automatic copying')}`)
|
||||
// Free memory
|
||||
clipboard.destroy()
|
||||
})
|
||||
|
@ -1,12 +1,12 @@
|
||||
<template>
|
||||
<div class="datasource-popup-model">
|
||||
<div class="top-p">
|
||||
<span>{{item ? `${$t('编辑')}` : `${$t('创建')}`}}{{`${$t('数据源')}`}}</span>
|
||||
<span>{{item ? `${$t('Edit')}` : `${$t('Create')}`}}{{`${$t('Datasource')}`}}</span>
|
||||
</div>
|
||||
<div class="content-p">
|
||||
<div class="create-datasource-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('数据源')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Datasource')}}</template>
|
||||
<template slot="content">
|
||||
<x-radio-group v-model="type" size="small">
|
||||
<x-radio :label="'MYSQL'">MYSQL</x-radio>
|
||||
@ -20,84 +20,84 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('数据源名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Datasource Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="name"
|
||||
:placeholder="$t('请输入数据源名称')"
|
||||
:placeholder="$t('Please enter datasource name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="note"
|
||||
:placeholder="$t('请输入描述')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('IP主机名')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('IP')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="host"
|
||||
:placeholder="$t('请输入IP主机名')"
|
||||
:placeholder="$t('Please enter IP')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('端口')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Port')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="port"
|
||||
:placeholder="$t('请输入端口')"
|
||||
:placeholder="$t('Please enter port')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('用户名')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('User Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="userName"
|
||||
:placeholder="$t('请输入用户名')"
|
||||
:placeholder="$t('Please enter user name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('密码')}}</template>
|
||||
<template slot="name">{{$t('Password')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="password"
|
||||
v-model="password"
|
||||
:placeholder="$t('请输入密码')"
|
||||
:placeholder="$t('Please enter your password')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('数据库名')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Database Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="database"
|
||||
:placeholder="$t('请输入数据库名')"
|
||||
:placeholder="$t('Please enter database name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('jdbc连接参数')}}</template>
|
||||
<template slot="name">{{$t('jdbc connect parameters')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
@ -111,9 +111,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottom-p">
|
||||
<x-button type="text" @click="_close()"> {{$t('取消')}} </x-button>
|
||||
<x-button type="success" shape="circle" @click="_testConnect()" :loading="testLoading">{{testLoading ? 'Loading...' : $t('测试连接')}}</x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="_ok()">{{spinnerLoading ? 'Loading...' :item ? `${$t('确认编辑')}` : `${$t('确认提交')}`}} </x-button>
|
||||
<x-button type="text" @click="_close()"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="success" shape="circle" @click="_testConnect()" :loading="testLoading">{{testLoading ? 'Loading...' : $t('Test Connect')}}</x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="_ok()">{{spinnerLoading ? 'Loading...' :item ? `${$t('Edit')}` : `${$t('Submit')}`}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@ -158,7 +158,7 @@
|
||||
},
|
||||
methods: {
|
||||
_rtOtherPlaceholder () {
|
||||
return `${i18n.$t('请输入格式为')} {"key1":"value1","key2":"value2"...} ${i18n.$t('连接参数')}`
|
||||
return `${i18n.$t('Please enter format')} {"key1":"value1","key2":"value2"...} ${i18n.$t('connection parameter')}`
|
||||
},
|
||||
/**
|
||||
* submit
|
||||
@ -231,29 +231,29 @@
|
||||
*/
|
||||
_verification () {
|
||||
if (!this.name) {
|
||||
this.$message.warning(`${i18n.$t('请输入资源名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter resource name')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.host) {
|
||||
this.$message.warning(`${i18n.$t('请输入IP/主机名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter IP/hostname')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.port) {
|
||||
this.$message.warning(`${i18n.$t('请输入端口')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter port')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.userName) {
|
||||
this.$message.warning(`${i18n.$t('请输入用户名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter user name')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.database) {
|
||||
this.$message.warning(`${i18n.$t('请输入数据库名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter database name')}`)
|
||||
return false
|
||||
}
|
||||
if (this.other) {
|
||||
if (!isJson(this.other)) {
|
||||
this.$message.warning(`${i18n.$t('jdbc连接参数不是一个正确的JSON格式')}`)
|
||||
this.$message.warning(`${i18n.$t('jdbc connection parameters is not a correct JSON format')}`)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
@ -4,28 +4,28 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('数据源名称')}}</span>
|
||||
<span>{{$t('Datasource Name')}}</span>
|
||||
</th>
|
||||
<th width="120">
|
||||
<span>{{$t('数据源类型')}}</span>
|
||||
<span>{{$t('Datasource Type')}}</span>
|
||||
</th>
|
||||
<th width="100">
|
||||
<span>{{$t('数据源参数')}}</span>
|
||||
<span>{{$t('Datasource Parameter')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th width="150">
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th width="150">
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -43,7 +43,7 @@
|
||||
<td>
|
||||
<m-tooltips-JSON :JSON="JSON.parse(item.connectionParams)" :id="item.id">
|
||||
<span slot="reference">
|
||||
<a href="javascript:" class="links" style="font-size: 12px;">{{$t('点击查看')}}</a>
|
||||
<a href="javascript:" class="links" style="font-size: 12px;">{{$t('Click to view')}}</a>
|
||||
</span>
|
||||
</m-tooltips-JSON>
|
||||
</td>
|
||||
@ -57,7 +57,7 @@
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
v-ps="['GENERAL_USER']"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
icon="iconfont icon-bianjixiugai"
|
||||
@click="_edit(item)">
|
||||
</x-button>
|
||||
@ -65,10 +65,10 @@
|
||||
:ref="'poptip-delete-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -77,7 +77,7 @@
|
||||
size="xsmall"
|
||||
icon="iconfont icon-shanchu"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
</template>
|
||||
|
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<m-list-construction :title="$t('数据源中心')">
|
||||
<m-list-construction :title="$t('Datasource')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')" v-ps="['GENERAL_USER']">{{$t('创建数据源')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')" v-ps="['GENERAL_USER']">{{$t('Create Datasource')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<m-list-construction :title="$t('首页')">
|
||||
<m-list-construction :title="$t('Home')">
|
||||
<template slot="content">
|
||||
<m-project-chart :id="0"></m-project-chart>
|
||||
</template>
|
||||
|
@ -30,7 +30,7 @@
|
||||
:style="{width:emailWidth + 'px'}"
|
||||
type="text"
|
||||
v-model="email"
|
||||
:placeholder="$t('请输入邮箱')"
|
||||
:placeholder="$t('Please enter email')"
|
||||
@keydown.tab="_emailTab"
|
||||
@keyup.delete="_emailDelete"
|
||||
@keyup.enter="_emailEnter"
|
||||
@ -87,10 +87,10 @@
|
||||
this.email = ''
|
||||
this._handlerEmailWitch()
|
||||
} else {
|
||||
this.$message.warning(`${i18n.$t('邮箱已存在!收件人和抄送人不能重复')}`)
|
||||
this.$message.warning(`${i18n.$t('Mailbox already exists! Recipients and copyers cannot repeat')}`)
|
||||
}
|
||||
} else {
|
||||
this.$message.warning(`${i18n.$t('邮箱输入不合法')}`)
|
||||
this.$message.warning(`${i18n.$t('Mailbox input is illegal')}`)
|
||||
}
|
||||
},
|
||||
/**
|
||||
@ -191,7 +191,7 @@
|
||||
|
||||
// Non-existing data
|
||||
if (_.filter(_.cloneDeep(this.repeatData).concat(_.cloneDeep(this.activeList)), v => v === item).length) {
|
||||
this.$message.warning(`${i18n.$t('邮箱已存在!收件人和抄送人不能重复')}`)
|
||||
this.$message.warning(`${i18n.$t('Mailbox already exists! Recipients and copyers cannot repeat')}`)
|
||||
return
|
||||
}
|
||||
// Width initialization
|
||||
|
@ -4,28 +4,28 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('工作流名称')}}</span>
|
||||
<span>{{$t('Process Name')}}</span>
|
||||
</th>
|
||||
<th width="50">
|
||||
<span>{{$t('状态')}}</span>
|
||||
<span>{{$t('State')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th width="90">
|
||||
<span>{{$t('定时状态')}}</span>
|
||||
<span>{{$t('Timing state')}}</span>
|
||||
</th>
|
||||
<th width="220">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -49,18 +49,18 @@
|
||||
</td>
|
||||
<td><span class="ellipsis">{{item.desc}}</span></td>
|
||||
<td>
|
||||
<span v-if="item.scheduleReleaseState === 'OFFLINE'">{{$t('下线')}}</span>
|
||||
<span v-if="item.scheduleReleaseState === 'ONLINE'">{{$t('上线')}}</span>
|
||||
<span v-if="item.scheduleReleaseState === 'OFFLINE'">{{$t('offline')}}</span>
|
||||
<span v-if="item.scheduleReleaseState === 'ONLINE'">{{$t('online')}}</span>
|
||||
<span v-if="!item.scheduleReleaseState">-</span>
|
||||
</td>
|
||||
<td>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('编辑')" @click="_edit(item)" :disabled="item.releaseState === 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-bianji"><!--{{$t('编辑')}}--></x-button>
|
||||
<x-button type="success" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('启动')" @click="_start(item)" :disabled="item.releaseState !== 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-qidong"><!--{{$t('启动')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('定时')" @click="_timing(item)" :disabled="item.releaseState !== 'ONLINE' || item.scheduleReleaseState !== null" v-ps="['GENERAL_USER']" icon="iconfont icon-timer"><!--{{$t('定时')}}--></x-button>
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('下线')" @click="_downline(item)" v-if="item.releaseState === 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-erji-xiaxianjilu"><!--{{$t('下线')}}--></x-button>
|
||||
<x-button type="warning" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('上线')" @click="_poponline(item)" v-if="item.releaseState === 'OFFLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-erji-xiaxianjilu-copy"><!--{{$t('上线')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('定时管理')" @click="_timingManage(item)" :disabled="item.releaseState !== 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-paibanguanli"><!--{{$t('定时管理')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('树形图')" @click="_treeView(item)" icon="iconfont icon-juxingkaobei"><!--{{$t('树形图')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('Edit')" @click="_edit(item)" :disabled="item.releaseState === 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-bianji"><!--{{$t('编辑')}}--></x-button>
|
||||
<x-button type="success" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('Start')" @click="_start(item)" :disabled="item.releaseState !== 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-qidong"><!--{{$t('启动')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('Timing')" @click="_timing(item)" :disabled="item.releaseState !== 'ONLINE' || item.scheduleReleaseState !== null" v-ps="['GENERAL_USER']" icon="iconfont icon-timer"><!--{{$t('定时')}}--></x-button>
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('offline')" @click="_downline(item)" v-if="item.releaseState === 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-erji-xiaxianjilu"><!--{{$t('下线')}}--></x-button>
|
||||
<x-button type="warning" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('online')" @click="_poponline(item)" v-if="item.releaseState === 'OFFLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-erji-xiaxianjilu-copy"><!--{{$t('上线')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('Cron Management')" @click="_timingManage(item)" :disabled="item.releaseState !== 'ONLINE'" v-ps="['GENERAL_USER']" icon="iconfont icon-paibanguanli"><!--{{$t('定时管理')}}--></x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('TreeView')" @click="_treeView(item)" icon="iconfont icon-juxingkaobei"><!--{{$t('树形图')}}--></x-button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -1,34 +1,34 @@
|
||||
<template>
|
||||
<div class="start-process-model">
|
||||
<div class="title-box">
|
||||
<span>{{$t('启动前请先设置参数')}}</span>
|
||||
<span>{{$t('Please set the parameters before starting')}}</span>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('失败策略')}}
|
||||
{{$t('Failure Strategy')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-radio-group v-model="failureStrategy" style="margin-top: 7px;">
|
||||
<x-radio :label="'CONTINUE'">{{$t('继续')}}</x-radio>
|
||||
<x-radio :label="'END'">{{$t('结束')}}</x-radio>
|
||||
<x-radio :label="'CONTINUE'">{{$t('Continue')}}</x-radio>
|
||||
<x-radio :label="'END'">{{$t('End')}}</x-radio>
|
||||
</x-radio-group>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list" v-if="sourceType === 'contextmenu'">
|
||||
<div class="text">
|
||||
{{$t('节点执行')}}
|
||||
{{$t('Node execution')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-radio-group v-model="taskDependType">
|
||||
<x-radio :label="'TASK_POST'">{{$t('向后执行')}}</x-radio>
|
||||
<x-radio :label="'TASK_PRE'">{{$t('向前执行')}}</x-radio>
|
||||
<x-radio :label="'TASK_ONLY'">{{$t('仅执行当前节点')}}</x-radio>
|
||||
<x-radio :label="'TASK_POST'">{{$t('Backward execution')}}</x-radio>
|
||||
<x-radio :label="'TASK_PRE'">{{$t('Forward execution')}}</x-radio>
|
||||
<x-radio :label="'TASK_ONLY'">{{$t('Execute only the current node')}}</x-radio>
|
||||
</x-radio-group>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('通知策略')}}
|
||||
{{$t('Notification strategy')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-select style="width: 200px;" v-model="warningType">
|
||||
@ -43,7 +43,7 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('流程优先级')}}
|
||||
{{$t('Process priority')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<m-priority v-model="processInstancePriority"></m-priority>
|
||||
@ -51,14 +51,14 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('通知组')}}
|
||||
{{$t('Notification group')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-select
|
||||
style="width: 200px;"
|
||||
v-model="warningGroupId"
|
||||
:disabled="!notifyGroupList.length">
|
||||
<x-input slot="trigger" slot-scope="{ selectedModel }" readonly :placeholder="$t('请选择通知组')" :value="selectedModel ? selectedModel.label : ''" style="width: 200px;" @on-click-icon.stop="warningGroupId = {}">
|
||||
<x-input slot="trigger" slot-scope="{ selectedModel }" readonly :placeholder="$t('Please select a notification group')" :value="selectedModel ? selectedModel.label : ''" style="width: 200px;" @on-click-icon.stop="warningGroupId = {}">
|
||||
<i slot="suffix" class="fa fa-times-circle" style="font-size: 15px;cursor: pointer;" v-show="warningGroupId.id"></i>
|
||||
<i slot="suffix" class="ans-icon-arrow-down" style="font-size: 12px;" v-show="!warningGroupId.id"></i>
|
||||
</x-input>
|
||||
@ -73,7 +73,7 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('收件人')}}
|
||||
{{$t('Recipient')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<m-email v-model="receivers" :repeat-data="receiversCc"></m-email>
|
||||
@ -81,7 +81,7 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('抄送人')}}
|
||||
{{$t('Cc')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<m-email v-model="receiversCc" :repeat-data="receivers"></m-email>
|
||||
@ -89,29 +89,29 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('补数')}}
|
||||
{{$t('Complement Data')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<div style="padding-top: 6px;">
|
||||
<x-checkbox v-model="execType">{{$t('是否补数')}}</x-checkbox>
|
||||
<x-checkbox v-model="execType">{{$t('Whether it is a complement process?')}}</x-checkbox>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<template v-if="execType">
|
||||
<div class="clearfix list" style="margin:-6px 0 16px 0">
|
||||
<div class="text">
|
||||
{{$t('执行方式')}}
|
||||
{{$t('Mode of execution')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-radio-group v-model="runMode" style="margin-top: 7px;">
|
||||
<x-radio :label="'RUN_MODE_SERIAL'">{{$t('串行执行')}}</x-radio>
|
||||
<x-radio :label="'RUN_MODE_PARALLEL'">{{$t('并行执行')}}</x-radio>
|
||||
<x-radio :label="'RUN_MODE_SERIAL'">{{$t('Serial execution')}}</x-radio>
|
||||
<x-radio :label="'RUN_MODE_PARALLEL'">{{$t('Parallel execution')}}</x-radio>
|
||||
</x-radio-group>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('时间')}}
|
||||
{{$t('Date')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-datepicker
|
||||
@ -121,15 +121,15 @@
|
||||
@on-change="_datepicker"
|
||||
:value="scheduleTime"
|
||||
type="daterange"
|
||||
:placeholder="$t('选择日期区间')"
|
||||
:placeholder="$t('Select date range')"
|
||||
format="YYYY-MM-DD HH:mm:ss">
|
||||
</x-datepicker>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<div class="submit">
|
||||
<x-button type="text" @click="close()"> {{$t('取消')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('启动')}} </x-button>
|
||||
<x-button type="text" @click="close()"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('Start')}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<div class="timing-process-model">
|
||||
<div class="title-box">
|
||||
<span>{{$t('定时前请先设置参数')}}</span>
|
||||
<span>{{$t('Set parameters before timing')}}</span>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('起止时间')}}
|
||||
{{$t('Start and stop time')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-datepicker
|
||||
@ -15,14 +15,14 @@
|
||||
@on-change="_datepicker"
|
||||
:value="scheduleTime"
|
||||
type="daterange"
|
||||
:placeholder="$t('选择日期区间')"
|
||||
:placeholder="$t('Select date range')"
|
||||
format="YYYY-MM-DD HH:mm:ss">
|
||||
</x-datepicker>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('定时')}}
|
||||
{{$t('Timing')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<template>
|
||||
@ -45,18 +45,18 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('失败策略')}}
|
||||
{{$t('Failure Strategy')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-radio-group v-model="failureStrategy" style="margin-top: 7px;">
|
||||
<x-radio :label="'CONTINUE'">{{$t('继续')}}</x-radio>
|
||||
<x-radio :label="'END'">{{$t('结束')}}</x-radio>
|
||||
<x-radio :label="'CONTINUE'">{{$t('Continue')}}</x-radio>
|
||||
<x-radio :label="'END'">{{$t('End')}}</x-radio>
|
||||
</x-radio-group>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('通知策略')}}
|
||||
{{$t('Notification strategy')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-select
|
||||
@ -73,7 +73,7 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('流程优先级')}}
|
||||
{{$t('Process priority')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<m-priority v-model="processInstancePriority"></m-priority>
|
||||
@ -81,14 +81,14 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('通知组')}}
|
||||
{{$t('Notification group')}}
|
||||
</div>
|
||||
<div class="cont">
|
||||
<x-select
|
||||
style="width: 200px;"
|
||||
:disabled="!notifyGroupList.length"
|
||||
v-model="warningGroupId">
|
||||
<x-input slot="trigger" readonly slot-scope="{ selectedModel }" :placeholder="$t('请选择通知组')" :value="selectedModel ? selectedModel.label : ''" style="width: 200px;" @on-click-icon.stop="warningGroupId = {}">
|
||||
<x-input slot="trigger" readonly slot-scope="{ selectedModel }" :placeholder="$t('Please select a notification group')" :value="selectedModel ? selectedModel.label : ''" style="width: 200px;" @on-click-icon.stop="warningGroupId = {}">
|
||||
<i slot="suffix" class="fa fa-times-circle" style="font-size: 15px;cursor: pointer;" v-show="warningGroupId.id"></i>
|
||||
<i slot="suffix" class="ans-icon-arrow-down" style="font-size: 12px;" v-show="!warningGroupId.id"></i>
|
||||
</x-input>
|
||||
@ -103,7 +103,7 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('收件人')}}
|
||||
{{$t('Recipient')}}
|
||||
</div>
|
||||
<div class="cont" style="width: 680px;">
|
||||
<m-email v-model="receivers" :repeat-data="receiversCc"></m-email>
|
||||
@ -111,15 +111,15 @@
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="text">
|
||||
{{$t('抄送人')}}
|
||||
{{$t('Cc')}}
|
||||
</div>
|
||||
<div class="cont" style="width: 680px;">
|
||||
<m-email v-model="receiversCc" :repeat-data="receivers"></m-email>
|
||||
</div>
|
||||
</div>
|
||||
<div class="submit">
|
||||
<x-button type="text" @click="close()"> {{$t('取消')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : (item.crontab ? $t('编辑') : $t('创建'))}} </x-button>
|
||||
<x-button type="text" @click="close()"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : (item.crontab ? $t('Edit') : $t('Create'))}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@ -166,12 +166,12 @@
|
||||
},
|
||||
_verification () {
|
||||
if (!this.scheduleTime) {
|
||||
this.$message.warning(`${i18n.$t('请选择时间')}`)
|
||||
this.$message.warning(`${i18n.$t('Please select time')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
if (!this.crontab) {
|
||||
this.$message.warning(`${i18n.$t('请填写 crontab')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter crontab')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
@ -192,18 +192,21 @@
|
||||
receivers: this.receivers.join(',') || '',
|
||||
receiversCc: this.receiversCc.join(',') || ''
|
||||
}
|
||||
let msg = ''
|
||||
|
||||
// edit
|
||||
if (this.item.crontab) {
|
||||
api = 'dag/updateSchedule'
|
||||
searchParams.id = this.item.id
|
||||
msg = '编辑成功!不要忘记上线'
|
||||
} else {
|
||||
api = 'dag/createSchedule'
|
||||
searchParams.processDefinitionId = this.item.id
|
||||
msg = '创建成功'
|
||||
}
|
||||
|
||||
this.store.dispatch(api, searchParams).then(res => {
|
||||
this.$message.success(res.msg)
|
||||
this.$message.success(msg)
|
||||
this.$emit('onUpdate')
|
||||
}).catch(e => {
|
||||
this.$message.error(e.msg || '')
|
||||
|
@ -20,19 +20,19 @@ import i18n from '@/module/i18n'
|
||||
let warningTypeList = [
|
||||
{
|
||||
id: 'NONE',
|
||||
code: `${i18n.$t('都不发')}`
|
||||
code: `${i18n.$t('none_1')}`
|
||||
},
|
||||
{
|
||||
id: 'SUCCESS',
|
||||
code: `${i18n.$t('成功发')}`
|
||||
code: `${i18n.$t('success_1')}`
|
||||
},
|
||||
{
|
||||
id: 'FAILURE',
|
||||
code: `${i18n.$t('失败发')}`
|
||||
code: `${i18n.$t('failure_1')}`
|
||||
},
|
||||
{
|
||||
id: 'ALL',
|
||||
code: `${i18n.$t('成功或失败都发')}`
|
||||
code: `${i18n.$t('All_1')}`
|
||||
}
|
||||
]
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('工作流定义')">
|
||||
<m-list-construction :title="$t('Process definition')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" v-ps="['GENERAL_USER']" @click="() => this.$router.push({name: 'definition-create'})">{{$t('创建工作流')}}</x-button>
|
||||
<x-button type="ghost" size="small" v-ps="['GENERAL_USER']" @click="() => this.$router.push({name: 'definition-create'})">{{$t('Create process')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('树形图')">
|
||||
<m-list-construction :title="$t('TreeView')">
|
||||
<template slot="conditions"></template>
|
||||
<template slot="content">
|
||||
<div class="tree-view-index-model">
|
||||
@ -20,13 +20,13 @@
|
||||
type="primary"
|
||||
size="default"
|
||||
icon="fa fa-reply">
|
||||
返回上一节点
|
||||
{{$t('Return_1')}}
|
||||
</x-button>
|
||||
</div>
|
||||
<div class="tasks-color">
|
||||
<div class="toolbar-color-sp">
|
||||
<a href="javascript:">
|
||||
<span>节点类型</span>
|
||||
<span>Node Type</span>
|
||||
</a>
|
||||
<a href="javascript:" v-for="(k,v) in tasksType">
|
||||
<i class="fa fa-circle" :style="{color:k.color}"></i>
|
||||
@ -35,7 +35,7 @@
|
||||
</div>
|
||||
<div class="state-tasks-color-sp">
|
||||
<a href="javascript:">
|
||||
<span>任务状态</span>
|
||||
<span>{{$t('Task Status')}}</span>
|
||||
</a>
|
||||
<a href="javascript:" v-for="(item) in tasksState">
|
||||
<i class="fa fa-square" :style="{color:item.color}"></i>
|
||||
|
@ -9,34 +9,34 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('流程名称')}}</span>
|
||||
<span>{{$t('Process Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('开始时间')}}</span>
|
||||
<span>{{$t('Start Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('结束时间')}}</span>
|
||||
<span>{{$t('End Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('crontab')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('失败策略')}}</span>
|
||||
<span>{{$t('Failure Strategy')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('状态')}}</span>
|
||||
<span>{{$t('State')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -73,7 +73,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_editTiming(item)"
|
||||
icon="iconfont icon-bianji"
|
||||
:disabled="item.releaseState === 'ONLINE'" >
|
||||
@ -83,7 +83,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('上线')"
|
||||
:title="$t('online')"
|
||||
@click="_online(item)"
|
||||
icon="iconfont icon-erji-xiaxianjilu-copy"
|
||||
v-if="item.releaseState === 'OFFLINE'">
|
||||
@ -93,7 +93,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('下线')"
|
||||
:title="$t('offline')"
|
||||
icon="iconfont icon-erji-xiaxianjilu"
|
||||
@click="_offline(item)"
|
||||
v-if="item.releaseState === 'ONLINE'">
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('定时管理')">
|
||||
<m-list-construction :title="$t('Cron Management')">
|
||||
<template slot="content">
|
||||
<m-list></m-list>
|
||||
</template>
|
||||
|
@ -9,14 +9,14 @@
|
||||
@on-change="_datepicker"
|
||||
:value="scheduleTime"
|
||||
type="daterange"
|
||||
:placeholder="$t('选择日期区间')"
|
||||
:placeholder="$t('Select date range')"
|
||||
format="YYYY-MM-DD HH:mm:ss">
|
||||
</x-datepicker>
|
||||
</div>
|
||||
<div class="row" >
|
||||
<div class="col-md-6">
|
||||
<div class="chart-title">
|
||||
<span>{{$t('任务状态统计')}}</span>
|
||||
<span>{{$t('Task status statistics')}}</span>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-7">
|
||||
@ -26,9 +26,9 @@
|
||||
<div class="table-small-model">
|
||||
<table>
|
||||
<tr>
|
||||
<th width="40">{{$t('序号')}}</th>
|
||||
<th>{{$t('数量')}}</th>
|
||||
<th>{{$t('状态')}}</th>
|
||||
<th width="40">{{$t('#')}}</th>
|
||||
<th>{{$t('Number')}}</th>
|
||||
<th>{{$t('State')}}</th>
|
||||
</tr>
|
||||
<tr v-for="(item,$index) in taskCountDtosList">
|
||||
<td><span>{{$index+1}}</span></td>
|
||||
@ -46,7 +46,7 @@
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="chart-title">
|
||||
<span>{{$t('流程状态统计')}}</span>
|
||||
<span>{{$t('Process Status Statistics')}}</span>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-7">
|
||||
@ -56,9 +56,9 @@
|
||||
<div class="table-small-model">
|
||||
<table>
|
||||
<tr>
|
||||
<th width="40">{{$t('序号')}}</th>
|
||||
<th>{{$t('数量')}}</th>
|
||||
<th>{{$t('状态')}}</th>
|
||||
<th width="40">{{$t('#')}}</th>
|
||||
<th>{{$t('Number')}}</th>
|
||||
<th>{{$t('State')}}</th>
|
||||
</tr>
|
||||
<tr v-for="(item,$index) in processStateCountList">
|
||||
<td><span>{{$index+1}}</span></td>
|
||||
@ -74,7 +74,7 @@
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="chart-title" style="margin-bottom: -20px;margin-top: 30px">
|
||||
<span>{{$t('流程定义统计')}}</span>
|
||||
<span>{{$t('Process Definition Statistics')}}</span>
|
||||
</div>
|
||||
<div>
|
||||
<div id="process-definition-bar" style="height:500px"></div>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('项目首页')">
|
||||
<m-list-construction :title="$t('Project Home')">
|
||||
<template slot="content">
|
||||
<m-project-chart :id="id"></m-project-chart>
|
||||
</template>
|
||||
|
@ -1,13 +1,13 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('甘特图')">
|
||||
<m-list-construction :title="$t('Gantt')">
|
||||
<template slot="content">
|
||||
<div class="gantt-model">
|
||||
<div class="gantt-state">
|
||||
<div class="state-tasks-color-sp">
|
||||
<a href="javascript:">
|
||||
<span>{{$t('任务状态')}}</span>
|
||||
<span>{{$t('Task Status')}}</span>
|
||||
</a>
|
||||
<a href="javascript:" v-for="(item) in tasksState">
|
||||
<i class="fa fa-square" :style="{color:item.color}"></i>
|
||||
@ -71,7 +71,7 @@
|
||||
this.isNodata = true
|
||||
return
|
||||
}
|
||||
// 甘特图
|
||||
// Gantt
|
||||
Gantt.init({
|
||||
el: '.gantt',
|
||||
tasks: res.tasks
|
||||
|
@ -23,43 +23,43 @@ import i18n from '@/module/i18n'
|
||||
let stateType = [
|
||||
{
|
||||
code: '',
|
||||
label: `${i18n.$t('无')}`
|
||||
label: `${i18n.$t('none')}`
|
||||
}, {
|
||||
code: 'SUBMITTED_SUCCESS',
|
||||
label: `${i18n.$t('提交成功')}`
|
||||
label: `${i18n.$t('Submitted successfully')}`
|
||||
}, {
|
||||
code: 'RUNNING_EXEUTION',
|
||||
label: `${i18n.$t('正在运行')}`
|
||||
label: `${i18n.$t('Running')}`
|
||||
}, {
|
||||
code: 'READY_PAUSE',
|
||||
label: `${i18n.$t('准备暂停')}`
|
||||
label: `${i18n.$t('Ready to pause')}`
|
||||
}, {
|
||||
code: 'PAUSE',
|
||||
label: `${i18n.$t('暂停')}`
|
||||
label: `${i18n.$t('Pause')}`
|
||||
}, {
|
||||
code: 'READY_STOP',
|
||||
label: `${i18n.$t('准备停止')}`
|
||||
label: `${i18n.$t('Ready to stop')}`
|
||||
}, {
|
||||
code: 'STOP',
|
||||
label: `${i18n.$t('停止')}`
|
||||
label: `${i18n.$t('Stop')}`
|
||||
}, {
|
||||
code: 'FAILURE',
|
||||
label: `${i18n.$t('失败')}`
|
||||
label: `${i18n.$t('failed')}`
|
||||
}, {
|
||||
code: 'SUCCESS',
|
||||
label: `${i18n.$t('成功')}`
|
||||
label: `${i18n.$t('success')}`
|
||||
}, {
|
||||
code: 'NEED_FAULT_TOLERANCE',
|
||||
label: `${i18n.$t('需要容错')}`
|
||||
label: `${i18n.$t('Need fault tolerance')}`
|
||||
}, {
|
||||
code: 'KILL',
|
||||
label: `${i18n.$t('kill')}`
|
||||
}, {
|
||||
code: 'WAITTING_THREAD',
|
||||
label: `${i18n.$t('等待线程')}`
|
||||
label: `${i18n.$t('Waiting for thread')}`
|
||||
}, {
|
||||
code: 'WAITTING_DEPEND',
|
||||
label: `${i18n.$t('等待依赖完成')}`
|
||||
label: `${i18n.$t('Waiting for dependency to complete')}`
|
||||
}
|
||||
]
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
placement="bottom-end"
|
||||
v-model="datepicker"
|
||||
:panelNum="2">
|
||||
<x-input slot="input" readonly slot-scope="{value}" :value="value" style="width: 310px;" size="small" :placeholder="$t('按选择日期区间')">
|
||||
<x-input slot="input" readonly slot-scope="{value}" :value="value" style="width: 310px;" size="small" :placeholder="$t('Select date range')">
|
||||
<i slot="suffix"
|
||||
@click.stop="_dateEmpty()"
|
||||
class="ans-icon-fail-solid"
|
||||
@ -25,7 +25,7 @@
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-select style="width: 160px;" @on-change="_onChangeState" :value="stateType" >
|
||||
<x-input slot="trigger" readonly :value="selectedModel ? selectedModel.label : ''" slot-scope="{ selectedModel }" style="width: 160px;" size="small" :placeholder="$t('按状态')" suffix-icon="ans-icon-arrow-down">
|
||||
<x-input slot="trigger" readonly :value="selectedModel ? selectedModel.label : ''" slot-scope="{ selectedModel }" style="width: 160px;" size="small" :placeholder="$t('State')" suffix-icon="ans-icon-arrow-down">
|
||||
</x-input>
|
||||
<x-option
|
||||
v-for="city in stateTypeList"
|
||||
@ -39,7 +39,7 @@
|
||||
<x-input v-model="host" style="width: 140px;" size="small" :placeholder="$t('host')"></x-input>
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-input v-model="searchVal" style="width: 200px;" size="small" :placeholder="$t('按名称')"></x-input>
|
||||
<x-input v-model="searchVal" style="width: 200px;" size="small" :placeholder="$t('name')"></x-input>
|
||||
</div>
|
||||
</template>
|
||||
</m-conditions>
|
||||
|
@ -4,37 +4,37 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('工作流名称')}}</span>
|
||||
<span>{{$t('Process Name')}}</span>
|
||||
</th>
|
||||
<th width="120">
|
||||
<span>{{$t('运行类型')}}</span>
|
||||
<span>{{$t('Run Type')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('开始时间')}}</span>
|
||||
<span>{{$t('Start Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('结束时间')}}</span>
|
||||
<span>{{$t('End Time')}}</span>
|
||||
</th>
|
||||
<th width="90">
|
||||
<span>{{$t('运行时长(s)')}}</span>
|
||||
<span>{{$t('Duration')}}s</span>
|
||||
</th>
|
||||
<th width="72">
|
||||
<span>{{$t('运行次数')}}</span>
|
||||
<span>{{$t('Run Times')}}</span>
|
||||
</th>
|
||||
<th width="100">
|
||||
<span>{{$t('host')}}</span>
|
||||
</th>
|
||||
<th width="70">
|
||||
<span>{{$t('容错标识')}}</span>
|
||||
<span>{{$t('fault-tolerant sign')}}</span>
|
||||
</th>
|
||||
<th width="50">
|
||||
<span>{{$t('状态')}}</span>
|
||||
<span>{{$t('State')}}</span>
|
||||
</th>
|
||||
<th width="260">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -67,55 +67,55 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_reEdit(item)"
|
||||
v-ps="['GENERAL_USER']"
|
||||
icon="iconfont icon-bianjixiugai"
|
||||
:disabled="item.state !== 'SUCCESS' && item.state !== 'PAUSE' && item.state !== 'FAILURE' && item.state !== 'STOP'"><!--{{$t('编辑')}}--></x-button>
|
||||
:disabled="item.state !== 'SUCCESS' && item.state !== 'PAUSE' && item.state !== 'FAILURE' && item.state !== 'STOP'"></x-button>
|
||||
<x-button type="info"
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('重跑')"
|
||||
:title="$t('Rerun')"
|
||||
@click="_reRun(item,$index)"
|
||||
v-ps="['GENERAL_USER']"
|
||||
icon="iconfont icon-shuaxin"
|
||||
:disabled="item.state !== 'SUCCESS' && item.state !== 'PAUSE' && item.state !== 'FAILURE' && item.state !== 'STOP'"><!--{{$t('重跑')}}--></x-button>
|
||||
:disabled="item.state !== 'SUCCESS' && item.state !== 'PAUSE' && item.state !== 'FAILURE' && item.state !== 'STOP'"></x-button>
|
||||
<x-button type="success"
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('恢复失败')"
|
||||
:title="$t('Recovery Failed')"
|
||||
@click="_restore(item,$index)"
|
||||
v-ps="['GENERAL_USER']"
|
||||
icon="iconfont icon-cuowuguanbishibai"
|
||||
:disabled="item.state !== 'FAILURE'"><!--{{$t('恢复失败')}}--></x-button>
|
||||
:disabled="item.state !== 'FAILURE'"></x-button>
|
||||
<x-button type="error"
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('停止')"
|
||||
:title="$t('Stop')"
|
||||
@click="_stop(item)"
|
||||
v-ps="['GENERAL_USER']"
|
||||
icon="iconfont icon-zanting1"
|
||||
:disabled="item.state !== 'RUNNING_EXEUTION'"><!--{{$t('停止')}}--></x-button>
|
||||
:disabled="item.state !== 'RUNNING_EXEUTION'"></x-button>
|
||||
<x-button type="warning"
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="item.state === 'PAUSE' ? $t('恢复暂停') : $t('暂停')"
|
||||
:title="item.state === 'PAUSE' ? $t('Recovery Suspend') : $t('Pause')"
|
||||
@click="_suspend(item,$index)"
|
||||
v-ps="['GENERAL_USER']"
|
||||
:icon="item.state === 'PAUSE' ? 'iconfont icon-ai06' : 'iconfont icon-zanting'"
|
||||
:disabled="item.state !== 'RUNNING_EXEUTION' && item.state !== 'PAUSE'"><!--{{item.state === 'PAUSE' ? $t('恢复暂停') : $t('暂停')}}--></x-button>
|
||||
:disabled="item.state !== 'RUNNING_EXEUTION' && item.state !== 'PAUSE'"></x-button>
|
||||
<x-poptip
|
||||
:ref="'poptip-delete-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -124,7 +124,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
</template>
|
||||
@ -134,15 +134,14 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('甘特图')"
|
||||
:title="$t('Gantt')"
|
||||
@click="_gantt(item)"
|
||||
icon="iconfont icon-gantt">
|
||||
<!--{{$t('甘特图')}}-->
|
||||
</x-button>
|
||||
|
||||
</div>
|
||||
<div v-show="!item.disabled">
|
||||
<!--编辑-->
|
||||
<!--Edit-->
|
||||
<x-button
|
||||
type="info"
|
||||
shape="circle"
|
||||
@ -151,7 +150,7 @@
|
||||
disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--重跑-->
|
||||
<!--Rerun-->
|
||||
<x-button
|
||||
v-show="buttonType === 'run'"
|
||||
type="info"
|
||||
@ -169,7 +168,7 @@
|
||||
disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--恢复失败-->
|
||||
<!--Recovery Failed-->
|
||||
<x-button
|
||||
v-show="buttonType === 'store'"
|
||||
type="success"
|
||||
@ -187,7 +186,7 @@
|
||||
disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--停止-->
|
||||
<!--Stop-->
|
||||
<x-button
|
||||
type="error"
|
||||
shape="circle"
|
||||
@ -196,7 +195,7 @@
|
||||
disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--倒计时 => 恢复暂停/暂停-->
|
||||
<!--倒计时 => Recovery Suspend/Pause-->
|
||||
<x-button
|
||||
v-show="item.state === 'PAUSE' && buttonType === 'suspend'"
|
||||
type="warning"
|
||||
@ -205,7 +204,7 @@
|
||||
disabled="true">
|
||||
{{item.count}}s
|
||||
</x-button>
|
||||
<!--恢复暂停-->
|
||||
<!--Recovery Suspend-->
|
||||
<x-button
|
||||
v-show="item.state === 'PAUSE' && buttonType !== 'suspend'"
|
||||
type="warning"
|
||||
@ -214,7 +213,7 @@
|
||||
icon="iconfont icon-ai06"
|
||||
disabled="true">
|
||||
</x-button>
|
||||
<!--暂停-->
|
||||
<!--Pause-->
|
||||
<x-button
|
||||
v-show="item.state !== 'PAUSE'"
|
||||
type="warning"
|
||||
@ -224,7 +223,7 @@
|
||||
disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--删除-->
|
||||
<!--delete-->
|
||||
<x-button
|
||||
type="error"
|
||||
shape="circle"
|
||||
@ -233,7 +232,7 @@
|
||||
:disabled="true">
|
||||
</x-button>
|
||||
|
||||
<!--甘特图-->
|
||||
<!--Gantt-->
|
||||
<x-button
|
||||
type="info"
|
||||
shape="circle"
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('工作流实例')">
|
||||
<m-list-construction :title="$t('Process Instance')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-query="_onQuery"></m-conditions>
|
||||
</template>
|
||||
@ -43,7 +43,7 @@
|
||||
total: null,
|
||||
// 数据
|
||||
processInstanceList: [],
|
||||
// 参数
|
||||
// Parameter
|
||||
searchParams: {
|
||||
// 搜索关键词
|
||||
searchVal: '',
|
||||
@ -53,11 +53,11 @@
|
||||
pageNo: 1,
|
||||
// host
|
||||
host: '',
|
||||
// 状态
|
||||
// State
|
||||
stateType: '',
|
||||
// 开始时间
|
||||
// Start Time
|
||||
startDate: '',
|
||||
// 结束时间
|
||||
// End Time
|
||||
endDate: ''
|
||||
}
|
||||
}
|
||||
@ -66,7 +66,7 @@
|
||||
methods: {
|
||||
...mapActions('dag', ['getProcessInstance']),
|
||||
/**
|
||||
* 查询
|
||||
* Query
|
||||
*/
|
||||
_onQuery (o) {
|
||||
this.searchParams = _.assign(this.searchParams, o)
|
||||
|
@ -1,25 +1,25 @@
|
||||
<template>
|
||||
<m-popup ref="popup" :ok-text="item ? $t('确认编辑') : $t('确认提交')" :nameText="item ? $t('编辑项目') : $t('创建项目')" @ok="_ok">
|
||||
<m-popup ref="popup" :ok-text="item ? $t('Edit') : $t('Submit')" :nameText="item ? $t('Edit') : $t('Create Project')" @ok="_ok">
|
||||
<template slot="content">
|
||||
<div class="projects-create-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('项目名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Project Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="projectName"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
@ -78,7 +78,7 @@
|
||||
},
|
||||
_verification () {
|
||||
if (!this.projectName) {
|
||||
this.$message.warning(`${i18n.$t('请输入名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter name')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -4,25 +4,25 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('项目名称')}}</span>
|
||||
<span>{{$t('Project Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('所属用户')}}</span>
|
||||
<span>{{$t('Owned Users')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -49,7 +49,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_edit(item)"
|
||||
icon="iconfont icon-bianjixiugai"
|
||||
v-ps="['GENERAL_USER']">
|
||||
@ -58,10 +58,10 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -69,7 +69,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
icon="iconfont icon-shanchu"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
|
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<m-list-construction :title="$t('项目管理')">
|
||||
<m-list-construction :title="$t('Project')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')" v-ps="['GENERAL_USER']">{{$t('创建项目')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')" v-ps="['GENERAL_USER']">{{$t('Create Project')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
|
@ -4,40 +4,40 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('名称')}}</span>
|
||||
<span>{{$t('Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('工作流实例')}}</span>
|
||||
<span>{{$t('Process Instance')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('节点类型')}}</span>
|
||||
<span>{{$t('Node Type')}}</span>
|
||||
</th>
|
||||
<th width="40">
|
||||
<span>{{$t('状态')}}</span>
|
||||
<span>{{$t('State')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('提交时间')}}</span>
|
||||
<span>{{$t('Submit Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('开始时间')}}</span>
|
||||
<span>{{$t('Start Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('结束时间')}}</span>
|
||||
<span>{{$t('End Time')}}</span>
|
||||
</th>
|
||||
<th width="110">
|
||||
<span>{{$t('host')}}</span>
|
||||
</th>
|
||||
<th width="74">
|
||||
<span>{{$t('运行时长')}}(s)</span>
|
||||
<span>{{$t('Duration')}}(s)</span>
|
||||
</th>
|
||||
<th width="84">
|
||||
<span>{{$t('重试次数')}}</span>
|
||||
<span>{{$t('Retry Count')}}</span>
|
||||
</th>
|
||||
<th width="50">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -66,7 +66,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('查看日志')"
|
||||
:title="$t('View log')"
|
||||
icon="iconfont icon-xitongcaozuorizhi"
|
||||
@click="_refreshLog(item)">
|
||||
</x-button>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('任务实例')">
|
||||
<m-list-construction :title="$t('Task Instance')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-query="_onQuery"></m-conditions>
|
||||
</template>
|
||||
|
@ -4,37 +4,37 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('任务名称')}}</span>
|
||||
<span>{{$t('Task Name')}}</span>
|
||||
</th>
|
||||
<th width="66">
|
||||
<span>{{$t('任务日期')}}</span>
|
||||
<span>{{$t('Task Date')}}</span>
|
||||
</th>
|
||||
<th width="150">
|
||||
<span>{{$t('开始时间')}}</span>
|
||||
<span>{{$t('Start Time')}}</span>
|
||||
</th>
|
||||
<th width="150">
|
||||
<span>{{$t('结束时间')}}</span>
|
||||
<span>{{$t('End Time')}}</span>
|
||||
</th>
|
||||
<th width="134">
|
||||
<span>{{$t('运行时长')}}({{$t('秒')}})</span>
|
||||
<span>{{$t('Duration')}}(s)</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('源表')}}</span>
|
||||
<span>{{$t('Source Table')}}</span>
|
||||
</th>
|
||||
<th width="100">
|
||||
<span>{{$t('记录数')}}</span>
|
||||
<span>{{$t('Record Number')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('目标表')}}</span>
|
||||
<span>{{$t('Target Table')}}</span>
|
||||
</th>
|
||||
<th width="100">
|
||||
<span>{{$t('记录数')}}</span>
|
||||
<span>{{$t('Record Number')}}</span>
|
||||
</th>
|
||||
<th width="88">
|
||||
<span>{{$t('状态')}}</span>
|
||||
<span>{{$t('State')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -45,8 +45,14 @@
|
||||
<span class="ellipsis" data-toggle="tooltip" data-container="body" :title="_rtTooltip(item.procName)" data-html="true">{{item.procName}}</span>
|
||||
</td>
|
||||
<td><span>{{item.procDate}}</span></td>
|
||||
<td><span>{{item.startTime | formatDate}}</span></td>
|
||||
<td><span>{{item.endTime | formatDate}}</span></td>
|
||||
<td>
|
||||
<span v-if="item.startTime">{{item.startTime | formatDate}}</span>
|
||||
<span v-else>-</span>
|
||||
</td>
|
||||
<td>
|
||||
<span v-if="item.endTime">{{item.endTime | formatDate}}</span>
|
||||
<span v-else>-</span>
|
||||
</td>
|
||||
<td><span>{{item.duration}}</span></td>
|
||||
<td><span class="ellipsis" data-toggle="tooltip" data-container="body" :title="_rtTooltip(item.sourceTab)" data-html="true">{{item.sourceTab}}</span></td>
|
||||
<td>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'projects'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('任务记录')">
|
||||
<m-list-construction :title="$t('Task record')">
|
||||
<template slot="conditions">
|
||||
<m-conditions>
|
||||
<template slot="search-group">
|
||||
@ -16,7 +16,7 @@
|
||||
format="YYYY-MM-DD HH:mm:ss"
|
||||
placement="bottom-end"
|
||||
:panelNum="2">
|
||||
<x-input slot="input" readonly slot-scope="{value}" :value="value" style="width: 310px;" size="small" :placeholder="$t('按选择日期区间')">
|
||||
<x-input slot="input" readonly slot-scope="{value}" :value="value" style="width: 310px;" size="small" :placeholder="$t('Select date range')">
|
||||
<i slot="suffix"
|
||||
@click.stop="_dateEmpty()"
|
||||
class="ans-icon-fail-solid"
|
||||
@ -27,14 +27,14 @@
|
||||
</x-datepicker>
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-input v-model="destTable" style="width: 120px;" size="small" :placeholder="$t('按目标表')"></x-input>
|
||||
<x-input v-model="destTable" style="width: 120px;" size="small" :placeholder="$t('Target Table')"></x-input>
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-input v-model="sourceTable" style="width: 120px;" size="small" :placeholder="$t('按源表')"></x-input>
|
||||
<x-input v-model="sourceTable" style="width: 120px;" size="small" :placeholder="$t('Source Table')"></x-input>
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-select style="width: 90px;" @on-change="_onChangeState">
|
||||
<x-input slot="trigger" readonly :value="selectedModel ? selectedModel.label : ''" slot-scope="{ selectedModel }" style="width: 90px;" size="small" :placeholder="$t('按状态')" suffix-icon="ans-icon-arrow-down"></x-input>
|
||||
<x-input slot="trigger" readonly :value="selectedModel ? selectedModel.label : ''" slot-scope="{ selectedModel }" style="width: 90px;" size="small" :placeholder="$t('State')" suffix-icon="ans-icon-arrow-down"></x-input>
|
||||
<x-option
|
||||
v-for="city in stateList"
|
||||
:key="city.label"
|
||||
@ -48,11 +48,11 @@
|
||||
@on-change="_onChangeDate"
|
||||
format="YYYY-MM-DD"
|
||||
:panelNum="1">
|
||||
<x-input slot="input" readonly slot-scope="{value}" style="width: 130px;" :value="value" size="small" :placeholder="$t('按日期')"></x-input>
|
||||
<x-input slot="input" readonly slot-scope="{value}" style="width: 130px;" :value="value" size="small" :placeholder="$t('Date')"></x-input>
|
||||
</x-datepicker>
|
||||
</div>
|
||||
<div class="list">
|
||||
<x-input v-model="taskName" style="width: 130px;" size="small" :placeholder="$t('按任务名称')"></x-input>
|
||||
<x-input v-model="taskName" style="width: 130px;" size="small" :placeholder="$t('Task Name')"></x-input>
|
||||
</div>
|
||||
</template>
|
||||
</m-conditions>
|
||||
@ -101,27 +101,27 @@
|
||||
endDate: '',
|
||||
stateList: [
|
||||
{
|
||||
label: `${i18n.$t('无')}`,
|
||||
label: `${i18n.$t('none')}`,
|
||||
code: ``
|
||||
},
|
||||
{
|
||||
label: `${i18n.$t('成功')}`,
|
||||
code: `${i18n.$t('成功')}`
|
||||
label: `${i18n.$t('success')}`,
|
||||
code: `${i18n.$t('success')}`
|
||||
},
|
||||
{
|
||||
label: `${i18n.$t('等待')}`,
|
||||
code: `${i18n.$t('等待')}`
|
||||
label: `${i18n.$t('waiting')}`,
|
||||
code: `${i18n.$t('waiting')}`
|
||||
},
|
||||
{
|
||||
label: `${i18n.$t('执行中')}`,
|
||||
code: `${i18n.$t('执行中')}`
|
||||
label: `${i18n.$t('In Execution')}`,
|
||||
code: `${i18n.$t('In Execution')}`
|
||||
},
|
||||
{
|
||||
label: `${i18n.$t('完成')}`,
|
||||
code: `${i18n.$t('完成')}`
|
||||
label: `${i18n.$t('Finish')}`,
|
||||
code: `${i18n.$t('Finish')}`
|
||||
}, {
|
||||
label: `${i18n.$t('失败')}`,
|
||||
code: `${i18n.$t('失败')}`
|
||||
label: `${i18n.$t('failed')}`,
|
||||
code: `${i18n.$t('failed')}`
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<m-list-construction :title="$t('定时管理')">
|
||||
<m-list-construction :title="$t('Cron Management')">
|
||||
<template slot="content">
|
||||
<m-list></m-list>
|
||||
</template>
|
||||
|
@ -1,23 +1,23 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'resource'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('创建文件')">
|
||||
<m-list-construction :title="$t('Create File')">
|
||||
<template slot="content">
|
||||
<div class="resource-create-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('文件名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('File Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="fileName"
|
||||
style="width: 300px;"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('文件格式')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('File Format')}}</template>
|
||||
<template slot="content">
|
||||
<x-select v-model="suffix" style="width: 100px;" @on-change="_onChange">
|
||||
<x-option
|
||||
@ -30,19 +30,19 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
style="width: 430px;"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('文件内容')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('File Content')}}</template>
|
||||
<template slot="content">
|
||||
<textarea id="code-create-mirror" name="code-create-mirror"></textarea>
|
||||
</template>
|
||||
@ -51,8 +51,8 @@
|
||||
<template slot="name"> </template>
|
||||
<template slot="content">
|
||||
<div class="submit">
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('确认创建')}} </x-button>
|
||||
<x-button type="text" @click="() => $router.push({name: 'file'})"> {{$t('取消')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" v-ps="['GENERAL_USER']">{{spinnerLoading ? 'Loading...' : $t('Create')}} </x-button>
|
||||
<x-button type="text" @click="() => $router.push({name: 'file'})"> {{$t('Cancel')}} </x-button>
|
||||
</div>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
@ -112,11 +112,11 @@
|
||||
},
|
||||
_validation () {
|
||||
if (!this.fileName) {
|
||||
this.$message.warning(`${i18n.$t('请输入资源名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter resource name')}`)
|
||||
return false
|
||||
}
|
||||
if (!editor.getValue()) {
|
||||
this.$message.warning(`${i18n.$t('请输入资源内容')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the resource content')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="no-type-model">
|
||||
<img src="./down_error.png" alt="">
|
||||
<p>{{$t('不支持在线查看类型')}}</p>
|
||||
<p>{{$t('Online viewing type is not supported')}}</p>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
@ -1,13 +1,13 @@
|
||||
<template>
|
||||
<div class="main-layout-box file-details-model">
|
||||
<m-secondary-menu :type="'resource'" ></m-secondary-menu>
|
||||
<m-list-construction :title="$t('文件详情')">
|
||||
<m-list-construction :title="$t('File Details')">
|
||||
<div slot="content" style="margin: 20px">
|
||||
<div class="file-details-content">
|
||||
<h2>
|
||||
<span>{{name}}</span>
|
||||
<div class="down">
|
||||
<i class="iconfont" data-container="body" data-toggle="tooltip" :title="$t('下载详情')" @click="_downloadFile"></i>
|
||||
<i class="iconfont" data-container="body" data-toggle="tooltip" :title="$t('Download Details')" @click="_downloadFile"></i>
|
||||
<em>{{size}}</em>
|
||||
</div>
|
||||
</h2>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'resource'" ></m-secondary-menu>
|
||||
<m-list-construction :title="$t('文件详情')">
|
||||
<m-list-construction :title="$t('File Details')">
|
||||
<div slot="content" style="margin: 20px">
|
||||
<div class="file-edit-content">
|
||||
<h2>
|
||||
@ -13,8 +13,8 @@
|
||||
<textarea id="code-edit-mirror" name="code-edit-mirror"></textarea>
|
||||
</div>
|
||||
<div class="submit-c">
|
||||
<x-button type="text" shape="circle" @click="close()" :disabled="disabled"> {{$t('返回')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()">{{spinnerLoading ? 'Loading...' : $t('保存')}} </x-button>
|
||||
<x-button type="text" shape="circle" @click="close()" :disabled="disabled"> {{$t('Return')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()">{{spinnerLoading ? 'Loading...' : $t('Save')}} </x-button>
|
||||
</div>
|
||||
</template>
|
||||
<m-no-data :msg="msg" v-if="msg"></m-no-data>
|
||||
|
@ -4,25 +4,25 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('名称')}}</span>
|
||||
<span>{{$t('Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('文件名称')}}</span>
|
||||
<span>{{$t('File Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th width="100">
|
||||
<span>{{$t('大小')}}</span>
|
||||
<span>{{$t('Size')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -48,7 +48,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
:disabled="_rtDisb(item)"
|
||||
@click="_edit(item,$index)"
|
||||
icon="iconfont icon-bianjixiugai"
|
||||
@ -60,7 +60,7 @@
|
||||
size="xsmall"
|
||||
icon="iconfont icon-wendangxiugai"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('重命名')"
|
||||
:title="$t('Rename')"
|
||||
@click="_rename(item,$index)"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
@ -70,7 +70,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('下载')"
|
||||
:title="$t('Download')"
|
||||
@click="_downloadFile(item)"
|
||||
icon="iconfont icon-download"
|
||||
v-ps="['GENERAL_USER']">
|
||||
@ -80,10 +80,10 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -92,7 +92,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
</template>
|
||||
|
@ -1,25 +1,25 @@
|
||||
<template>
|
||||
<m-popup :ok-text="$t('确认重命名')" :nameText="$t('重命名')" @ok="_ok" :asyn-loading="true">
|
||||
<m-popup :ok-text="$t('Confirm Rename')" :nameText="$t('Rename')" @ok="_ok" :asyn-loading="true">
|
||||
<template slot="content">
|
||||
<div class="resource-rename-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="name"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
@ -73,7 +73,7 @@
|
||||
return new Promise((resolve, reject) => {
|
||||
if (!this.name) {
|
||||
reject({ // eslint-disable-line
|
||||
msg: `${i18n.$t('请输入资源名称')}`
|
||||
msg: `${i18n.$t('Please enter resource name')}`
|
||||
})
|
||||
} else {
|
||||
resolve()
|
||||
|
@ -1,13 +1,13 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'resource'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('文件管理')">
|
||||
<m-list-construction :title="$t('File Management')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button-group size="small" >
|
||||
<x-button type="ghost" @click="() => $router.push({name: 'resource-file-create'})" v-ps="['GENERAL_USER']">{{$t('创建文件')}}</x-button>
|
||||
<x-button type="ghost" @click="_uploading" v-ps="['GENERAL_USER']">{{$t('上传文件')}}</x-button>
|
||||
<x-button type="ghost" @click="() => $router.push({name: 'resource-file-create'})" v-ps="['GENERAL_USER']">{{$t('Create File')}}</x-button>
|
||||
<x-button type="ghost" @click="_uploading" v-ps="['GENERAL_USER']">{{$t('Upload Files')}}</x-button>
|
||||
</x-button-group>
|
||||
</template>
|
||||
</m-conditions>
|
||||
@ -55,7 +55,7 @@
|
||||
methods: {
|
||||
...mapActions('resource', ['getResourcesListP']),
|
||||
/**
|
||||
* 文件上传
|
||||
* File Upload
|
||||
*/
|
||||
_uploading () {
|
||||
findComponentDownward(this.$root, 'roof-nav')._fileUpdate('FILE')
|
||||
|
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<m-popup :ok-text="item ? $t('编辑') : $t('确定提交')" :nameText="item ? $t('编辑UDF函数') : $t('创建UDF函数')" @ok="_ok" ref="popup">
|
||||
<m-popup :ok-text="item ? $t('Edit') : $t('Submit')" :nameText="item ? $t('Edit UDF Function') : $t('Create UDF Function')" @ok="_ok" ref="popup">
|
||||
<template slot="content">
|
||||
<div class="udf-create-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('类型')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('type')}}</template>
|
||||
<template slot="content">
|
||||
<x-radio-group v-model="type">
|
||||
<x-radio :label="'HIVE'">HIVE UDF</x-radio>
|
||||
@ -12,49 +12,49 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('UDF函数名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('UDF Function Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
maxlength="40"
|
||||
v-model="funcName"
|
||||
:placeholder="$t('请输入函数名')">
|
||||
:placeholder="$t('Please enter a function name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('包名类名')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Package Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
maxlength="40"
|
||||
v-model="className"
|
||||
:placeholder="$t('请输入包名类名')">
|
||||
:placeholder="$t('Please enter a Package name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('参数')}}</template>
|
||||
<template slot="name">{{$t('Parameter')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="argTypes"
|
||||
:placeholder="$t('请输入参数')">
|
||||
:placeholder="$t('Please enter a parameter')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('数据库名')}}</template>
|
||||
<template slot="name">{{$t('Database Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="database"
|
||||
:placeholder="$t('请输入数据库名')">
|
||||
:placeholder="$t('Please enter database name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('UDF资源')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('UDF Resources')}}</template>
|
||||
<template slot="content">
|
||||
<x-select
|
||||
filterable
|
||||
@ -68,7 +68,7 @@
|
||||
:label="city.alias">
|
||||
</x-option>
|
||||
</x-select>
|
||||
<x-button type="primary" @click="_toggleUpdate" :disabled="upDisabled">{{$t('上传资源')}}</x-button>
|
||||
<x-button type="primary" @click="_toggleUpdate" :disabled="upDisabled">{{$t('Upload Resources')}}</x-button>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f v-if="isUpdate">
|
||||
@ -81,12 +81,12 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('使用说明')}}</template>
|
||||
<template slot="name">{{$t('Instructions')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入使用说明')">
|
||||
:placeholder="$t('Please enter a instructions')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
@ -209,15 +209,15 @@
|
||||
*/
|
||||
_validation () {
|
||||
if (!this.funcName) {
|
||||
this.$message.warning(`${i18n.$t('请输入UDF函数名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a UDF function name')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.className) {
|
||||
this.$message.warning(`${i18n.$t('请输入包名类名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a Package name')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.resourceId) {
|
||||
this.$message.warning(`${i18n.$t('请选择UDF资源')}`)
|
||||
this.$message.warning(`${i18n.$t('Select UDF Resources')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -4,34 +4,34 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('UDF函数名称')}}</span>
|
||||
<span>{{$t('UDF Function Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('类名')}}</span>
|
||||
<span>{{$t('Class Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('参数')}}</span>
|
||||
<span>{{$t('Parameter')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('类型')}}</span>
|
||||
<span>{{$t('type')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('jar包')}}</span>
|
||||
<span>{{$t('Jar Package')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('库名')}}</span>
|
||||
<span>{{$t('Library Name')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -68,7 +68,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_edit(item)"
|
||||
icon="iconfont icon-bianjixiugai"
|
||||
v-ps="['GENERAL_USER']">
|
||||
@ -77,10 +77,10 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -89,7 +89,7 @@
|
||||
size="xsmall"
|
||||
icon="iconfont icon-shanchu"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
</template>
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'resource'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('UDF函数管理')">
|
||||
<m-list-construction :title="$t('UDF Function')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" @click="_create" v-ps="['GENERAL_USER']" size="small" >{{$t('创建UDF函数')}}</x-button>
|
||||
<x-button type="ghost" @click="_create" v-ps="['GENERAL_USER']" size="small" >{{$t('Create UDF Function')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
|
@ -4,28 +4,28 @@
|
||||
<table class="fixed">
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('UDF资源名称')}}</span>
|
||||
<span>{{$t('UDF Resource Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('文件名称')}}</span>
|
||||
<span>{{$t('File Name')}}</span>
|
||||
</th>
|
||||
<th width="80">
|
||||
<span>{{$t('文件大小')}}</span>
|
||||
<span>{{$t('File Size')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('文件描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th width="140">
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="110">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -57,7 +57,7 @@
|
||||
size="xsmall"
|
||||
icon="iconfont icon-wendangxiugai"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('重命名')"
|
||||
:title="$t('Rename')"
|
||||
@click="_rename(item,$index)"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
@ -66,7 +66,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('下载')"
|
||||
:title="$t('Download')"
|
||||
icon="iconfont icon-download"
|
||||
@click="_downloadFile(item)"
|
||||
v-ps="['GENERAL_USER']">
|
||||
@ -75,10 +75,10 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -86,7 +86,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
icon="iconfont icon-shanchu"
|
||||
v-ps="['GENERAL_USER']">
|
||||
</x-button>
|
||||
|
@ -1,25 +1,25 @@
|
||||
<template>
|
||||
<m-popup :ok-text="$t('确认重命名')" :nameText="$t('重命名')" @ok="_ok" :asyn-loading="true">
|
||||
<m-popup :ok-text="$t('Confirm Rename')" :nameText="$t('Rename')" @ok="_ok" :asyn-loading="true">
|
||||
<template slot="content">
|
||||
<div class="resource-rename-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="name"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
@ -73,7 +73,7 @@
|
||||
return new Promise((resolve, reject) => {
|
||||
if (!this.name) {
|
||||
reject({ // eslint-disable-line
|
||||
msg: `${i18n.$t('请输入资源名称')}`
|
||||
msg: `${i18n.$t('Please enter resource name')}`
|
||||
})
|
||||
} else {
|
||||
resolve()
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'resource'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('UDF资源管理')">
|
||||
<m-list-construction :title="$t('UDF Resources')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_uploading" v-ps="['GENERAL_USER']">{{$t('上传UDF资源')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_uploading" v-ps="['GENERAL_USER']">{{$t('Upload UDF Resources')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
@ -52,7 +52,7 @@
|
||||
methods: {
|
||||
...mapActions('resource', ['getResourcesListP']),
|
||||
/**
|
||||
* 文件上传
|
||||
* File Upload
|
||||
*/
|
||||
_uploading () {
|
||||
findComponentDownward(this.$root, 'roof-nav')._fileUpdate('UDF')
|
||||
|
@ -1,18 +1,18 @@
|
||||
<template>
|
||||
<m-popup
|
||||
ref="popup"
|
||||
:ok-text="item ? $t('确认编辑') : $t('确认提交')"
|
||||
:nameText="item ? $t('编辑队列') : $t('创建队列')"
|
||||
:ok-text="item ? $t('Edit') : $t('Submit')"
|
||||
:nameText="item ? $t('Edit queue') : $t('Create queue')"
|
||||
@ok="_ok">
|
||||
<template slot="content">
|
||||
<div class="create-tenement-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>名称</template>
|
||||
<template slot="name"><b>*</b>{{$t('Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="queueName"
|
||||
placeholder="请输入名称"
|
||||
placeholder="Please enter name"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
@ -103,7 +103,7 @@
|
||||
},
|
||||
_verification(){
|
||||
if (!this.queueName) {
|
||||
this.$message.warning(`请输入名称`)
|
||||
this.$message.warning(`Please enter name`)
|
||||
return false
|
||||
}
|
||||
if (!this.queue) {
|
||||
|
@ -4,22 +4,22 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('名称')}}</span>
|
||||
<span>{{$t('Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>队列值</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="70">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -54,7 +54,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_edit(item)"
|
||||
icon="iconfont icon-bianjixiugai">
|
||||
</x-button>
|
||||
@ -62,13 +62,13 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('删除')">{{$t('删除')}}</x-button>
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('delete')">{{$t('delete')}}</x-button>
|
||||
</template>
|
||||
</x-poptip>-->
|
||||
</td>
|
||||
|
@ -2,11 +2,11 @@
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<template>
|
||||
<m-list-construction :title="$t('队列管理')">
|
||||
<m-list-construction :title="$t('Queue manage')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('创建队列')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('Create queue')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
@ -52,7 +52,7 @@
|
||||
methods: {
|
||||
...mapActions('security', ['getQueueListP']),
|
||||
/**
|
||||
* 查询
|
||||
* Query
|
||||
*/
|
||||
_onConditions (o) {
|
||||
this.searchVal = o.searchVal
|
||||
|
@ -4,16 +4,16 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('ip')}}</span>
|
||||
<span>{{$t('IP')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('进程pid')}}</span>
|
||||
<span>{{$t('Process Pid')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('zk注册目录')}}</span>
|
||||
<span>{{$t('zk registration directory')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('cpuUsage')}}</span>
|
||||
@ -22,10 +22,10 @@
|
||||
<span>{{$t('memoryUsage')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('最后心跳时间')}}</span>
|
||||
<span>{{$t('Last heartbeat time')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('服务管理-Master')">
|
||||
<m-list-construction :title="$t('Service-Master')">
|
||||
<template slot="content">
|
||||
<template v-if="masterList.length">
|
||||
<m-list :list="masterList"></m-list>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('服务管理-Worker')">
|
||||
<m-list-construction :title="$t('Service-Worker')">
|
||||
<template slot="content">
|
||||
<template v-if="workerList.length">
|
||||
<m-list :list="workerList"></m-list>
|
||||
|
@ -1,35 +1,35 @@
|
||||
<template>
|
||||
<m-popup
|
||||
ref="popup"
|
||||
:ok-text="item ? $t('确认编辑') : $t('确认提交')"
|
||||
:nameText="item ? $t('编辑租户') : $t('创建租户')"
|
||||
:ok-text="item ? $t('Edit') : $t('Submit')"
|
||||
:nameText="item ? $t('Edit Tenant') : $t('Create Tenant')"
|
||||
@ok="_ok">
|
||||
<template slot="content">
|
||||
<div class="create-tenement-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('租户编码')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Tenant Code')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
:disabled="item ? true : false"
|
||||
v-model="tenantCode"
|
||||
:placeholder="$t('请输入name')">
|
||||
:placeholder="$t('Please enter name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('租户名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Tenant Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="tenantName"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('队列')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Queue')}}</template>
|
||||
<template slot="content">
|
||||
<x-select v-model="queueId">
|
||||
<x-option
|
||||
@ -42,12 +42,12 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
@ -116,15 +116,15 @@
|
||||
_verification () {
|
||||
let isEn = /^[A-Za-z]+$/
|
||||
if (!this.tenantCode) {
|
||||
this.$message.warning(`${i18n.$t('请输入租户编码只允许英文')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the tenant code in English')}`)
|
||||
return false
|
||||
}
|
||||
if (!isEn.test(this.tenantCode)) {
|
||||
this.$message.warning(`${i18n.$t('请输入英文租户编码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter tenant code in English')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.tenantName) {
|
||||
this.$message.warning(`${i18n.$t('请输入租户名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter name')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -4,28 +4,28 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('租户编码')}}</span>
|
||||
<span>{{$t('Tenant Code')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('租户名称')}}</span>
|
||||
<span>{{$t('Tenant Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('描述')}}</span>
|
||||
<span>{{$t('Description')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('队列')}}</span>
|
||||
<span>{{$t('Queue')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="70">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -60,7 +60,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('编辑')"
|
||||
:title="$t('Edit')"
|
||||
@click="_edit(item)"
|
||||
icon="iconfont icon-bianjixiugai">
|
||||
</x-button>
|
||||
@ -68,13 +68,13 @@
|
||||
:ref="'poptip-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('删除')">{{$t('删除')}}</x-button>
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('delete')">{{$t('delete')}}</x-button>
|
||||
</template>
|
||||
</x-poptip>-->
|
||||
</td>
|
||||
|
@ -2,11 +2,11 @@
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<template>
|
||||
<m-list-construction :title="$t('租户管理')">
|
||||
<m-list-construction :title="$t('Tenant Management')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('创建租户')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('Create Tenant')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
@ -52,7 +52,7 @@
|
||||
methods: {
|
||||
...mapActions('security', ['getTenantListP']),
|
||||
/**
|
||||
* 查询
|
||||
* Query
|
||||
*/
|
||||
_onConditions (o) {
|
||||
this.searchVal = o.searchVal
|
||||
|
@ -1,33 +1,33 @@
|
||||
<template>
|
||||
<m-popup
|
||||
ref="popup"
|
||||
:ok-text="item ? $t('确认编辑') : $t('确认提交')"
|
||||
:nameText="item ? $t('编辑用户') : $t('创建用户')"
|
||||
:ok-text="item ? $t('Edit') : $t('Submit')"
|
||||
:nameText="item ? $t('Edit User') : $t('Create User')"
|
||||
@ok="_ok">
|
||||
<template slot="content">
|
||||
<div class="create-user-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('用户名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('User Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="userName"
|
||||
:placeholder="$t('请输入用户名称')">
|
||||
:placeholder="$t('Please enter user name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f v-if="router.history.current.name !== 'account'">
|
||||
<template slot="name"><b>*</b>{{$t('密码')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Password')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="userPassword"
|
||||
:placeholder="$t('请输入密码')">
|
||||
:placeholder="$t('Please enter your password')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f v-if="isADMIN">
|
||||
<template slot="name"><b>*</b>{{$t('租户')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Tenant')}}</template>
|
||||
<template slot="content">
|
||||
<x-select v-model="tenantId">
|
||||
<x-option
|
||||
@ -40,22 +40,22 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('邮件')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Email')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="email"
|
||||
:placeholder="$t('请输入邮件')">
|
||||
:placeholder="$t('Please enter email')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('手机')}}</template>
|
||||
<template slot="name">{{$t('Phone')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="phone"
|
||||
:placeholder="$t('请输入手机')">
|
||||
:placeholder="$t('Please enter phone number')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
@ -116,28 +116,28 @@
|
||||
|
||||
// user name
|
||||
if (!this.userName) {
|
||||
this.$message.warning(`${i18n.$t('请输入用户名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter user name')}`)
|
||||
return false
|
||||
}
|
||||
// password
|
||||
if (!this.userPassword && !this.item) {
|
||||
this.$message.warning(`${i18n.$t('请输入密码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter your password')}`)
|
||||
return false
|
||||
}
|
||||
// email
|
||||
if (!this.email) {
|
||||
this.$message.warning(`${i18n.$t('请输入邮箱')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter email')}`)
|
||||
return false
|
||||
}
|
||||
// Verify email
|
||||
if (!regEmail.test(this.email)) {
|
||||
this.$message.warning(`${i18n.$t('请输入正确的邮箱格式')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the correct email format')}`)
|
||||
return false
|
||||
}
|
||||
// Verify phone
|
||||
if (this.phone) {
|
||||
if (!regPhone.test(this.phone)) {
|
||||
this.$message.warning(`${i18n.$t('请输入正确的手机格式')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter the correct mobile phone format')}`)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
@ -4,28 +4,28 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('用户名称')}}</span>
|
||||
<span>{{$t('User Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('租户')}}</span>
|
||||
<span>{{$t('Tenant')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('邮箱')}}</span>
|
||||
<span>{{$t('Email')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('手机')}}</span>
|
||||
<span>{{$t('Phone')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="120">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="item.id">
|
||||
@ -52,26 +52,26 @@
|
||||
popper-class="user-list-poptip"
|
||||
placement="bottom-end">
|
||||
<div class="auth-select-box">
|
||||
<a href="javascript:" @click="_authProject(item,$index)">{{$t('项目')}}</a>
|
||||
<a href="javascript:" @click="_authFile(item,$index)">{{$t('资源')}}</a>
|
||||
<a href="javascript:" @click="_authDataSource(item,$index)">{{$t('数据源')}}</a>
|
||||
<a href="javascript:" @click="_authUdfFunc(item,$index)">{{$t('UDF函数')}}</a>
|
||||
<a href="javascript:" @click="_authProject(item,$index)">{{$t('Project')}}</a>
|
||||
<a href="javascript:" @click="_authFile(item,$index)">{{$t('Resources')}}</a>
|
||||
<a href="javascript:" @click="_authDataSource(item,$index)">{{$t('Datasource')}}</a>
|
||||
<a href="javascript:" @click="_authUdfFunc(item,$index)">{{$t('UDF Function')}}</a>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button type="warning" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('授权')" icon="iconfont icon-yonghu1"></x-button>
|
||||
<x-button type="warning" shape="circle" size="xsmall" data-toggle="tooltip" :title="$t('Authorize')" icon="iconfont icon-yonghu1"></x-button>
|
||||
</template>
|
||||
</x-poptip>
|
||||
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-bianjixiugai" :title="$t('编辑')" @click="_edit(item)">
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-bianjixiugai" :title="$t('Edit')" @click="_edit(item)">
|
||||
</x-button>
|
||||
<x-poptip
|
||||
:ref="'poptip-delete-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button
|
||||
@ -79,7 +79,7 @@
|
||||
shape="circle"
|
||||
size="xsmall"
|
||||
data-toggle="tooltip"
|
||||
:title="$t('删除')"
|
||||
:title="$t('delete')"
|
||||
icon="iconfont icon-shanchu">
|
||||
</x-button>
|
||||
</template>
|
||||
@ -174,7 +174,7 @@
|
||||
sourceListPrs: sourceListPrs,
|
||||
targetListPrs: targetListPrs,
|
||||
type: {
|
||||
name: `${i18n.$t('项目')}`
|
||||
name: `${i18n.$t('Project')}`
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -226,7 +226,7 @@
|
||||
sourceListPrs: sourceListPrs,
|
||||
targetListPrs: targetListPrs,
|
||||
type: {
|
||||
name: `${i18n.$t('资源')}`
|
||||
name: `${i18n.$t('Resources')}`
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -278,7 +278,7 @@
|
||||
sourceListPrs: sourceListPrs,
|
||||
targetListPrs: targetListPrs,
|
||||
type: {
|
||||
name: `${i18n.$t('数据源')}`
|
||||
name: `${i18n.$t('Datasource')}`
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -330,7 +330,7 @@
|
||||
sourceListPrs: sourceListPrs,
|
||||
targetListPrs: targetListPrs,
|
||||
type: {
|
||||
name: 'UDF函数'
|
||||
name: 'UDF Function'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@ -2,11 +2,11 @@
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<template>
|
||||
<m-list-construction :title="$t('用户管理')">
|
||||
<m-list-construction :title="$t('User Management')">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('创建用户')}}</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('Create User')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
@ -52,7 +52,7 @@
|
||||
methods: {
|
||||
...mapActions('security', ['getUsersList']),
|
||||
/**
|
||||
* 查询
|
||||
* Query
|
||||
*/
|
||||
_onConditions (o) {
|
||||
this.searchVal = o.searchVal
|
||||
|
@ -1,23 +1,23 @@
|
||||
<template>
|
||||
<m-popup
|
||||
ref="popup"
|
||||
:ok-text="item ? $t('确认编辑') : $t('确认提交')"
|
||||
:nameText="item ? $t('编辑告警组') : $t('创建告警组')"
|
||||
:ok-text="item ? $t('Edit') : $t('Submit')"
|
||||
:nameText="item ? $t('Edit alarm group') : $t('Create alarm group')"
|
||||
@ok="_ok">
|
||||
<template slot="content">
|
||||
<div class="create-warning-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('组名称')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Group Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="groupName"
|
||||
:placeholder="$t('请输入组名称')">
|
||||
:placeholder="$t('Please enter group name')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('组类型')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Group Type')}}</template>
|
||||
<template slot="content">
|
||||
<x-select v-model="groupType">
|
||||
<x-option
|
||||
@ -30,12 +30,12 @@
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('备注')}}</template>
|
||||
<template slot="name">{{$t('Remarks')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:placeholder="$t('请输入desc')">
|
||||
:placeholder="$t('Please enter description')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
@ -57,7 +57,7 @@
|
||||
groupName: '',
|
||||
groupType: 'EMAIL',
|
||||
desc: '',
|
||||
options: [{ code: `${i18n.$t('邮件')}`, id: 'EMAIL' }, { code: `${i18n.$t('短信')}`, id: 'SMS' }]
|
||||
options: [{ code: `${i18n.$t('Email')}`, id: 'EMAIL' }, { code: `${i18n.$t('SMS')}`, id: 'SMS' }]
|
||||
}
|
||||
},
|
||||
props: {
|
||||
@ -86,7 +86,7 @@
|
||||
_verification () {
|
||||
// group name
|
||||
if (!this.groupName) {
|
||||
this.$message.warning(`${i18n.$t('请输入组名称')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter group name')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -4,25 +4,25 @@
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<span>{{$t('编号')}}</span>
|
||||
<span>{{$t('#')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('组名称')}}</span>
|
||||
<span>{{$t('Group Name')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('组类型')}}</span>
|
||||
<span>{{$t('Group Type')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('备注')}}</span>
|
||||
<span>{{$t('Remarks')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('创建时间')}}</span>
|
||||
<span>{{$t('Create Time')}}</span>
|
||||
</th>
|
||||
<th>
|
||||
<span>{{$t('更新时间')}}</span>
|
||||
<span>{{$t('Update Time')}}</span>
|
||||
</th>
|
||||
<th width="120">
|
||||
<span>{{$t('操作')}}</span>
|
||||
<span>{{$t('Operation')}}</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr v-for="(item, $index) in list" :key="$index">
|
||||
@ -34,7 +34,7 @@
|
||||
<a href="javascript:" class="links">{{item.groupName}}</a>
|
||||
</span>
|
||||
</td>
|
||||
<td><span>{{item.groupType === 'EMAIL' ? '邮件' : '短信'}}</span></td>
|
||||
<td><span>{{item.groupType === 'EMAIL' ? `${$t('Email')}` : `${$t('SMS')}`}}</span></td>
|
||||
<td>
|
||||
<span>{{item.desc}}</span>
|
||||
</td>
|
||||
@ -43,21 +43,21 @@
|
||||
</td>
|
||||
<td><span>{{item.updateTime | formatDate}}</span></td>
|
||||
<td>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-yonghu1" :title="$t('管理用户')" @click="_mangeUser(item)">
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-yonghu1" :title="$t('Managing Users')" @click="_mangeUser(item)">
|
||||
</x-button>
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-bianjixiugai" :title="$t('编辑')" @click="_edit(item)">
|
||||
<x-button type="info" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-bianjixiugai" :title="$t('Edit')" @click="_edit(item)">
|
||||
</x-button>
|
||||
<x-poptip
|
||||
:ref="'poptip-delete-' + $index"
|
||||
placement="bottom-end"
|
||||
width="90">
|
||||
<p>{{$t('确定删除吗?')}}</p>
|
||||
<p>{{$t('Delete?')}}</p>
|
||||
<div style="text-align: right; margin: 0;padding-top: 4px;">
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('取消')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('确定')}}</x-button>
|
||||
<x-button type="text" size="xsmall" shape="circle" @click="_closeDelete($index)">{{$t('Cancel')}}</x-button>
|
||||
<x-button type="primary" size="xsmall" shape="circle" @click="_delete(item,$index)">{{$t('Confirm')}}</x-button>
|
||||
</div>
|
||||
<template slot="reference">
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-shanchu" :title="$t('删除')">
|
||||
<x-button type="error" shape="circle" size="xsmall" data-toggle="tooltip" icon="iconfont icon-shanchu" :title="$t('delete')">
|
||||
</x-button>
|
||||
</template>
|
||||
</x-poptip>
|
||||
@ -150,7 +150,7 @@
|
||||
sourceListPrs: sourceListPrs,
|
||||
targetListPrs: targetListPrs,
|
||||
type: {
|
||||
name: `${i18n.$t('管理用户')}`
|
||||
name: `${i18n.$t('Managing Users')}`
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@ -2,11 +2,11 @@
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'security'"></m-secondary-menu>
|
||||
<template>
|
||||
<m-list-construction :title="'告警组管理'">
|
||||
<m-list-construction :title="'Warning group management'">
|
||||
<template slot="conditions">
|
||||
<m-conditions @on-conditions="_onConditions">
|
||||
<template slot="button-group">
|
||||
<x-button type="ghost" size="small" @click="_create('')">创建告警组</x-button>
|
||||
<x-button type="ghost" size="small" @click="_create('')">{{$t('Create alarm group')}}</x-button>
|
||||
</template>
|
||||
</m-conditions>
|
||||
</template>
|
||||
|
@ -1,49 +1,49 @@
|
||||
<template>
|
||||
<div class="user-info-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('用户名称')}}</template>
|
||||
<template slot="name">{{$t('User Name')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.userName}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('邮箱')}}</template>
|
||||
<template slot="name">{{$t('Email')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.email}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('手机')}}</template>
|
||||
<template slot="name">{{$t('Phone')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.phone}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('权限')}}</template>
|
||||
<template slot="name">{{$t('Permission')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.userType === 'GENERAL_USER' ? `${$t('普通用户')}` : `${$t('管理员')}`}}</span>
|
||||
<span class="sp1">{{userInfo.userType === 'GENERAL_USER' ? `${$t('Ordinary users')}` : `${$t('Administrator')}`}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f v-ps="['GENERAL_USER']">
|
||||
<template slot="name">{{$t('租户')}}</template>
|
||||
<template slot="name">{{$t('Tenant')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.tenantName}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f v-ps="['GENERAL_USER']">
|
||||
<template slot="name">{{$t('队列')}}</template>
|
||||
<template slot="name">{{$t('Queue')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.queueName}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('创建时间')}}</template>
|
||||
<template slot="name">{{$t('Create Time')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.createTime | formatDate}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('更新时间')}}</template>
|
||||
<template slot="name">{{$t('Update Time')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.updateTime | formatDate}}</span>
|
||||
</template>
|
||||
@ -51,7 +51,7 @@
|
||||
<m-list-box-f>
|
||||
<template slot="name"> </template>
|
||||
<template slot="content">
|
||||
<x-button type="primary" shape="circle" @click="_edit()" >{{$t('修改')}}</x-button>
|
||||
<x-button type="primary" shape="circle" @click="_edit()" >{{$t('Edit')}}</x-button>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
</div>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'user'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('用户信息')">
|
||||
<m-list-construction :title="$t('User Information')">
|
||||
<template slot="content">
|
||||
<m-info></m-info>
|
||||
</template>
|
||||
|
@ -1,37 +1,37 @@
|
||||
<template>
|
||||
<div class="user-info-model password-model">
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('用户名称')}}</template>
|
||||
<template slot="name">{{$t('User Name')}}</template>
|
||||
<template slot="content">
|
||||
<span class="sp1">{{userInfo.userName}}</span>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('密码')}}</template>
|
||||
<template slot="name">{{$t('Password')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
style="width: 320px;"
|
||||
type="password"
|
||||
v-model="userPassword"
|
||||
:placeholder="$t('请输入密码')">
|
||||
:placeholder="$t('Please enter your password')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('确认密码')}}</template>
|
||||
<template slot="name">{{$t('Confirm Password')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
style="width: 320px;"
|
||||
type="password"
|
||||
v-model="oldUserPassword"
|
||||
:placeholder="$t('请输入确认密码')">
|
||||
:placeholder="$t('Please enter confirm password')">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"> </template>
|
||||
<template slot="content">
|
||||
<x-button type="primary" shape="circle" @click="_edit()" :loading="spinnerLoading">{{spinnerLoading ? 'Loading...' : '修改'}}</x-button>
|
||||
<x-button type="primary" shape="circle" @click="_edit()" :loading="spinnerLoading">{{spinnerLoading ? 'Loading...' : 'Edit'}}</x-button>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
</div>
|
||||
@ -92,33 +92,33 @@
|
||||
|
||||
// password
|
||||
if (regCn.test(this.userPassword)) {
|
||||
this.$message.warning(`${i18n.$t('密码不能为中文')}`)
|
||||
this.$message.warning(`${i18n.$t('Password cannot be in Chinese')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.userPassword) {
|
||||
this.$message.warning(`${i18n.$t('请输入密码(6-22)字符密码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a password (6-22) character password')}`)
|
||||
return false
|
||||
}
|
||||
if (this.userPassword.length < 6 || this.userPassword.length > 22) {
|
||||
this.$message.warning(`${i18n.$t('请输入密码(6-22)字符密码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a password (6-22) character password')}`)
|
||||
return false
|
||||
}
|
||||
|
||||
// confirm password
|
||||
if (regCn.test(this.oldUserPassword)) {
|
||||
this.$message.warning(`${i18n.$t('确认密码不能为中文')}`)
|
||||
this.$message.warning(`${i18n.$t('Confirmation password cannot be in Chinese')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.oldUserPassword) {
|
||||
this.$message.warning(`${i18n.$t('请输入确认密码(6-22)字符密码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a confirmation password (6-22) character password')}`)
|
||||
return false
|
||||
}
|
||||
if (this.oldUserPassword.length < 6 || this.oldUserPassword.length > 22) {
|
||||
this.$message.warning(`${i18n.$t('请输入确认密码(6-22)字符密码')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter a confirmation password (6-22) character password')}`)
|
||||
return false
|
||||
}
|
||||
if (this.userPassword !== this.oldUserPassword) {
|
||||
this.$message.warning(`${i18n.$t('密码与确认密码不一致,请重新确认')}`)
|
||||
this.$message.warning(`${i18n.$t('The password is inconsistent with the confirmation password')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="main-layout-box">
|
||||
<m-secondary-menu :type="'user'"></m-secondary-menu>
|
||||
<m-list-construction :title="$t('密码修改')">
|
||||
<m-list-construction :title="$t('Edit Password')">
|
||||
<template slot="content">
|
||||
<m-info></m-info>
|
||||
</template>
|
||||
|
@ -35,7 +35,7 @@ const router = new Router({
|
||||
name: 'home',
|
||||
component: resolve => require(['../pages/home/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('首页')} - EasyScheduler`
|
||||
title: `${i18n.$t('Home')} - EasyScheduler`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -43,7 +43,7 @@ const router = new Router({
|
||||
name: 'projects',
|
||||
component: resolve => require(['../pages/projects/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('项目管理')}`
|
||||
title: `${i18n.$t('Project')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'projects-list'
|
||||
@ -54,7 +54,7 @@ const router = new Router({
|
||||
name: 'projects-index',
|
||||
component: resolve => require(['../pages/projects/pages/index/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('项目首页')}`
|
||||
title: `${i18n.$t('Project Home')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -62,7 +62,7 @@ const router = new Router({
|
||||
name: 'projects-list',
|
||||
component: resolve => require(['../pages/projects/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('项目')}`
|
||||
title: `${i18n.$t('Project')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -70,7 +70,7 @@ const router = new Router({
|
||||
name: 'definition',
|
||||
component: resolve => require(['../pages/projects/pages/definition/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('工作流定义')}`
|
||||
title: `${i18n.$t('Process definition')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'projects-definition-list'
|
||||
@ -81,7 +81,7 @@ const router = new Router({
|
||||
name: 'projects-definition-list',
|
||||
component: resolve => require(['../pages/projects/pages/definition/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('工作流定义')}`
|
||||
title: `${i18n.$t('Process definition')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -89,7 +89,7 @@ const router = new Router({
|
||||
name: 'projects-definition-details',
|
||||
component: resolve => require(['../pages/projects/pages/definition/pages/details/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('流程定义详情')}`
|
||||
title: `${i18n.$t('Process definition details')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -97,7 +97,7 @@ const router = new Router({
|
||||
name: 'definition-create',
|
||||
component: resolve => require(['../pages/projects/pages/definition/pages/create/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('创建流程定义')}`
|
||||
title: `${i18n.$t('Create process definition')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -105,7 +105,7 @@ const router = new Router({
|
||||
name: 'definition-tree-view-index',
|
||||
component: resolve => require(['../pages/projects/pages/definition/pages/tree/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('树形图')}`
|
||||
title: `${i18n.$t('TreeView')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -113,7 +113,7 @@ const router = new Router({
|
||||
name: 'definition-timing-details',
|
||||
component: resolve => require(['../pages/projects/pages/definition/timing/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('定时任务列表')}`
|
||||
title: `${i18n.$t('Scheduled task list')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -123,7 +123,7 @@ const router = new Router({
|
||||
name: 'instance',
|
||||
component: resolve => require(['../pages/projects/pages/instance/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('工作流实例')}`
|
||||
title: `${i18n.$t('Process Instance')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'projects-instance-list'
|
||||
@ -134,7 +134,7 @@ const router = new Router({
|
||||
name: 'projects-instance-list',
|
||||
component: resolve => require(['../pages/projects/pages/instance/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('工作流实例')}`
|
||||
title: `${i18n.$t('Process Instance')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -142,7 +142,7 @@ const router = new Router({
|
||||
name: 'projects-instance-details',
|
||||
component: resolve => require(['../pages/projects/pages/instance/pages/details/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('流程实例详情')}`
|
||||
title: `${i18n.$t('Process instance details')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -150,7 +150,7 @@ const router = new Router({
|
||||
name: 'instance-gantt-index',
|
||||
component: resolve => require(['../pages/projects/pages/instance/pages/gantt/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('甘特图')}`
|
||||
title: `${i18n.$t('Gantt')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -160,7 +160,7 @@ const router = new Router({
|
||||
name: 'task-instance-index',
|
||||
component: resolve => require(['../pages/projects/pages/taskInstance'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('任务实例')}`
|
||||
title: `${i18n.$t('Task Instance')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'task-instance-list'
|
||||
@ -171,7 +171,7 @@ const router = new Router({
|
||||
name: 'task-instance-list',
|
||||
component: resolve => require(['../pages/projects/pages/taskInstance/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('任务实例')}`
|
||||
title: `${i18n.$t('Task Instance')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -181,7 +181,7 @@ const router = new Router({
|
||||
name: 'task-record-index',
|
||||
component: resolve => require(['../pages/projects/pages/taskRecord'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('任务记录')}`
|
||||
title: `${i18n.$t('Task record')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'task-record-list'
|
||||
@ -192,7 +192,7 @@ const router = new Router({
|
||||
name: 'task-record-list',
|
||||
component: resolve => require(['../pages/projects/pages/taskRecord/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('任务记录')}`
|
||||
title: `${i18n.$t('Task record')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -207,7 +207,7 @@ const router = new Router({
|
||||
name: 'file'
|
||||
},
|
||||
meta: {
|
||||
title: `${i18n.$t('资源中心')}`
|
||||
title: `${i18n.$t('Resources')}`
|
||||
},
|
||||
children: [
|
||||
{
|
||||
@ -215,7 +215,7 @@ const router = new Router({
|
||||
name: 'file',
|
||||
component: resolve => require(['../pages/resource/pages/file/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('文件管理')}`
|
||||
title: `${i18n.$t('File Management')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -223,7 +223,7 @@ const router = new Router({
|
||||
name: 'resource-file-create',
|
||||
component: resolve => require(['../pages/resource/pages/file/pages/create/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('创建资源')}`
|
||||
title: `${i18n.$t('Create Resource')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -231,7 +231,7 @@ const router = new Router({
|
||||
name: 'resource-file-details',
|
||||
component: resolve => require(['../pages/resource/pages/file/pages/details/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('文件详情')}`
|
||||
title: `${i18n.$t('File Details')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -239,7 +239,7 @@ const router = new Router({
|
||||
name: 'resource-file-edit',
|
||||
component: resolve => require(['../pages/resource/pages/file/pages/edit/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('文件详情')}`
|
||||
title: `${i18n.$t('File Details')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -247,7 +247,7 @@ const router = new Router({
|
||||
name: 'udf',
|
||||
component: resolve => require(['../pages/resource/pages/udf/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('UDF管理')}`
|
||||
title: `${i18n.$t('UDF management')}`
|
||||
},
|
||||
children: [
|
||||
{
|
||||
@ -255,7 +255,7 @@ const router = new Router({
|
||||
name: 'resource-udf-resource',
|
||||
component: resolve => require(['../pages/resource/pages/udf/pages/resource/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('UDF资源管理')}`
|
||||
title: `${i18n.$t('UDF Resources')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -263,7 +263,7 @@ const router = new Router({
|
||||
name: 'resource-udf-function',
|
||||
component: resolve => require(['../pages/resource/pages/udf/pages/function/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('UDF函数管理')}`
|
||||
title: `${i18n.$t('UDF Function')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -275,7 +275,7 @@ const router = new Router({
|
||||
name: 'datasource',
|
||||
component: resolve => require(['../pages/datasource/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('数据源中心')}`
|
||||
title: `${i18n.$t('Datasource')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'datasource-list'
|
||||
@ -286,7 +286,7 @@ const router = new Router({
|
||||
name: 'datasource-list',
|
||||
component: resolve => require(['../pages/datasource/pages/list/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('数据源中心')}`
|
||||
title: `${i18n.$t('Datasource')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -296,7 +296,7 @@ const router = new Router({
|
||||
name: 'security',
|
||||
component: resolve => require(['../pages/security/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('安全中心')}`
|
||||
title: `${i18n.$t('Security')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'tenement-manage'
|
||||
@ -307,7 +307,7 @@ const router = new Router({
|
||||
name: 'tenement-manage',
|
||||
component: resolve => require(['../pages/security/pages/tenement/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('租户管理')}`
|
||||
title: `${i18n.$t('Tenant Management')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -315,7 +315,7 @@ const router = new Router({
|
||||
name: 'users-manage',
|
||||
component: resolve => require(['../pages/security/pages/users/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('用户管理')}`
|
||||
title: `${i18n.$t('User Management')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -323,7 +323,7 @@ const router = new Router({
|
||||
name: 'warning-groups-manage',
|
||||
component: resolve => require(['../pages/security/pages/warningGroups/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('告警组管理')}`
|
||||
title: `${i18n.$t('Warning group management')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -331,7 +331,7 @@ const router = new Router({
|
||||
name: 'queue-manage',
|
||||
component: resolve => require(['../pages/security/pages/queue/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('队列管理')}`
|
||||
title: `${i18n.$t('Queue manage')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,7 +339,7 @@ const router = new Router({
|
||||
name: 'servers-manage',
|
||||
component: resolve => require(['../pages/security/pages/servers/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('服务管理')}`
|
||||
title: `${i18n.$t('Servers management')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'servers-master'
|
||||
@ -350,7 +350,7 @@ const router = new Router({
|
||||
name: 'servers-master',
|
||||
component: resolve => require(['../pages/security/pages/servers/pages/master/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('服务管理-Master')}`
|
||||
title: `${i18n.$t('Service-Master')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -358,7 +358,7 @@ const router = new Router({
|
||||
name: 'servers-worker',
|
||||
component: resolve => require(['../pages/security/pages/servers/pages/worker/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('服务管理-Worker')}`
|
||||
title: `${i18n.$t('Service-Worker')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -370,7 +370,7 @@ const router = new Router({
|
||||
name: 'user',
|
||||
component: resolve => require(['../pages/user/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('用户中心')}`
|
||||
title: `${i18n.$t('User Center')}`
|
||||
},
|
||||
redirect: {
|
||||
name: 'account'
|
||||
@ -381,7 +381,7 @@ const router = new Router({
|
||||
name: 'account',
|
||||
component: resolve => require(['../pages/user/pages/account/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('用户信息')}`
|
||||
title: `${i18n.$t('User Information')}`
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -389,7 +389,7 @@ const router = new Router({
|
||||
name: 'password',
|
||||
component: resolve => require(['../pages/user/pages/password/index'], resolve),
|
||||
meta: {
|
||||
title: `${i18n.$t('修改密码')}`
|
||||
title: `${i18n.$t('Edit password')}`
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -5,13 +5,13 @@
|
||||
</div>
|
||||
<div class="from-model">
|
||||
<div class="list">
|
||||
<label>{{$t('用户名')}}</label>
|
||||
<label>{{$t('User Name')}}</label>
|
||||
<div>
|
||||
<x-input
|
||||
size="large"
|
||||
type="text"
|
||||
v-model="userName"
|
||||
:placeholder="$t('请输入用户名')"
|
||||
:placeholder="$t('Please enter user name')"
|
||||
maxlength="20"
|
||||
@on-enterkey="_ok">
|
||||
</x-input>
|
||||
@ -21,13 +21,13 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="list">
|
||||
<label>{{$t('密码')}}</label>
|
||||
<label>{{$t('Password')}}</label>
|
||||
<div>
|
||||
<x-input
|
||||
type="password"
|
||||
size="large"
|
||||
v-model="userPassword"
|
||||
:placeholder="$t('请输入密码')"
|
||||
:placeholder="$t('Please enter your password')"
|
||||
maxlength="20"
|
||||
@on-enterkey="_ok">
|
||||
</x-input>
|
||||
@ -37,7 +37,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="list" style="margin-top: 10px;">
|
||||
<x-button type="primary" shape="circle" size="large" :loading="spinnerLoading" long @click="_ok">{{spinnerLoading ? 'Loading...' : ` ${$t('登录')} `}} </x-button>
|
||||
<x-button type="primary" shape="circle" size="large" :loading="spinnerLoading" long @click="_ok">{{spinnerLoading ? 'Loading...' : ` ${$t('Login')} `}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ctr">Copyright © 2019 Analysys Inc.</div>
|
||||
@ -84,12 +84,12 @@
|
||||
_verification () {
|
||||
let flag = true
|
||||
if (!this.userName) {
|
||||
this.userNameText = `${i18n.$t('请输入用户名')}`
|
||||
this.userNameText = `${i18n.$t('Please enter user name')}`
|
||||
this.isUserName = true
|
||||
flag = false
|
||||
}
|
||||
if (!this.userPassword) {
|
||||
this.userPasswordText = `${i18n.$t('请输入密码')}`
|
||||
this.userPasswordText = `${i18n.$t('Please enter your password')}`
|
||||
this.isUserPassword = true
|
||||
flag = false
|
||||
}
|
||||
|
@ -14,7 +14,7 @@
|
||||
<x-input v-model="searchVal"
|
||||
@on-enterkey="_ckQuery"
|
||||
size="small"
|
||||
:placeholder="$t('请输入关键词')"
|
||||
:placeholder="$t('Please enter keyword')"
|
||||
type="text"
|
||||
style="width:180px;">
|
||||
</x-input>
|
||||
|
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<m-popup
|
||||
ref="popup"
|
||||
:ok-text="$t('确认上传')"
|
||||
:nameText="$t('文件上传')"
|
||||
:ok-text="$t('Confirm Upload')"
|
||||
:nameText="$t('File Upload')"
|
||||
@ok="_ok"
|
||||
:disabled="progress === 0 ? false : true">
|
||||
<template slot="content">
|
||||
@ -14,7 +14,7 @@
|
||||
id="file-update-model">
|
||||
<div class="tooltip-info">
|
||||
<i class="fa fa-info-circle"></i>
|
||||
<span>{{$t('请将文件拖拽到当前上传窗口内!')}}</span>
|
||||
<span>{{$t('Drag the file into the current upload window')}}</span>
|
||||
</div>
|
||||
<!--<div class="hide-archive" v-if="progress !== 0" @click="_ckArchive">
|
||||
<i class="fa fa-minus" data-toggle="tooltip" title="关闭窗口 继续上传" data-container="body" ></i>
|
||||
@ -24,40 +24,40 @@
|
||||
<i class="fa fa-cloud-upload"></i>
|
||||
</div>
|
||||
<p class="p1">
|
||||
<span>{{$t('拖动区域上传')}}</span>
|
||||
<span>{{$t('Drag area upload')}}</span>
|
||||
</p>
|
||||
</div>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('文件名')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('File Name')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="input"
|
||||
v-model="name"
|
||||
:disabled="progress !== 0"
|
||||
:placeholder="$t('请输入name')"
|
||||
:placeholder="$t('Please enter name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name">{{$t('描述')}}</template>
|
||||
<template slot="name">{{$t('Description')}}</template>
|
||||
<template slot="content">
|
||||
<x-input
|
||||
type="textarea"
|
||||
v-model="desc"
|
||||
:disabled="progress !== 0"
|
||||
:placeholder="$t('请输入desc')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</template>
|
||||
</m-list-box-f>
|
||||
<m-list-box-f>
|
||||
<template slot="name"><b>*</b>{{$t('上传文件')}}</template>
|
||||
<template slot="name"><b>*</b>{{$t('Upload Files')}}</template>
|
||||
<template slot="content">
|
||||
<div class="file-update-box">
|
||||
<template v-if="progress === 0">
|
||||
<input name="file" id="file" type="file" class="file-update">
|
||||
<x-button type="dashed" size="xsmall"> {{$t('点击上传')}} </x-button>
|
||||
<x-button type="dashed" size="xsmall"> {{$t('Upload')}} </x-button>
|
||||
</template>
|
||||
<div class="progress-box" v-if="progress !== 0">
|
||||
<m-progress-bar :value="progress" text-placement="left-right"></m-progress-bar>
|
||||
@ -131,11 +131,11 @@
|
||||
*/
|
||||
_validation () {
|
||||
if (!this.name) {
|
||||
this.$message.warning(`${i18n.$t('请输入文件名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter file name')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.file) {
|
||||
this.$message.warning(`${i18n.$t('请选择要上传的文件')}`)
|
||||
this.$message.warning(`${i18n.$t('Please select the file to upload')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -10,12 +10,12 @@
|
||||
v-model="udfName"
|
||||
:disabled="progress !== 0"
|
||||
style="width: 268px"
|
||||
:placeholder="$t('请输入资源名称')"
|
||||
:placeholder="$t('Please enter resource name')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
<div class="p1" style="position: absolute;">
|
||||
<input name="file" id="file" type="file" class="file-update" v-if="!progress">
|
||||
<x-button type="dashed" size="small" :disabled="progress !== 0"> {{$t('点击上传')}} </x-button>
|
||||
<x-button type="dashed" size="small" :disabled="progress !== 0"> {{$t('Upload')}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
@ -25,12 +25,12 @@
|
||||
size="small"
|
||||
v-model="udfDesc"
|
||||
:disabled="progress !== 0"
|
||||
:placeholder="$t('请输入资源描述')"
|
||||
:placeholder="$t('Please enter description')"
|
||||
autocomplete="off">
|
||||
</x-input>
|
||||
</li>
|
||||
<li style="margin-top: -4px;margin-bottom: 8px;">
|
||||
<x-button type="success" size="xsmall" long @click="_ok" :loading="spinnerLoading">{{spinnerLoading ? `Loading... (${progress}%)` : $t('上传UDF资源')}}</x-button>
|
||||
<x-button type="success" size="xsmall" long @click="_ok" :loading="spinnerLoading">{{spinnerLoading ? `Loading... (${progress}%)` : $t('Upload UDF Resources')}}</x-button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
@ -62,11 +62,11 @@
|
||||
*/
|
||||
_validation () {
|
||||
if (!this.udfName) {
|
||||
this.$message.warning(`${i18n.$t('请输入文件名')}`)
|
||||
this.$message.warning(`${i18n.$t('Please enter file name')}`)
|
||||
return false
|
||||
}
|
||||
if (!this.file) {
|
||||
this.$message.warning(`${i18n.$t('请选择要上传的文件')}`)
|
||||
this.$message.warning(`${i18n.$t('Please select the file to upload')}`)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
|
@ -7,28 +7,28 @@
|
||||
<div class="clearfix list">
|
||||
<div class="nav-links">
|
||||
<router-link :to="{ path: '/home'}" tag="a" active-class="active">
|
||||
<span><i class="iconfont"></i>{{$t('首页')}}</span><b></b>
|
||||
<span><i class="iconfont"></i>{{$t('Home')}}</span><b></b>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="nav-links">
|
||||
<router-link :to="{ path: '/projects'}" tag="a" active-class="active">
|
||||
<span><i class="iconfont"></i>{{$t('项目管理')}}</span><b></b>
|
||||
<span><i class="iconfont"></i>{{$t('Project Manage')}}</span><b></b>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="nav-links">
|
||||
<router-link :to="{ path: '/resource'}" tag="a" active-class="active">
|
||||
<span><i class="iconfont"></i>{{$t('资源中心')}}</span><b></b>
|
||||
<span><i class="iconfont"></i>{{$t('Resources manage')}}</span><b></b>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix list">
|
||||
<div class="nav-links">
|
||||
<router-link :to="{ path: '/datasource'}" tag="a" active-class="active">
|
||||
<span><i class="iconfont"></i>{{$t('数据源中心')}}</span><b></b>
|
||||
<span><i class="iconfont"></i>{{$t('Datasource')}}</span><b></b>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
@ -42,14 +42,14 @@
|
||||
<div class="clearfix list" >
|
||||
<div class="nav-links">
|
||||
<router-link :to="{ path: '/security'}" tag="a" active-class="active" v-ps="['ADMIN_USER']">
|
||||
<span><i class="iconfont"></i>{{$t('安全中心')}}</span><b></b>
|
||||
<span><i class="iconfont"></i>{{$t('Security')}}</span><b></b>
|
||||
</router-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right">
|
||||
<!--<span class="docs">
|
||||
<a :href="docLink">{{$t('文档中心')}}</a>
|
||||
<a :href="docLink">doc</a>
|
||||
</span>-->
|
||||
<span class="lang">
|
||||
<x-poptip
|
||||
@ -72,11 +72,11 @@
|
||||
<div class="lrns-list">
|
||||
<a href="javascript:" @click="_goAccount">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('用户信息')}}</span>
|
||||
<span>{{$t('User Information')}}</span>
|
||||
</a>
|
||||
<a href="javascript:" @click="_signOut">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('退出')}}</span>
|
||||
<span>{{$t('Logout')}}</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="login-model" slot="reference">
|
||||
@ -109,23 +109,23 @@
|
||||
<ul @click="mIsNav = false">
|
||||
<router-link :to="{ path: '/home'}" tag="li" active-class="active">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('首页')}}</span>
|
||||
<span>{{$t('Home')}}</span>
|
||||
</router-link>
|
||||
<router-link :to="{ path: '/projects'}" tag="li" active-class="active">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('项目管理')}}</span>
|
||||
<span>{{$t('Project manage')}}</span>
|
||||
</router-link>
|
||||
<router-link :to="{ path: '/resource'}" tag="li" active-class="active">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('资源中心')}}</span>
|
||||
<span>{{$t('Resources manage')}}</span>
|
||||
</router-link>
|
||||
<router-link :to="{ path: '/datasource'}" tag="li" active-class="active">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('数据源中心')}}</span>
|
||||
<span>{{$t('Datasource')}}</span>
|
||||
</router-link>
|
||||
<router-link :to="{ path: '/security'}" tag="li" active-class="active" v-ps="['ADMIN_USER']">
|
||||
<i class="iconfont"></i>
|
||||
<span>{{$t('安全中心')}}</span>
|
||||
<span>{{$t('Security')}}</span>
|
||||
</router-link>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<div class="img">
|
||||
<img src="./images/errorTip.png" alt="">
|
||||
</div>
|
||||
<div class="text">{{msg || $t('查询无数据')}}</div>
|
||||
<div class="text">{{msg || $t('No data')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<slot name="content"></slot>
|
||||
</div>
|
||||
<div class="bottom-p">
|
||||
<x-button type="text" shape="circle" @click="close()" :disabled="disabled"> {{$t('取消')}} </x-button>
|
||||
<x-button type="text" shape="circle" @click="close()" :disabled="disabled"> {{$t('Cancel')}} </x-button>
|
||||
<x-button type="primary" shape="circle" :loading="spinnerLoading" @click="ok()" :disabled="disabled || apDisabled">{{spinnerLoading ? 'Loading...' : okText}} </x-button>
|
||||
</div>
|
||||
</div>
|
||||
@ -25,11 +25,11 @@
|
||||
props: {
|
||||
nameText: {
|
||||
type: String,
|
||||
default: `${i18n.$t('创建')}`
|
||||
default: `${i18n.$t('Create')}`
|
||||
},
|
||||
okText: {
|
||||
type: String,
|
||||
default: `${i18n.$t('确认')}`
|
||||
default: `${i18n.$t('Confirm')}`
|
||||
},
|
||||
disabled: {
|
||||
type: Boolean,
|
||||
|
@ -5,11 +5,11 @@
|
||||
</div>
|
||||
<template v-if="textPlacement === 'bottom'">
|
||||
<div class="textp text-1">
|
||||
{{$t('文件上传中')}} <span>({{value}}%)</span>
|
||||
{{$t('Uploading...')}} <span>({{value}}%)</span>
|
||||
</div>
|
||||
</template>
|
||||
<template v-if="textPlacement === 'left-right'">
|
||||
<div class="textp text-2-1">{{$t('文件上传中')}}</div>
|
||||
<div class="textp text-2-1">{{$t('Uploading...')}}</div>
|
||||
<div class="textp text-2-2"><span>({{value}}%)</span></div>
|
||||
</template>
|
||||
</div>
|
||||
|
@ -19,7 +19,7 @@ import i18n from '@/module/i18n'
|
||||
let menu = {
|
||||
projects: [
|
||||
{
|
||||
name: `${i18n.$t('项目首页')}`,
|
||||
name: `${i18n.$t('Project Home')}`,
|
||||
id: 1,
|
||||
path: 'projects-index',
|
||||
isOpen: true,
|
||||
@ -27,39 +27,39 @@ let menu = {
|
||||
children: []
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('工作流')}`,
|
||||
name: `${i18n.$t('Process')}`,
|
||||
id: 2,
|
||||
path: '',
|
||||
isOpen: true,
|
||||
icon: 'fa-gear',
|
||||
children: [
|
||||
{
|
||||
name: `${i18n.$t('工作流定义')}`,
|
||||
name: `${i18n.$t('Process definition')}`,
|
||||
path: 'definition',
|
||||
id: 1
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('工作流实例')}`,
|
||||
name: `${i18n.$t('Process Instance')}`,
|
||||
path: 'instance',
|
||||
id: 2
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('任务实例')}`,
|
||||
name: `${i18n.$t('Task Instance')}`,
|
||||
path: 'task-instance-list',
|
||||
id: 3
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('Task record')}`,
|
||||
path: 'task-record-list',
|
||||
id: 4
|
||||
}
|
||||
// {
|
||||
// name: `${i18n.$t('任务记录')}`,
|
||||
// path: 'task-record-list',
|
||||
// id: 4
|
||||
// }
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
security: [
|
||||
{
|
||||
name: `${i18n.$t('租户管理')}`,
|
||||
name: `${i18n.$t('Tenant Management')}`,
|
||||
id: 1,
|
||||
path: 'tenement-manage',
|
||||
isOpen: true,
|
||||
@ -67,7 +67,7 @@ let menu = {
|
||||
children: []
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('用户管理')}`,
|
||||
name: `${i18n.$t('User Management')}`,
|
||||
id: 1,
|
||||
path: 'users-manage',
|
||||
isOpen: true,
|
||||
@ -75,7 +75,7 @@ let menu = {
|
||||
children: []
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('告警组管理')}`,
|
||||
name: `${i18n.$t('Warning group management')}`,
|
||||
id: 1,
|
||||
path: 'warning-groups-manage',
|
||||
isOpen: true,
|
||||
@ -83,7 +83,7 @@ let menu = {
|
||||
children: []
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('队列管理')}`,
|
||||
name: `${i18n.$t('Queue manage')}`,
|
||||
id: 1,
|
||||
path: 'queue-manage',
|
||||
isOpen: true,
|
||||
@ -91,7 +91,7 @@ let menu = {
|
||||
children: []
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('服务管理')}`,
|
||||
name: `${i18n.$t('Servers management')}`,
|
||||
id: 1,
|
||||
path: '',
|
||||
isOpen: true,
|
||||
@ -112,7 +112,7 @@ let menu = {
|
||||
],
|
||||
resource: [
|
||||
{
|
||||
name: `${i18n.$t('文件管理')}`,
|
||||
name: `${i18n.$t('File Management')}`,
|
||||
id: 1,
|
||||
path: 'file',
|
||||
isOpen: true,
|
||||
@ -121,7 +121,7 @@ let menu = {
|
||||
disabled: false
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('UDF管理')}`,
|
||||
name: `${i18n.$t('UDF management')}`,
|
||||
id: 1,
|
||||
path: '',
|
||||
isOpen: true,
|
||||
@ -129,12 +129,12 @@ let menu = {
|
||||
disabled: false,
|
||||
children: [
|
||||
{
|
||||
name: `${i18n.$t('资源管理')}`,
|
||||
name: `${i18n.$t('Resource management')}`,
|
||||
path: 'resource-udf-resource',
|
||||
id: 1
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('函数管理')}`,
|
||||
name: `${i18n.$t('Function management')}`,
|
||||
path: 'resource-udf-function',
|
||||
id: 2
|
||||
}
|
||||
@ -143,7 +143,7 @@ let menu = {
|
||||
],
|
||||
user: [
|
||||
{
|
||||
name: `${i18n.$t('用户信息')}`,
|
||||
name: `${i18n.$t('User Information')}`,
|
||||
id: 1,
|
||||
path: 'account',
|
||||
isOpen: true,
|
||||
@ -152,7 +152,7 @@ let menu = {
|
||||
disabled: false
|
||||
},
|
||||
{
|
||||
name: `${i18n.$t('修改密码')}`,
|
||||
name: `${i18n.$t('Edit password')}`,
|
||||
id: 1,
|
||||
path: 'password',
|
||||
isOpen: true,
|
||||
|
@ -4,7 +4,7 @@
|
||||
<svg class="lds-gears" width="54px" height="54px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" style="background: none;"><g transform="translate(50 50)"> <g transform="translate(-19 -19) scale(0.6)"> <g transform="rotate(107.866)">
|
||||
<animateTransform attributeName="transform" type="rotate" values="0;360" keyTimes="0;1" dur="1s" begin="0s" repeatCount="indefinite"></animateTransform><path d="M37.3496987939662 -7 L47.3496987939662 -7 L47.3496987939662 7 L37.3496987939662 7 A38 38 0 0 1 31.359972760794346 21.46047782418268 L31.359972760794346 21.46047782418268 L38.431040572659825 28.531545636048154 L28.531545636048154 38.431040572659825 L21.46047782418268 31.359972760794346 A38 38 0 0 1 7.0000000000000036 37.3496987939662 L7.0000000000000036 37.3496987939662 L7.000000000000004 47.3496987939662 L-6.999999999999999 47.3496987939662 L-7 37.3496987939662 A38 38 0 0 1 -21.46047782418268 31.35997276079435 L-21.46047782418268 31.35997276079435 L-28.531545636048154 38.431040572659825 L-38.43104057265982 28.531545636048158 L-31.359972760794346 21.460477824182682 A38 38 0 0 1 -37.3496987939662 7.000000000000007 L-37.3496987939662 7.000000000000007 L-47.3496987939662 7.000000000000008 L-47.3496987939662 -6.9999999999999964 L-37.3496987939662 -6.999999999999997 A38 38 0 0 1 -31.35997276079435 -21.460477824182675 L-31.35997276079435 -21.460477824182675 L-38.431040572659825 -28.531545636048147 L-28.53154563604818 -38.4310405726598 L-21.4604778241827 -31.35997276079433 A38 38 0 0 1 -6.999999999999992 -37.3496987939662 L-6.999999999999992 -37.3496987939662 L-6.999999999999994 -47.3496987939662 L6.999999999999977 -47.3496987939662 L6.999999999999979 -37.3496987939662 A38 38 0 0 1 21.460477824182686 -31.359972760794342 L21.460477824182686 -31.359972760794342 L28.531545636048158 -38.43104057265982 L38.4310405726598 -28.53154563604818 L31.35997276079433 -21.4604778241827 A38 38 0 0 1 37.3496987939662 -6.999999999999995 M0 -23A23 23 0 1 0 0 23 A23 23 0 1 0 0 -23" fill="#0097e0"></path></g></g> <g transform="translate(19 19) scale(0.6)"> <g transform="rotate(229.634)">
|
||||
<animateTransform attributeName="transform" type="rotate" values="360;0" keyTimes="0;1" dur="1s" begin="-0.0625s" repeatCount="indefinite"></animateTransform><path d="M37.3496987939662 -7 L47.3496987939662 -7 L47.3496987939662 7 L37.3496987939662 7 A38 38 0 0 1 31.359972760794346 21.46047782418268 L31.359972760794346 21.46047782418268 L38.431040572659825 28.531545636048154 L28.531545636048154 38.431040572659825 L21.46047782418268 31.359972760794346 A38 38 0 0 1 7.0000000000000036 37.3496987939662 L7.0000000000000036 37.3496987939662 L7.000000000000004 47.3496987939662 L-6.999999999999999 47.3496987939662 L-7 37.3496987939662 A38 38 0 0 1 -21.46047782418268 31.35997276079435 L-21.46047782418268 31.35997276079435 L-28.531545636048154 38.431040572659825 L-38.43104057265982 28.531545636048158 L-31.359972760794346 21.460477824182682 A38 38 0 0 1 -37.3496987939662 7.000000000000007 L-37.3496987939662 7.000000000000007 L-47.3496987939662 7.000000000000008 L-47.3496987939662 -6.9999999999999964 L-37.3496987939662 -6.999999999999997 A38 38 0 0 1 -31.35997276079435 -21.460477824182675 L-31.35997276079435 -21.460477824182675 L-38.431040572659825 -28.531545636048147 L-28.53154563604818 -38.4310405726598 L-21.4604778241827 -31.35997276079433 A38 38 0 0 1 -6.999999999999992 -37.3496987939662 L-6.999999999999992 -37.3496987939662 L-6.999999999999994 -47.3496987939662 L6.999999999999977 -47.3496987939662 L6.999999999999979 -37.3496987939662 A38 38 0 0 1 21.460477824182686 -31.359972760794342 L21.460477824182686 -31.359972760794342 L28.531545636048158 -38.43104057265982 L38.4310405726598 -28.53154563604818 L31.35997276079433 -21.4604778241827 A38 38 0 0 1 37.3496987939662 -6.999999999999995 M0 -23A23 23 0 1 0 0 23 A23 23 0 1 0 0 -23" fill="#7f8b95"></path></g></g></g></svg>
|
||||
<span class="sp1">{{$t('正在努力加载中...')}}</span>
|
||||
<span class="sp1">{{$t('Loading...')}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<m-popup :ok-text="$t('确认提交')" :nameText="type.name + $t('授权')" @ok="_ok" ref="popup">
|
||||
<m-popup :ok-text="$t('Submit')" :nameText="type.name + $t('Authorize')" @ok="_ok" ref="popup">
|
||||
<template slot="content">
|
||||
<div class="clearfix transfer-model">
|
||||
<div class="select-list-box">
|
||||
<div class="tf-header">
|
||||
<div class="title">{{type.name}}{{$t('列表')}}</div>
|
||||
<div class="title">{{type.name}}{{$t('List')}}</div>
|
||||
<div class="count">({{cacheSourceList.length}})</div>
|
||||
</div>
|
||||
<!--<div class="tf-search">
|
||||
@ -12,7 +12,7 @@
|
||||
@on-enterkey="_sourceQuery"
|
||||
@on-click-icon="_sourceQuery"
|
||||
size="small"
|
||||
placeholder="请输入关键词"
|
||||
placeholder="Please enter keyword"
|
||||
type="text"
|
||||
style="width:202px;">
|
||||
<i slot="suffix" class="ans-icon-search"></i>
|
||||
@ -30,7 +30,7 @@
|
||||
<div class="select-oper-box"> </div>
|
||||
<div class="select-list-box">
|
||||
<div class="tf-header">
|
||||
<div class="title">{{$t('已选')}}{{type.name}}</div>
|
||||
<div class="title">{{$t('Selected')}}{{type.name}}</div>
|
||||
<div class="count">({{cacheTargetList.length}})</div>
|
||||
</div>
|
||||
<!--<div class="tf-search">
|
||||
@ -38,7 +38,7 @@
|
||||
@on-enterkey="_targetQuery"
|
||||
@on-click-icon="_targetQuery"
|
||||
size="small"
|
||||
placeholder="请输入关键词"
|
||||
placeholder="Please enter keyword"
|
||||
type="text"
|
||||
style="width:202px;">
|
||||
<i slot="suffix" class="ans-icon-search"></i>
|
||||
|
@ -26,7 +26,7 @@ let downloadFile = ($url, $obj) => {
|
||||
}
|
||||
|
||||
if (!param.url) {
|
||||
this.$message.warning(`${i18n.$t('无下载url无法下载')}`)
|
||||
this.$message.warning(`${i18n.$t('Unable to download without proper url')}`)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -16,454 +16,397 @@
|
||||
*/
|
||||
|
||||
export default {
|
||||
'用户名': 'User Name',
|
||||
'请输入用户名': 'Please enter user name',
|
||||
'密码': 'Password',
|
||||
'请输入密码': 'Please enter your password',
|
||||
'登录': 'Login',
|
||||
'首页': 'Home',
|
||||
'未创建节点保存失败': 'Failed to create node to save',
|
||||
'全局参数': 'Global parameters',
|
||||
'局部参数': 'Local parameters',
|
||||
'复制成功': 'Copy success',
|
||||
'该浏览器不支持自动复制': 'The browser does not support automatic copying',
|
||||
'确认保存': 'Save',
|
||||
'是否保存DAG图': 'Whether to save the DAG graph',
|
||||
'当前节点设置': 'Current node settings',
|
||||
'查看历史': 'View history',
|
||||
'查看日志': 'View log',
|
||||
'进入该子节点': 'Enter this child node',
|
||||
'节点名称': 'Node name',
|
||||
'请输入name(必填)': 'Please enter name(required)',
|
||||
'运行标志': 'Run flag',
|
||||
'正常': 'Normal',
|
||||
'禁止执行': 'Prohibition execution',
|
||||
'描述': 'Description',
|
||||
'请输入desc': 'Please enter description',
|
||||
'失败重试次数': 'Number of failed retries',
|
||||
'次': 'Times',
|
||||
'失败重试间隔': 'Failed retry interval',
|
||||
'分': 'minute',
|
||||
'取消': 'cancel',
|
||||
'确认添加': 'Confirm add',
|
||||
'新创建子工作流还未执行,不能进入子工作流': 'The newly created sub-Process has not yet been executed and cannot enter the sub-Process',
|
||||
'该任务还未执行,不能进入子工作流': 'The task has not been executed and cannot enter the sub-Process',
|
||||
'请输入名称(必填)': 'Please enter name (required)',
|
||||
'名称已存在请重新输入': 'Name already exists',
|
||||
'下载日志': 'Download Log',
|
||||
'刷新日志': 'Refresh Log',
|
||||
'进入全屏': 'Enter full screen',
|
||||
'取消全屏': 'Cancel full screen',
|
||||
'关闭': 'close',
|
||||
'更新日志成功': 'Update log success',
|
||||
'暂无更多日志': 'No more logs',
|
||||
'暂无日志': 'No log',
|
||||
'正在努力请求日志中...': 'Loading Log...',
|
||||
'设置DAG图名称': 'Set the DAG diagram name',
|
||||
'请输入desc(选填)': 'Please enter description(optional)',
|
||||
'设置全局': 'Set global',
|
||||
'是否更新流程定义': 'Whether to update the process definition',
|
||||
'添加': 'Add',
|
||||
'DAG图名称不能为空': 'DAG graph name cannot be empty',
|
||||
'数据源中心': 'Datasource',
|
||||
'创建数据源': 'Create Datasource',
|
||||
'项目首页': 'Project Home',
|
||||
'项目管理': 'Project',
|
||||
'创建项目': 'Create Project',
|
||||
'定时管理': 'Cron Management',
|
||||
'租户管理': 'Tenant Management',
|
||||
'创建租户': 'Create Tenant',
|
||||
'用户管理': 'User Management',
|
||||
'创建用户': 'Create User',
|
||||
'用户信息': 'User Information',
|
||||
'密码修改': 'Edit Password',
|
||||
'外部依赖': 'External Dependence',
|
||||
'添加依赖策略': 'Add Dependence Strategy',
|
||||
'自身依赖': 'Self Dependence',
|
||||
'不依赖': 'No Dependence',
|
||||
'依赖上一周期': 'Dependence last week',
|
||||
'自定义': 'custom',
|
||||
'全部成功': 'All Success',
|
||||
'全部失败': 'All Fail',
|
||||
'任一成功': 'Any Success',
|
||||
'任一失败': 'Any Fail',
|
||||
'外部依赖信息不完整': 'External dependency information is incomplete',
|
||||
'成功': 'success',
|
||||
'失败': 'failed',
|
||||
'请选择节点': 'Please select the node',
|
||||
'删除': 'delete',
|
||||
'外部依赖不允许重复': 'External dependencies do not allow duplicates',
|
||||
'无流程定义': 'No process definition',
|
||||
'请选择': 'Please choose',
|
||||
'请输入正整数': 'Please enter a positive integer',
|
||||
'程序类型': 'Program Type',
|
||||
'主函数的class': 'Main class',
|
||||
'请输入mainClass': 'Please enter main class',
|
||||
'主jar包': 'Main jar package',
|
||||
'请选择主jar包': 'Please enter main jar package',
|
||||
'命令行参数': 'Command-line parameters',
|
||||
'请输入命令行参数': 'Please enter Command-line parameters',
|
||||
'其他参数': 'Other parameters',
|
||||
'请输入其他参数': 'Please enter other parameters',
|
||||
'资源': 'Resources',
|
||||
'自定义参数': 'Custom Parameters',
|
||||
'请填写主函数的class': 'Please enter main class',
|
||||
'数据源': 'Datasource',
|
||||
'方法': 'methods',
|
||||
'请输入method(选填)': 'Please enter method(optional)',
|
||||
'脚本': 'Script',
|
||||
'请输入rawScript(必填)': 'Please enter script(required)',
|
||||
'部署方式': 'Deploy Mode',
|
||||
'Driver内核数': 'Driver core number',
|
||||
'请输入Driver内核数': 'Please enter driver core number',
|
||||
'Driver内存数': 'Driver memory use',
|
||||
'请输入Driver内存数': 'Please enter driver memory use',
|
||||
'Executor数量': 'Number of Executors',
|
||||
'请输入Executor数量': 'Please enter the number of Executor',
|
||||
'Executor内存数': 'Executor memory',
|
||||
'请输入Executor内存数': 'Please enter the Executor memory',
|
||||
'Executor内核数': 'Executor core number',
|
||||
'请输入Executor内核数': 'Please enter Executor core number',
|
||||
'请填写Executor数量': 'Please enter the number of Executor',
|
||||
'Executor数量为正整数': 'The number of Executors should be a positive integer',
|
||||
'请填写Executor内存数': 'Please enter the Executor memory',
|
||||
'内存数为数字': 'Memory should be a positive integer',
|
||||
'请填写Executor内核数': 'Please enter ExecutorPlease enter Executor core number',
|
||||
'内核数为正整数': 'Core number should be positive integer',
|
||||
'sql类型': 'SQL Type',
|
||||
'表格': 'Table',
|
||||
'附件': 'Attachment',
|
||||
'sql参数': 'SQL Parameter',
|
||||
'sql语句': 'SQL Statement',
|
||||
'UDF函数': 'UDF Function',
|
||||
'请输入sql语句(必填)': 'Please enter a SQL Statement(required)',
|
||||
'子节点': 'Child Node',
|
||||
'请选择子工作流': 'Please select a sub-Process',
|
||||
'编辑': 'edit',
|
||||
'数据源名称': 'Name',
|
||||
'请输入数据源名称': 'Please enter datasource name',
|
||||
'请输入描述': 'Please enter description',
|
||||
'IP主机名': 'IP',
|
||||
'请输入IP主机名': 'Please enter IP',
|
||||
'端口': 'Port',
|
||||
'请输入端口': 'Please enter port',
|
||||
'数据库名': 'Database Name',
|
||||
'请输入数据库名': 'Please enter database name',
|
||||
'jdbc连接参数': 'jdbc connect parameters',
|
||||
'测试连接': 'Test Connect',
|
||||
'确认编辑': 'edit',
|
||||
'确认提交': 'submit',
|
||||
'请输入资源名称': 'Please enter resource name',
|
||||
'请输入IP/主机名': 'Please enter IP/hostname',
|
||||
'jdbc连接参数不是一个正确的JSON格式': 'jdbc connection parameters is not a correct JSON format',
|
||||
'编号': '#',
|
||||
'数据源类型': 'Type',
|
||||
'数据源参数': 'Parameter',
|
||||
'创建时间': 'Create Time',
|
||||
'更新时间': 'Update Time',
|
||||
'操作': 'Operation',
|
||||
'点击查看': 'Click to view',
|
||||
'确定删除吗?': 'Delete?',
|
||||
'确定': 'confirm',
|
||||
'选择日期区间': 'Select date range',
|
||||
'任务状态统计': 'Task status statistics',
|
||||
'序号': '#',
|
||||
'数量': 'Number',
|
||||
'状态': 'State',
|
||||
'流程状态统计': 'Process Status Statistics',
|
||||
'流程定义统计': 'Process Definition Statistics',
|
||||
'编辑项目': 'Edit Project',
|
||||
'项目名称': 'Project Name',
|
||||
'请输入name': 'Please enter name',
|
||||
'请输入名称': 'Please enter name',
|
||||
'所属用户': 'Owned Users',
|
||||
'ip': 'ip',
|
||||
'进程pid': 'Process Pid',
|
||||
'zk注册目录': 'zk registration directory',
|
||||
'User Name': 'User Name',
|
||||
'Please enter user name': 'Please enter user name',
|
||||
'Password': 'Password',
|
||||
'Please enter your password': 'Please enter your password',
|
||||
'Login': 'Login',
|
||||
'Home': 'Home',
|
||||
'Failed to create node to save': 'Failed to create node to save',
|
||||
'Global parameters': 'Global parameters',
|
||||
'Local parameters': 'Local parameters',
|
||||
'Copy success': 'Copy success',
|
||||
'The browser does not support automatic copying': 'The browser does not support automatic copying',
|
||||
'Whether to save the DAG graph': 'Whether to save the DAG graph',
|
||||
'Current node settings': 'Current node settings',
|
||||
'View history': 'View history',
|
||||
'View log': 'View log',
|
||||
'Enter this child node': 'Enter this child node',
|
||||
'Node name': 'Node name',
|
||||
'Please enter name(required)': 'Please enter name(required)',
|
||||
'Run flag': 'Run flag',
|
||||
'Normal': 'Normal',
|
||||
'Prohibition execution': 'Prohibition execution',
|
||||
'Please enter description': 'Please enter description',
|
||||
'Number of failed retries': 'Number of failed retries',
|
||||
'Times': 'Times',
|
||||
'Failed retry interval': 'Failed retry interval',
|
||||
'Minute': 'Minute',
|
||||
'Cancel': 'Cancel',
|
||||
'Confirm add': 'Confirm add',
|
||||
'The newly created sub-Process has not yet been executed and cannot enter the sub-Process': 'The newly created sub-Process has not yet been executed and cannot enter the sub-Process',
|
||||
'The task has not been executed and cannot enter the sub-Process': 'The task has not been executed and cannot enter the sub-Process',
|
||||
'Please enter name (required)': 'Please enter name (required)',
|
||||
'Name already exists': 'Name already exists',
|
||||
'Download Log': 'Download Log',
|
||||
'Refresh Log': 'Refresh Log',
|
||||
'Enter full screen': 'Enter full screen',
|
||||
'Cancel full screen': 'Cancel full screen',
|
||||
'Close': 'Close',
|
||||
'Update log success': 'Update log success',
|
||||
'No more logs': 'No more logs',
|
||||
'No log': 'No log',
|
||||
'Loading Log...': 'Loading Log...',
|
||||
'Set the DAG diagram name': 'Set the DAG diagram name',
|
||||
'Please enter description(optional)': 'Please enter description(optional)',
|
||||
'Set global': 'Set global',
|
||||
'Whether to update the process definition': 'Whether to update the process definition',
|
||||
'Add': 'Add',
|
||||
'DAG graph name cannot be empty': 'DAG graph name cannot be empty',
|
||||
'Create Datasource': 'Create Datasource',
|
||||
'Project Home': 'Project Home',
|
||||
'Project Manage': 'Project',
|
||||
'Create Project': 'Create Project',
|
||||
'Cron Management': 'Cron Management',
|
||||
'Tenant Management': 'Tenant Management',
|
||||
'Create Tenant': 'Create Tenant',
|
||||
'User Management': 'User Management',
|
||||
'Create User': 'Create User',
|
||||
'User Information': 'User Information',
|
||||
'Edit Password': 'Edit Password',
|
||||
'success': 'success',
|
||||
'failed': 'failed',
|
||||
'delete': 'delete',
|
||||
'Please choose': 'Please choose',
|
||||
'Please enter a positive integer': 'Please enter a positive integer',
|
||||
'Program Type': 'Program Type',
|
||||
'Main class': 'Main class',
|
||||
'Please enter main class': 'Please enter main class',
|
||||
'Main jar package': 'Main jar package',
|
||||
'Please enter main jar package': 'Please enter main jar package',
|
||||
'Command-line parameters': 'Command-line parameters',
|
||||
'Please enter Command-line parameters': 'Please enter Command-line parameters',
|
||||
'Other parameters': 'Other parameters',
|
||||
'Please enter other parameters': 'Please enter other parameters',
|
||||
'Resources': 'Resources',
|
||||
'Custom Parameters': 'Custom Parameters',
|
||||
'Datasource': 'Datasource',
|
||||
'methods': 'methods',
|
||||
'Please enter method(optional)': 'Please enter method(optional)',
|
||||
'Script': 'Script',
|
||||
'Please enter script(required)': 'Please enter script(required)',
|
||||
'Deploy Mode': 'Deploy Mode',
|
||||
'Driver core number': 'Driver core number',
|
||||
'Please enter driver core number': 'Please enter driver core number',
|
||||
'Driver memory use': 'Driver memory use',
|
||||
'Please enter driver memory use': 'Please enter driver memory use',
|
||||
'Number of Executors': 'Number of Executors',
|
||||
'Please enter the number of Executor': 'Please enter the number of Executor',
|
||||
'Executor memory': 'Executor memory',
|
||||
'Please enter the Executor memory': 'Please enter the Executor memory',
|
||||
'Executor core number': 'Executor core number',
|
||||
'Please enter Executor core number': 'Please enter Executor core number',
|
||||
'The number of Executors should be a positive integer': 'The number of Executors should be a positive integer',
|
||||
'Memory should be a positive integer': 'Memory should be a positive integer',
|
||||
'Please enter ExecutorPlease enter Executor core number': 'Please enter ExecutorPlease enter Executor core number',
|
||||
'Core number should be positive integer': 'Core number should be positive integer',
|
||||
'SQL Type': 'SQL Type',
|
||||
'Table': 'Table',
|
||||
'Attachment': 'Attachment',
|
||||
'SQL Parameter': 'SQL Parameter',
|
||||
'SQL Statement': 'SQL Statement',
|
||||
'UDF Function': 'UDF Function',
|
||||
'Please enter a SQL Statement(required)': 'Please enter a SQL Statement(required)',
|
||||
'Child Node': 'Child Node',
|
||||
'Please select a sub-Process': 'Please select a sub-Process',
|
||||
'Edit': 'Edit',
|
||||
'Datasource Name': 'Datasource Name',
|
||||
'Please enter datasource name': 'Please enter datasource name',
|
||||
'IP': 'IP',
|
||||
'Please enter IP': 'Please enter IP',
|
||||
'Port': 'Port',
|
||||
'Please enter port': 'Please enter port',
|
||||
'Database Name': 'Database Name',
|
||||
'Please enter database name': 'Please enter database name',
|
||||
'jdbc connect parameters': 'jdbc connect parameters',
|
||||
'Test Connect': 'Test Connect',
|
||||
'Please enter resource name': 'Please enter resource name',
|
||||
'Please enter IP/hostname': 'Please enter IP/hostname',
|
||||
'jdbc connection parameters is not a correct JSON format': 'jdbc connection parameters is not a correct JSON format',
|
||||
'#': '#',
|
||||
'Datasource Type': 'Datasource Type',
|
||||
'Datasource Parameter': 'Datasource Parameter',
|
||||
'Create Time': 'Create Time',
|
||||
'Update Time': 'Update Time',
|
||||
'Operation': 'Operation',
|
||||
'Click to view': 'Click to view',
|
||||
'Delete?': 'Delete?',
|
||||
'Confirm': 'Confirm',
|
||||
'Task status statistics': 'Task status statistics',
|
||||
'Number': 'Number',
|
||||
'State': 'State',
|
||||
'Process Status Statistics': 'Process Status Statistics',
|
||||
'Process Definition Statistics': 'Process Definition Statistics',
|
||||
'Project Name': 'Project Name',
|
||||
'Please enter name': 'Please enter name',
|
||||
'Owned Users': 'Owned Users',
|
||||
'Process Pid': 'Process Pid',
|
||||
'zk registration directory': 'zk registration directory',
|
||||
'cpuUsage': 'cpuUsage',
|
||||
'memoryUsage': 'memoryUsage',
|
||||
'最后心跳时间': 'Last heartbeat time',
|
||||
'编辑租户': 'Edit Tenant',
|
||||
'租户编码': 'Tenant Code',
|
||||
'租户名称': 'Tenant Name',
|
||||
'队列': 'Queue',
|
||||
'请输入租户编码只允许英文': 'Please enter the tenant code in English',
|
||||
'请输入英文租户编码': 'Please enter tenant code in English',
|
||||
'请输入租户名称': 'Please enter tenant name',
|
||||
'编辑用户': 'Edit User',
|
||||
'用户名称': 'User Name',
|
||||
'请输入用户名称': 'Please enter user name',
|
||||
'租户': 'Tenant',
|
||||
'邮件': 'Email',
|
||||
'请输入邮件': 'Please enter email',
|
||||
'手机': 'Phone',
|
||||
'请输入手机': 'Please enter phone number',
|
||||
'请输入邮箱': 'Please enter email',
|
||||
'请输入正确的邮箱格式': 'Please enter the correct email format',
|
||||
'请输入正确的手机格式': 'Please enter the correct mobile phone format',
|
||||
'邮箱': 'Email',
|
||||
'项目': 'Project',
|
||||
'授权': 'Authorize',
|
||||
'编辑告警组': 'Edit alarm group',
|
||||
'创建告警组': 'Create alarm group',
|
||||
'组名称': 'Group Name',
|
||||
'请输入组名称': 'Please enter group name',
|
||||
'组类型': 'Group Type',
|
||||
'备注': 'Remarks',
|
||||
'短信': 'SMS',
|
||||
'管理用户': 'Managing Users',
|
||||
'权限': 'Permission',
|
||||
'管理员': 'Administrator',
|
||||
'修改': 'Edit',
|
||||
'确认密码': 'Confirm Password',
|
||||
'请输入确认密码': 'Please enter confirm password',
|
||||
'密码不能为中文': 'Password cannot be in Chinese',
|
||||
'请输入密码(6-22)字符密码': 'Please enter a password (6-22) character password',
|
||||
'确认密码不能为中文': 'Confirmation password cannot be in Chinese',
|
||||
'请输入确认密码(6-22)字符密码': 'Please enter a confirmation password (6-22) character password',
|
||||
'密码与确认密码不一致,请重新确认': 'The password is inconsistent with the confirmation password',
|
||||
'请选择数据源': 'Please select the datasource',
|
||||
'请选择资源': 'Please select resources',
|
||||
'查询': 'Query',
|
||||
'非查询': 'Non Query',
|
||||
'prop(必填)': 'prop(required)',
|
||||
'value(选填)': 'value(optional)',
|
||||
'prop不能为空': 'prop is empty',
|
||||
'prop中有重复': 'prop is repeat',
|
||||
'流程名称': 'Process Name',
|
||||
'开始时间': 'Start Time',
|
||||
'结束时间': 'End Time',
|
||||
'Last heartbeat time': 'Last heartbeat time',
|
||||
'Edit Tenant': 'Edit Tenant',
|
||||
'Tenant Code': 'Tenant Code',
|
||||
'Tenant Name': 'Tenant Name',
|
||||
'Queue': 'Queue',
|
||||
'Please enter the tenant code in English': 'Please enter the tenant code in English',
|
||||
'Please enter tenant code in English': 'Please enter tenant code in English',
|
||||
'Edit User': 'Edit User',
|
||||
'Tenant': 'Tenant',
|
||||
'Email': 'Email',
|
||||
'Phone': 'Phone',
|
||||
'Please enter phone number': 'Please enter phone number',
|
||||
'Please enter email': 'Please enter email',
|
||||
'Please enter the correct email format': 'Please enter the correct email format',
|
||||
'Please enter the correct mobile phone format': 'Please enter the correct mobile phone format',
|
||||
'Project': 'Project',
|
||||
'Authorize': 'Authorize',
|
||||
'Edit alarm group': 'Edit alarm group',
|
||||
'Create alarm group': 'Create alarm group',
|
||||
'Group Name': 'Group Name',
|
||||
'Please enter group name': 'Please enter group name',
|
||||
'Group Type': 'Group Type',
|
||||
'Remarks': 'Remarks',
|
||||
'SMS': 'SMS',
|
||||
'Managing Users': 'Managing Users',
|
||||
'Permission': 'Permission',
|
||||
'Administrator': 'Administrator',
|
||||
'Confirm Password': 'Confirm Password',
|
||||
'Please enter confirm password': 'Please enter confirm password',
|
||||
'Password cannot be in Chinese': 'Password cannot be in Chinese',
|
||||
'Please enter a password (6-22) character password': 'Please enter a password (6-22) character password',
|
||||
'Confirmation password cannot be in Chinese': 'Confirmation password cannot be in Chinese',
|
||||
'Please enter a confirmation password (6-22) character password': 'Please enter a confirmation password (6-22) character password',
|
||||
'The password is inconsistent with the confirmation password': 'The password is inconsistent with the confirmation password',
|
||||
'Please select the datasource': 'Please select the datasource',
|
||||
'Please select resources': 'Please select resources',
|
||||
'Query': 'Query',
|
||||
'Non Query': 'Non Query',
|
||||
'prop(required)': 'prop(required)',
|
||||
'value(optional)': 'value(optional)',
|
||||
'prop is empty': 'prop is empty',
|
||||
'prop is repeat': 'prop is repeat',
|
||||
'Start Time': 'Start Time',
|
||||
'End Time': 'End Time',
|
||||
'crontab': 'crontab',
|
||||
'失败策略': 'Failure Strategy',
|
||||
'上线': 'online',
|
||||
'下线': 'offline',
|
||||
'任务状态': 'Task Status',
|
||||
'工作流实例': 'Process Instance',
|
||||
'任务实例': 'Task Instance',
|
||||
'按选择日期区间': 'Select date range',
|
||||
'按目标表': 'target table',
|
||||
'按源表': 'Source Table',
|
||||
'按状态': 'state',
|
||||
'按日期': 'date',
|
||||
'按任务名称': 'Task Name',
|
||||
'等待': 'waiting',
|
||||
'执行中': 'In Execution',
|
||||
'完成': 'Finish',
|
||||
'创建文件': 'Create File',
|
||||
'文件名称': 'File Name',
|
||||
'文件格式': 'File Format',
|
||||
'文件内容': 'File Content',
|
||||
'确认创建': 'create',
|
||||
'请输入资源内容': 'Please enter the resource content',
|
||||
'文件详情': 'File Details',
|
||||
'下载详情': 'Download Details',
|
||||
'返回': 'Return',
|
||||
'保存': 'Save',
|
||||
'文件管理': 'File',
|
||||
'上传文件': 'Upload Files',
|
||||
'UDF函数管理': 'UDF Function',
|
||||
'创建UDF函数': 'Create UDF Function',
|
||||
'UDF资源管理': 'UDF Resources',
|
||||
'上传UDF资源': 'Upload UDF Resources',
|
||||
'服务管理-Master': 'Service-Master',
|
||||
'服务管理-Worker': 'Service-Worker',
|
||||
'工作流名称': 'Process Name',
|
||||
'运行类型': 'Run Type',
|
||||
'运行时长(s)': 'Run Duration(s)',
|
||||
'运行次数': 'Run Times',
|
||||
'Failure Strategy': 'Failure Strategy',
|
||||
'online': 'online',
|
||||
'offline': 'offline',
|
||||
'Task Status': 'Task Status',
|
||||
'Process Instance': 'Process Instance',
|
||||
'Task Instance': 'Task Instance',
|
||||
'Select date range': 'Select date range',
|
||||
'Date': 'Date',
|
||||
'waiting': 'waiting',
|
||||
'In Execution': 'In Execution',
|
||||
'Finish': 'Finish',
|
||||
'Create File': 'Create File',
|
||||
'File Name': 'File Name',
|
||||
'File Format': 'File Format',
|
||||
'File Content': 'File Content',
|
||||
'Create': 'Create',
|
||||
'Please enter the resource content': 'Please enter the resource content',
|
||||
'File Details': 'File Details',
|
||||
'Download Details': 'Download Details',
|
||||
'Return': 'Return',
|
||||
'Save': 'Save',
|
||||
'File Management': 'File Management',
|
||||
'Upload Files': 'Upload Files',
|
||||
'Create UDF Function': 'Create UDF Function',
|
||||
'Upload UDF Resources': 'Upload UDF Resources',
|
||||
'Service-Master': 'Service-Master',
|
||||
'Service-Worker': 'Service-Worker',
|
||||
'Process Name': 'Process Name',
|
||||
'Run Type': 'Run Type',
|
||||
'Run Times': 'Run Times',
|
||||
'host': 'host',
|
||||
'容错标识': 'fault-tolerant sign',
|
||||
'重跑': 'Rerun',
|
||||
'恢复失败': 'Recovery Failed',
|
||||
'停止': 'Stop',
|
||||
'暂停': 'Pause',
|
||||
'恢复暂停': 'Recovery Suspend',
|
||||
'甘特图': 'Gantt',
|
||||
'秒': 'second',
|
||||
'名称': 'Name',
|
||||
'节点类型': 'Node Type',
|
||||
'提交时间': 'Submit Time',
|
||||
'运行时长': 'Duration',
|
||||
'重试次数': 'Retry Count',
|
||||
'任务名称': 'Task Name',
|
||||
'任务日期': 'Task Date',
|
||||
'源表': 'Source Table',
|
||||
'记录数': 'Record Number',
|
||||
'目标表': 'Target Table',
|
||||
'不支持在线查看类型': 'Online viewing type is not supported',
|
||||
'大小': 'Size',
|
||||
'重命名': 'rename',
|
||||
'下载': 'download',
|
||||
'确认重命名': 'Confirm Rename',
|
||||
'确定提交': 'Submit',
|
||||
'编辑UDF函数': 'Edit UDF Function',
|
||||
'类型': 'type',
|
||||
'UDF函数名称': 'UDF Function Name',
|
||||
'请输入函数名': 'Please enter a function name',
|
||||
'包名类名': 'Package Name',
|
||||
'请输入包名类名': 'Please enter a Package name',
|
||||
'参数': 'Parameter',
|
||||
'请输入参数': 'Please enter a parameter',
|
||||
'UDF资源': 'UDF Resources',
|
||||
'上传资源': 'Upload Resources',
|
||||
'使用说明': 'Instructions',
|
||||
'请输入使用说明': 'Please enter a instructions',
|
||||
'请输入UDF函数名称': 'Please enter a UDF function name',
|
||||
'请选择UDF资源': 'Select UDF Resources',
|
||||
'类名': 'Class Name',
|
||||
'jar包': 'Jar Package',
|
||||
'库名': 'Library Name',
|
||||
'UDF资源名称': 'UDF Resource Name',
|
||||
'文件大小': 'File Size',
|
||||
'文件描述': 'File Description',
|
||||
'拖动节点和选中项': 'Drag Nodes and Selected Items',
|
||||
'选择线条连接': 'Select Line Connection',
|
||||
'删除选中的线或节点': 'Delete selected lines or nodes',
|
||||
'缩小': 'narrow',
|
||||
'放大': 'enlarge',
|
||||
'全屏': 'Full Screen',
|
||||
'未发布': 'Unpublished',
|
||||
'启动工作流': 'Start Process',
|
||||
'从当前节点开始执行': 'Execute from the current node',
|
||||
'恢复被容错的工作流': 'Recover tolerance fault process',
|
||||
'恢复暂停流程': 'Resume the suspension process',
|
||||
'从失败节点开始执行': 'Execute from the failed nodes',
|
||||
'补数': 'Complement Data',
|
||||
'调度执行': 'Scheduling execution',
|
||||
'恢复等待线程': 'Recovery waiting thread',
|
||||
'提交成功': 'Submitted successfully',
|
||||
'正在执行': 'Executing',
|
||||
'准备暂停': 'Ready to pause',
|
||||
'准备停止': 'Ready to stop',
|
||||
'需要容错': 'Need fault tolerance',
|
||||
'fault-tolerant sign': 'fault-tolerant sign',
|
||||
'Rerun': 'Rerun',
|
||||
'Recovery Failed': 'Recovery Failed',
|
||||
'Stop': 'Stop',
|
||||
'Pause': 'Pause',
|
||||
'Recovery Suspend': 'Recovery Suspend',
|
||||
'Gantt': 'Gantt',
|
||||
'Name': 'Name',
|
||||
'Node Type': 'Node Type',
|
||||
'Submit Time': 'Submit Time',
|
||||
'Duration': 'Duration',
|
||||
'Retry Count': 'Retry Count',
|
||||
'Task Name': 'Task Name',
|
||||
'Task Date': 'Task Date',
|
||||
'Source Table': 'Source Table',
|
||||
'Record Number': 'Record Number',
|
||||
'Target Table': 'Target Table',
|
||||
'Online viewing type is not supported': 'Online viewing type is not supported',
|
||||
'Size': 'Size',
|
||||
'Rename': 'Rename',
|
||||
'Download': 'Download',
|
||||
'Confirm Rename': 'Confirm Rename',
|
||||
'Submit': 'Submit',
|
||||
'Edit UDF Function': 'Edit UDF Function',
|
||||
'type': 'type',
|
||||
'UDF Function Name': 'UDF Function Name',
|
||||
'Please enter a function name': 'Please enter a function name',
|
||||
'Package Name': 'Package Name',
|
||||
'Please enter a Package name': 'Please enter a Package name',
|
||||
'Parameter': 'Parameter',
|
||||
'Please enter a parameter': 'Please enter a parameter',
|
||||
'UDF Resources': 'UDF Resources',
|
||||
'Upload Resources': 'Upload Resources',
|
||||
'Instructions': 'Instructions',
|
||||
'Please enter a instructions': 'Please enter a instructions',
|
||||
'Please enter a UDF function name': 'Please enter a UDF function name',
|
||||
'Select UDF Resources': 'Select UDF Resources',
|
||||
'Class Name': 'Class Name',
|
||||
'Jar Package': 'Jar Package',
|
||||
'Library Name': 'Library Name',
|
||||
'UDF Resource Name': 'UDF Resource Name',
|
||||
'File Size': 'File Size',
|
||||
'Description': 'Description',
|
||||
'Drag Nodes and Selected Items': 'Drag Nodes and Selected Items',
|
||||
'Select Line Connection': 'Select Line Connection',
|
||||
'Delete selected lines or nodes': 'Delete selected lines or nodes',
|
||||
'Full Screen': 'Full Screen',
|
||||
'Unpublished': 'Unpublished',
|
||||
'Start Process': 'Start Process',
|
||||
'Execute from the current node': 'Execute from the current node',
|
||||
'Recover tolerance fault process': 'Recover tolerance fault process',
|
||||
'Resume the suspension process': 'Resume the suspension process',
|
||||
'Execute from the failed nodes': 'Execute from the failed nodes',
|
||||
'Complement Data': 'Complement Data',
|
||||
'Scheduling execution': 'Scheduling execution',
|
||||
'Recovery waiting thread': 'Recovery waiting thread',
|
||||
'Submitted successfully': 'Submitted successfully',
|
||||
'Executing': 'Executing',
|
||||
'Ready to pause': 'Ready to pause',
|
||||
'Ready to stop': 'Ready to stop',
|
||||
'Need fault tolerance': 'Need fault tolerance',
|
||||
'kill': 'kill',
|
||||
'等待线程': 'Waiting for thread',
|
||||
'等待依赖': 'Waiting for dependence',
|
||||
'开始运行': 'start running',
|
||||
'编辑节点': 'Edit',
|
||||
'复制节点': 'Copy',
|
||||
'删除节点': 'Delete',
|
||||
'待运行': 'Waiting',
|
||||
'运行中': 'Running',
|
||||
'请输入关键词': 'Please enter a keyword',
|
||||
'确认上传': 'Confirm Upload',
|
||||
'文件上传': 'File Upload',
|
||||
'请将文件拖拽到当前上传窗口内!': 'Drag the file into the current upload window',
|
||||
'拖动区域上传': 'Drag area upload',
|
||||
'文件名': 'File Name',
|
||||
'点击上传': 'Upload',
|
||||
'请输入文件名': 'Please enter a file name',
|
||||
'请选择要上传的文件': 'Please select the file to upload',
|
||||
'请输入资源描述': 'Please enter a resource description',
|
||||
'资源中心': 'Resources',
|
||||
'安全中心': 'Security',
|
||||
'退出': 'Logout',
|
||||
'查询无数据': 'No data',
|
||||
'创建': 'Create',
|
||||
'确认': 'Confirm',
|
||||
'文件上传中': 'Uploading...',
|
||||
'正在努力加载中...': 'Loading...',
|
||||
'列表': 'List',
|
||||
'无下载url无法下载': 'Unable to download without proper url',
|
||||
'工作流': 'Process',
|
||||
'工作流定义': 'Process definition',
|
||||
'任务记录': 'Task record',
|
||||
'告警组管理': 'Warning group management',
|
||||
'服务管理': 'Servers',
|
||||
'UDF管理': 'UDF',
|
||||
'资源管理': 'Resource',
|
||||
'函数管理': 'Function',
|
||||
'修改密码': 'Change password',
|
||||
'普通用户': 'Ordinary users',
|
||||
'创建工作流': 'Create process',
|
||||
'定时状态': 'Timing state',
|
||||
'启动': 'Start',
|
||||
'定时': 'Timing',
|
||||
'树形图': 'TreeView',
|
||||
'邮箱已存在!收件人和抄送人不能重复': 'Mailbox already exists! Recipients and copyers cannot repeat',
|
||||
'邮箱输入不合法': 'Mailbox input is illegal',
|
||||
'启动前请先设置参数': 'Please set the parameters before starting.',
|
||||
'继续': 'Continue',
|
||||
'结束': 'End',
|
||||
'节点执行': 'Node execution',
|
||||
'向后执行': 'Backward execution',
|
||||
'向前执行': 'Forward execution',
|
||||
'仅执行当前节点': 'Execute only the current node',
|
||||
'通知策略': 'Notification strategy',
|
||||
'通知组': 'Notification group',
|
||||
'请选择通知组': 'Please select a notification group',
|
||||
'收件人': 'Recipient',
|
||||
'抄送人': 'Cc',
|
||||
'是否补数': 'Whether it is a complement process?',
|
||||
'执行方式': 'Mode of execution',
|
||||
'串行执行': 'Serial execution',
|
||||
'并行执行': 'Parallel execution',
|
||||
'时间': 'Date',
|
||||
'定时前请先设置参数': 'Set parameters before timing',
|
||||
'起止时间': 'Start and stop time',
|
||||
'请选择时间': 'Please select time',
|
||||
'请填写 crontab': 'Please enter a crontab',
|
||||
'都不发': 'none',
|
||||
'成功发': 'success',
|
||||
'失败发': 'failure',
|
||||
'成功或失败都发': 'All',
|
||||
'工具栏': 'Toolbar',
|
||||
'查看变量': 'View variables',
|
||||
'刷新DAG状态': 'Refresh DAG status',
|
||||
'返回上一节点': 'Return',
|
||||
'请输入格式为': 'Please enter format',
|
||||
'连接参数': 'connection parameter',
|
||||
'流程定义详情': 'Process definition details',
|
||||
'创建流程定义': 'Create process definition',
|
||||
'定时任务列表': 'Scheduled task list',
|
||||
'流程实例详情': 'Process instance details',
|
||||
'创建资源': 'Create Resource',
|
||||
'用户中心': 'User Center',
|
||||
'请输入方法': 'Please enter a method',
|
||||
'文档中心': 'Doc',
|
||||
'创建不允许下载!': 'Create not allowed download',
|
||||
'无': 'none',
|
||||
'按名称': 'name',
|
||||
'流程优先级': 'Process priority',
|
||||
'任务优先级': 'Task priority',
|
||||
'任务超时告警': 'Timeout alarm',
|
||||
'超时策略': 'Timeout strategy',
|
||||
'超时告警': 'Timeout alarm',
|
||||
'超时失败': 'Timeout failure',
|
||||
'超时时长': 'Timeout period',
|
||||
'超时策略必须选一个': 'Timeout strategy must be selected',
|
||||
'超时时长必须为正整数': 'Timeout must be a positive integer',
|
||||
'添加依赖': 'Add dependency',
|
||||
'且': 'and',
|
||||
'或': 'or',
|
||||
'年': 'year',
|
||||
'月': 'month',
|
||||
'周': 'week',
|
||||
'日': 'day',
|
||||
'时': 'hour',
|
||||
'正在运行': 'Running',
|
||||
'等待依赖完成': 'Waiting for dependency to complete',
|
||||
'已选': 'Selected',
|
||||
'前1小时': 'Last1Hour',
|
||||
'前2小时': 'Last2Hours',
|
||||
'前3小时': 'Last3Hours',
|
||||
'昨天': 'Last1Days',
|
||||
'前两天': 'Last2Days',
|
||||
'前三天': 'Last3Days',
|
||||
'前七天': 'Last7Days',
|
||||
'上周': 'LastWeek',
|
||||
'上周一': 'LastMonday',
|
||||
'上周二': 'LastTuesday',
|
||||
'上周三': 'LastWednesday',
|
||||
'上周四': 'LastThursday',
|
||||
'上周五': 'LastFriday',
|
||||
'上周六': 'LastSaturday',
|
||||
'上周日': 'LastSunday',
|
||||
'上月': 'LastMonth',
|
||||
'上月初': 'LastMonthBegin',
|
||||
'上月末': 'LastMonthEnd',
|
||||
'刷新状态成功': 'Refresh status succeeded',
|
||||
'队列管理': 'Queue manage',
|
||||
'创建队列': 'Create queue',
|
||||
'编辑队列': 'Edit queue',
|
||||
}
|
||||
'Waiting for thread': 'Waiting for thread',
|
||||
'Waiting for dependence': 'Waiting for dependence',
|
||||
'Start': 'Start',
|
||||
'Copy': 'Copy',
|
||||
'Delete': 'Delete',
|
||||
'Please enter keyword': 'Please enter keyword',
|
||||
'Confirm Upload': 'Confirm Upload',
|
||||
'File Upload': 'File Upload',
|
||||
'Drag the file into the current upload window': 'Drag the file into the current upload window',
|
||||
'Drag area upload': 'Drag area upload',
|
||||
'Upload': 'Upload',
|
||||
'Please enter file name': 'Please enter file name',
|
||||
'Please select the file to upload': 'Please select the file to upload',
|
||||
'Resources manage': 'Resources',
|
||||
'Security': 'Security',
|
||||
'Logout': 'Logout',
|
||||
'No data': 'No data',
|
||||
'Uploading...': 'Uploading...',
|
||||
'Loading...': 'Loading...',
|
||||
'List': 'List',
|
||||
'Unable to download without proper url': 'Unable to download without proper url',
|
||||
'Process': 'Process',
|
||||
'Process definition': 'Process definition',
|
||||
'Task record': 'Task record',
|
||||
'Warning group management': 'Warning group management',
|
||||
'Servers management': 'Servers management',
|
||||
'UDF management': 'UDF management',
|
||||
'Resource management': 'Resource management',
|
||||
'Function management': 'Function management',
|
||||
'Edit password': 'Edit password',
|
||||
'Ordinary users': 'Ordinary users',
|
||||
'Create process': 'Create process',
|
||||
'Timing state': 'Timing state',
|
||||
'Timing': 'Timing',
|
||||
'TreeView': 'TreeView',
|
||||
'Mailbox already exists! Recipients and copyers cannot repeat': 'Mailbox already exists! Recipients and copyers cannot repeat',
|
||||
'Mailbox input is illegal': 'Mailbox input is illegal',
|
||||
'Please set the parameters before starting': 'Please set the parameters before starting',
|
||||
'Continue': 'Continue',
|
||||
'End': 'End',
|
||||
'Node execution': 'Node execution',
|
||||
'Backward execution': 'Backward execution',
|
||||
'Forward execution': 'Forward execution',
|
||||
'Execute only the current node': 'Execute only the current node',
|
||||
'Notification strategy': 'Notification strategy',
|
||||
'Notification group': 'Notification group',
|
||||
'Please select a notification group': 'Please select a notification group',
|
||||
'Recipient': 'Recipient',
|
||||
'Cc': 'Cc',
|
||||
'Whether it is a complement process?': 'Whether it is a complement process?',
|
||||
'Mode of execution': 'Mode of execution',
|
||||
'Serial execution': 'Serial execution',
|
||||
'Parallel execution': 'Parallel execution',
|
||||
'Set parameters before timing': 'Set parameters before timing',
|
||||
'Start and stop time': 'Start and stop time',
|
||||
'Please select time': 'Please select time',
|
||||
'Please enter crontab': 'Please enter crontab',
|
||||
'none_1': 'none',
|
||||
'success_1': 'success',
|
||||
'failure_1': 'failure',
|
||||
'All_1': 'All',
|
||||
'Toolbar': 'Toolbar',
|
||||
'View variables': 'View variables',
|
||||
'Refresh DAG status': 'Refresh DAG status',
|
||||
'Return_1': 'Return',
|
||||
'Please enter format': 'Please enter format',
|
||||
'connection parameter': 'connection parameter',
|
||||
'Process definition details': 'Process definition details',
|
||||
'Create process definition': 'Create process definition',
|
||||
'Scheduled task list': 'Scheduled task list',
|
||||
'Process instance details': 'Process instance details',
|
||||
'Create Resource': 'Create Resource',
|
||||
'User Center': 'User Center',
|
||||
'Please enter method': 'Please enter method',
|
||||
'none': 'none',
|
||||
'name': 'name',
|
||||
'Process priority': 'Process priority',
|
||||
'Task priority': 'Task priority',
|
||||
'Task timeout alarm': 'Task timeout alarm',
|
||||
'Timeout strategy': 'Timeout strategy',
|
||||
'Timeout alarm': 'Timeout alarm',
|
||||
'Timeout failure': 'Timeout failure',
|
||||
'Timeout period': 'Timeout period',
|
||||
'Timeout strategy must be selected': 'Timeout strategy must be selected',
|
||||
'Timeout must be a positive integer': 'Timeout must be a positive integer',
|
||||
'Add dependency': 'Add dependency',
|
||||
'and': 'and',
|
||||
'or': 'or',
|
||||
'month': 'month',
|
||||
'week': 'week',
|
||||
'day': 'day',
|
||||
'hour': 'hour',
|
||||
'Running': 'Running',
|
||||
'Waiting for dependency to complete': 'Waiting for dependency to complete',
|
||||
'Selected': 'Selected',
|
||||
'Last1Hour': 'Last1Hour',
|
||||
'Last2Hours': 'Last2Hours',
|
||||
'Last3Hours': 'Last3Hours',
|
||||
'Last1Days': 'Last1Days',
|
||||
'Last2Days': 'Last2Days',
|
||||
'Last3Days': 'Last3Days',
|
||||
'Last7Days': 'Last7Days',
|
||||
'LastWeek': 'LastWeek',
|
||||
'LastMonday': 'LastMonday',
|
||||
'LastTuesday': 'LastTuesday',
|
||||
'LastWednesday': 'LastWednesday',
|
||||
'LastThursday': 'LastThursday',
|
||||
'LastFriday': 'LastFriday',
|
||||
'LastSaturday': 'LastSaturday',
|
||||
'LastSunday': 'LastSunday',
|
||||
'LastMonth': 'LastMonth',
|
||||
'LastMonthBegin': 'LastMonthBegin',
|
||||
'LastMonthEnd': 'LastMonthEnd',
|
||||
'Refresh status succeeded': 'Refresh status succeeded',
|
||||
'Queue manage': 'Queue manage',
|
||||
'Create queue': 'Create queue',
|
||||
'Edit queue': 'Edit queue',
|
||||
}
|
@ -16,454 +16,396 @@
|
||||
*/
|
||||
|
||||
export default {
|
||||
'用户名': '用户名',
|
||||
'请输入用户名': '请输入用户名',
|
||||
'密码': '密码',
|
||||
'请输入密码': '请输入密码',
|
||||
'登录': '登录',
|
||||
'首页': '首页',
|
||||
'未创建节点保存失败': '未创建节点保存失败',
|
||||
'全局参数': '全局参数',
|
||||
'局部参数': '局部参数',
|
||||
'复制成功': '复制成功',
|
||||
'该浏览器不支持自动复制': '该浏览器不支持自动复制',
|
||||
'确认保存': '确认保存',
|
||||
'是否保存DAG图': '是否保存DAG图',
|
||||
'当前节点设置': '当前节点设置',
|
||||
'查看历史': '查看历史',
|
||||
'查看日志': '查看日志',
|
||||
'进入该子节点': '进入该子节点',
|
||||
'节点名称': '节点名称',
|
||||
'请输入name(必填)': '请输入name(必填)',
|
||||
'运行标志': '运行标志',
|
||||
'正常': '正常',
|
||||
'禁止执行': '禁止执行',
|
||||
'描述': '描述',
|
||||
'请输入desc': '请输入desc',
|
||||
'失败重试次数': '失败重试次数',
|
||||
'次': '次',
|
||||
'失败重试间隔': '失败重试间隔',
|
||||
'分': '分',
|
||||
'取消': '取消',
|
||||
'确认添加': '确认添加',
|
||||
'新创建子工作流还未执行,不能进入子工作流': '新创建子工作流还未执行,不能进入子工作流',
|
||||
'该任务还未执行,不能进入子工作流': '该任务还未执行,不能进入子工作流',
|
||||
'请输入名称(必填)': '请输入名称(必填)',
|
||||
'名称已存在请重新输入': '名称已存在请重新输入',
|
||||
'下载日志': '下载日志',
|
||||
'刷新日志': '刷新日志',
|
||||
'进入全屏': '进入全屏',
|
||||
'取消全屏': '取消全屏',
|
||||
'关闭': '关闭',
|
||||
'更新日志成功': '更新日志成功',
|
||||
'暂无更多日志': '暂无更多日志',
|
||||
'暂无日志': '暂无日志',
|
||||
'正在努力请求日志中...': '正在努力请求日志中...',
|
||||
'设置DAG图名称': '设置DAG图名称',
|
||||
'请输入desc(选填)': '请输入desc(选填)',
|
||||
'设置全局': '设置全局',
|
||||
'是否更新流程定义': '是否更新流程定义',
|
||||
'添加': '添加',
|
||||
'DAG图名称不能为空': 'DAG图名称不能为空',
|
||||
'数据源中心': '数据源中心',
|
||||
'创建数据源': '创建数据源',
|
||||
'项目首页': '项目首页',
|
||||
'项目管理': '项目管理',
|
||||
'创建项目': '创建项目',
|
||||
'定时管理': '定时管理',
|
||||
'租户管理': '租户管理',
|
||||
'创建租户': '创建租户',
|
||||
'用户管理': '用户管理',
|
||||
'创建用户': '创建用户',
|
||||
'用户信息': '用户信息',
|
||||
'密码修改': '密码修改',
|
||||
'外部依赖': '外部依赖',
|
||||
'添加依赖策略': '添加依赖策略',
|
||||
'自身依赖': '自身依赖',
|
||||
'不依赖': '不依赖',
|
||||
'依赖上一周期': '依赖上一周期',
|
||||
'自定义': '自定义',
|
||||
'全部成功': '全部成功',
|
||||
'全部失败': '全部失败',
|
||||
'任一成功': '任一成功',
|
||||
'任一失败': '任一失败',
|
||||
'外部依赖信息不完整': '外部依赖信息不完整',
|
||||
'成功': '成功',
|
||||
'失败': '失败',
|
||||
'请选择节点': '请选择节点',
|
||||
'删除': '删除',
|
||||
'外部依赖不允许重复': '外部依赖不允许重复',
|
||||
'无流程定义': '无流程定义',
|
||||
'请选择': '请选择',
|
||||
'请输入正整数': '请输入正整数',
|
||||
'程序类型': '程序类型',
|
||||
'主函数的class': '主函数的class',
|
||||
'请输入mainClass': '请输入mainClass',
|
||||
'主jar包': '主jar包',
|
||||
'请选择主jar包': '请选择主jar包',
|
||||
'命令行参数': '命令行参数',
|
||||
'请输入命令行参数': '请输入命令行参数',
|
||||
'其他参数': '其他参数',
|
||||
'请输入其他参数': '请输入其他参数',
|
||||
'资源': '资源',
|
||||
'自定义参数': '自定义参数',
|
||||
'请填写主函数的class': '请填写主函数的class',
|
||||
'数据源': '数据源',
|
||||
'方法': '方法',
|
||||
'请输入method(选填)': '请输入method(选填)',
|
||||
'脚本': '脚本',
|
||||
'请输入rawScript(必填)': '请输入rawScript(必填)',
|
||||
'部署方式': '部署方式',
|
||||
'Driver内核数': 'Driver内核数',
|
||||
'请输入Driver内核数': '请输入Driver内核数',
|
||||
'Driver内存数': 'Driver内存数',
|
||||
'请输入Driver内存数': '请输入Driver内存数',
|
||||
'Executor数量': 'Executor数量',
|
||||
'请输入Executor数量': '请输入Executor数量',
|
||||
'Executor内存数': 'Executor内存数',
|
||||
'请输入Executor内存数': '请输入Executor内存数',
|
||||
'Executor内核数': 'Executor内核数',
|
||||
'请输入Executor内核数': '请输入Executor内核数',
|
||||
'请填写Executor数量': '请填写Executor数量',
|
||||
'Executor数量为正整数': 'Executor数量为正整数',
|
||||
'请填写Executor内存数': '请填写Executor内存数',
|
||||
'内存数为数字': '内存数为数字',
|
||||
'请填写Executor内核数': '请填写Executor内核数',
|
||||
'内核数为正整数': '内核数为正整数',
|
||||
'sql类型': 'sql类型',
|
||||
'表格': '表格',
|
||||
'附件': '附件',
|
||||
'sql参数': 'sql参数',
|
||||
'sql语句': 'sql语句',
|
||||
'UDF函数': 'UDF函数',
|
||||
'请输入sql语句(必填)': '请输入sql语句(必填)',
|
||||
'子节点': '子节点',
|
||||
'请选择子工作流': '请选择子工作流',
|
||||
'编辑': '编辑',
|
||||
'数据源名称': '数据源名称',
|
||||
'请输入数据源名称': '请输入数据源名称',
|
||||
'请输入描述': '请输入描述',
|
||||
'IP主机名': 'IP主机名',
|
||||
'请输入IP主机名': '请输入IP主机名',
|
||||
'端口': '端口',
|
||||
'请输入端口': '请输入端口',
|
||||
'数据库名': '数据库名',
|
||||
'请输入数据库名': '请输入数据库名',
|
||||
'jdbc连接参数': 'jdbc连接参数',
|
||||
'测试连接': '测试连接',
|
||||
'确认编辑': '确认编辑',
|
||||
'确认提交': '确认提交',
|
||||
'请输入资源名称': '请输入资源名称',
|
||||
'请输入IP/主机名': '请输入IP/主机名',
|
||||
'jdbc连接参数不是一个正确的JSON格式': 'jdbc连接参数不是一个正确的JSON格式',
|
||||
'编号': '编号',
|
||||
'数据源类型': '数据源类型',
|
||||
'数据源参数': '数据源参数',
|
||||
'创建时间': '创建时间',
|
||||
'更新时间': '更新时间',
|
||||
'操作': '操作',
|
||||
'点击查看': '点击查看',
|
||||
'确定删除吗?': '确定删除吗?',
|
||||
'确定': '确定',
|
||||
'选择日期区间': '选择日期区间',
|
||||
'任务状态统计': '任务状态统计',
|
||||
'序号': '序号',
|
||||
'数量': '数量',
|
||||
'状态': '状态',
|
||||
'流程状态统计': '流程状态统计',
|
||||
'流程定义统计': '流程定义统计',
|
||||
'编辑项目': '编辑项目',
|
||||
'项目名称': '项目名称',
|
||||
'请输入name': '请输入name',
|
||||
'请输入名称': '请输入名称',
|
||||
'所属用户': '所属用户',
|
||||
'ip': 'ip',
|
||||
'进程pid': '进程pid',
|
||||
'zk注册目录': 'zk注册目录',
|
||||
'User Name': '用户名',
|
||||
'Please enter user name': '请输入用户名',
|
||||
'Password': '密码',
|
||||
'Please enter your password': '请输入密码',
|
||||
'Login': '登录',
|
||||
'Home': '首页',
|
||||
'Failed to create node to save': '未创建节点保存失败',
|
||||
'Global parameters': '全局参数',
|
||||
'Local parameters': '局部参数',
|
||||
'Copy success': '复制成功',
|
||||
'The browser does not support automatic copying': '该浏览器不支持自动复制',
|
||||
'Whether to save the DAG graph': '是否保存DAG图',
|
||||
'Current node settings': '当前节点设置',
|
||||
'View history': '查看历史',
|
||||
'View log': '查看日志',
|
||||
'Enter this child node': '进入该子节点',
|
||||
'Node name': '节点名称',
|
||||
'Please enter name(required)': '请输入名称(必填)',
|
||||
'Run flag': '运行标志',
|
||||
'Normal': '正常',
|
||||
'Prohibition execution': '禁止执行',
|
||||
'Please enter description': '请输入描述',
|
||||
'Number of failed retries': '失败重试次数',
|
||||
'Times': '次',
|
||||
'Failed retry interval': '失败重试间隔',
|
||||
'Minute': '分',
|
||||
'Cancel': '取消',
|
||||
'Confirm add': '确认添加',
|
||||
'The newly created sub-Process has not yet been executed and cannot enter the sub-Process': '新创建子工作流还未执行,不能进入子工作流',
|
||||
'The task has not been executed and cannot enter the sub-Process': '该任务还未执行,不能进入子工作流',
|
||||
'Please enter name (required)':'请输入名称(必填)',
|
||||
'Name already exists': '名称已存在请重新输入',
|
||||
'Download Log': '下载日志',
|
||||
'Refresh Log': '刷新日志',
|
||||
'Enter full screen': '进入全屏',
|
||||
'Cancel full screen': '取消全屏',
|
||||
'Close': '关闭',
|
||||
'Update log success': '更新日志成功',
|
||||
'No more logs': '暂无更多日志',
|
||||
'No log': '暂无日志',
|
||||
'Loading Log...': '正在努力请求日志中...',
|
||||
'Set the DAG diagram name': '设置DAG图名称',
|
||||
'Please enter description(optional)': '请输入描述(选填)',
|
||||
'Set global': '设置全局',
|
||||
'Whether to update the process definition': '是否更新流程定义',
|
||||
'Add': '添加',
|
||||
'DAG graph name cannot be empty': 'DAG图名称不能为空',
|
||||
'Create Datasource': '创建数据源',
|
||||
'Project Home': '项目首页',
|
||||
'Project Manage': '项目管理',
|
||||
'Create Project': '创建项目',
|
||||
'Cron Management': '定时管理',
|
||||
'Tenant Management': '租户管理',
|
||||
'Create Tenant': '创建租户',
|
||||
'User Management': '用户管理',
|
||||
'Create User': '创建用户',
|
||||
'User Information': '用户信息',
|
||||
'Edit Password': '密码修改',
|
||||
'success': '成功',
|
||||
'failed': '失败',
|
||||
'delete': '删除',
|
||||
'Please choose': '请选择',
|
||||
'Please enter a positive integer': '请输入正整数',
|
||||
'Program Type': '程序类型',
|
||||
'Main class': '主函数的class',
|
||||
'Main jar package': '主jar包',
|
||||
'Please enter main jar package': '请选择主jar包',
|
||||
'Command-line parameters': '命令行参数',
|
||||
'Please enter Command-line parameters': '请输入命令行参数',
|
||||
'Other parameters': '其他参数',
|
||||
'Please enter other parameters': '请输入其他参数',
|
||||
'Resources': '资源',
|
||||
'Custom Parameters': '自定义参数',
|
||||
'Please enter main class': '请填写主函数的class',
|
||||
'Datasource': '数据源',
|
||||
'methods': '方法',
|
||||
'Please enter method(optional)': '请输入方法(选填)',
|
||||
'Script': '脚本',
|
||||
'Please enter script(required)': '请输入脚本(必填)',
|
||||
'Deploy Mode': '部署方式',
|
||||
'Driver core number': 'Driver内核数',
|
||||
'Please enter driver core number': '请输入Driver内核数',
|
||||
'Driver memory use': 'Driver内存数',
|
||||
'Please enter driver memory use': '请输入Driver内存数',
|
||||
'Number of Executors': 'Executor数量',
|
||||
'Please enter the number of Executor': '请输入Executor数量',
|
||||
'Executor memory': 'Executor内存数',
|
||||
'Please enter the Executor memory': '请输入Executor内存数',
|
||||
'Executor core number': 'Executor内核数',
|
||||
'Please enter Executor core number': '请输入Executor内核数',
|
||||
'The number of Executors should be a positive integer': 'Executor数量为正整数',
|
||||
'Memory should be a positive integer': '内存数为数字',
|
||||
'Please enter ExecutorPlease enter Executor core number': '请填写Executor内核数',
|
||||
'Core number should be positive integer': '内核数为正整数',
|
||||
'SQL Type': 'sql类型',
|
||||
'Table': '表格',
|
||||
'Attachment': '附件',
|
||||
'SQL Parameter': 'sql参数',
|
||||
'SQL Statement': 'sql语句',
|
||||
'UDF Function': 'UDF函数',
|
||||
'Please enter a SQL Statement(required)': '请输入sql语句(必填)',
|
||||
'Child Node': '子节点',
|
||||
'Please select a sub-Process': '请选择子工作流',
|
||||
'Edit': '编辑',
|
||||
'Datasource Name': '数据源名称',
|
||||
'Please enter datasource name': '请输入数据源名称',
|
||||
'IP': 'IP主机名',
|
||||
'Please enter IP': '请输入IP主机名',
|
||||
'Port': '端口',
|
||||
'Please enter port': '请输入端口',
|
||||
'Database Name': '数据库名',
|
||||
'Please enter database name': '请输入数据库名',
|
||||
'jdbc connect parameters': 'jdbc连接参数',
|
||||
'Test Connect': '测试连接',
|
||||
'Please enter resource name': '请输入资源名称',
|
||||
'Please enter IP/hostname': '请输入IP/主机名',
|
||||
'jdbc connection parameters is not a correct JSON format': 'jdbc连接参数不是一个正确的JSON格式',
|
||||
'#': '编号',
|
||||
'Datasource Type': '数据源类型',
|
||||
'Datasource Parameter': '数据源参数',
|
||||
'Create Time': '创建时间',
|
||||
'Update Time': '更新时间',
|
||||
'Operation': '操作',
|
||||
'Click to view': '点击查看',
|
||||
'Delete?': '确定删除吗?',
|
||||
'Confirm': '确定',
|
||||
'Task status statistics': '任务状态统计',
|
||||
'Number': '数量',
|
||||
'State': '状态',
|
||||
'Process Status Statistics': '流程状态统计',
|
||||
'Process Definition Statistics': '流程定义统计',
|
||||
'Project Name': '项目名称',
|
||||
'Please enter name': '请输入名称',
|
||||
'Owned Users': '所属用户',
|
||||
'Process Pid': '进程pid',
|
||||
'zk registration directory': 'zk注册目录',
|
||||
'cpuUsage': 'cpuUsage',
|
||||
'memoryUsage': 'memoryUsage',
|
||||
'最后心跳时间': '最后心跳时间',
|
||||
'编辑租户': '编辑租户',
|
||||
'租户编码': '租户编码',
|
||||
'租户名称': '租户名称',
|
||||
'队列': '队列',
|
||||
'请输入租户编码只允许英文': '请输入租户编码只允许英文',
|
||||
'请输入英文租户编码': '请输入英文租户编码',
|
||||
'请输入租户名称': '请输入租户名称',
|
||||
'编辑用户': '编辑用户',
|
||||
'用户名称': '用户名称',
|
||||
'请输入用户名称': '请输入用户名称',
|
||||
'租户': '租户',
|
||||
'邮件': '邮件',
|
||||
'请输入邮件': '请输入邮件',
|
||||
'手机': '手机',
|
||||
'请输入手机': '请输入手机',
|
||||
'请输入邮箱': '请输入邮箱',
|
||||
'请输入正确的邮箱格式': '请输入正确的邮箱格式',
|
||||
'请输入正确的手机格式': '请输入正确的手机格式',
|
||||
'邮箱': '邮箱',
|
||||
'项目': '项目',
|
||||
'授权': '授权',
|
||||
'编辑告警组': '编辑告警组',
|
||||
'创建告警组': '创建告警组',
|
||||
'组名称': '组名称',
|
||||
'请输入组名称': '请输入组名称',
|
||||
'组类型': '组类型',
|
||||
'备注': '备注',
|
||||
'短信': '短信',
|
||||
'管理用户': '管理用户',
|
||||
'权限': '权限',
|
||||
'管理员': '管理员',
|
||||
'修改': '修改',
|
||||
'确认密码': '确认密码',
|
||||
'请输入确认密码': '请输入确认密码',
|
||||
'密码不能为中文': '密码不能为中文',
|
||||
'请输入密码(6-22)字符密码': '请输入密码(6-22)字符密码',
|
||||
'确认密码不能为中文': '确认密码不能为中文',
|
||||
'请输入确认密码(6-22)字符密码': '请输入确认密码(6-22)字符密码',
|
||||
'密码与确认密码不一致,请重新确认': '密码与确认密码不一致,请重新确认',
|
||||
'请选择数据源': '请选择数据源',
|
||||
'请选择资源': '请选择资源',
|
||||
'查询': '查询',
|
||||
'非查询': '非查询',
|
||||
'prop(必填)': 'prop(必填)',
|
||||
'value(选填)': 'value(选填)',
|
||||
'prop不能为空': 'prop不能为空',
|
||||
'prop中有重复': 'prop中有重复',
|
||||
'流程名称': '流程名称',
|
||||
'开始时间': '开始时间',
|
||||
'结束时间': '结束时间',
|
||||
'Last heartbeat time': '最后心跳时间',
|
||||
'Edit Tenant': '编辑租户',
|
||||
'Tenant Code': '租户编码',
|
||||
'Tenant Name': '租户名称',
|
||||
'Queue': '队列',
|
||||
'Please enter the tenant code in English': '请输入租户编码只允许英文',
|
||||
'Please enter tenant code in English': '请输入英文租户编码',
|
||||
'Edit User': '编辑用户',
|
||||
'Tenant': '租户',
|
||||
'Email': '邮件',
|
||||
'Phone': '手机',
|
||||
'Please enter phone number': '请输入手机',
|
||||
'Please enter email': '请输入邮箱',
|
||||
'Please enter the correct email format': '请输入正确的邮箱格式',
|
||||
'Please enter the correct mobile phone format': '请输入正确的手机格式',
|
||||
'Project': '项目',
|
||||
'Authorize': '授权',
|
||||
'Edit alarm group': '编辑告警组',
|
||||
'Create alarm group': '创建告警组',
|
||||
'Group Name': '组名称',
|
||||
'Please enter group name': '请输入组名称',
|
||||
'Group Type': '组类型',
|
||||
'Remarks': '备注',
|
||||
'SMS': '短信',
|
||||
'Managing Users': '管理用户',
|
||||
'Permission': '权限',
|
||||
'Administrator': '管理员',
|
||||
'Confirm Password': '确认密码',
|
||||
'Please enter confirm password': '请输入确认密码',
|
||||
'Password cannot be in Chinese': '密码不能为中文',
|
||||
'Please enter a password (6-22) character password': '请输入密码(6-22)字符密码',
|
||||
'Confirmation password cannot be in Chinese': '确认密码不能为中文',
|
||||
'Please enter a confirmation password (6-22) character password': '请输入确认密码(6-22)字符密码',
|
||||
'The password is inconsistent with the confirmation password': '密码与确认密码不一致,请重新确认',
|
||||
'Please select the datasource': '请选择数据源',
|
||||
'Please select resources': '请选择资源',
|
||||
'Query': '查询',
|
||||
'Non Query': '非查询',
|
||||
'prop(required)': 'prop(必填)',
|
||||
'value(optional)': 'value(选填)',
|
||||
'prop is empty': 'prop不能为空',
|
||||
'prop is repeat': 'prop中有重复',
|
||||
'Start Time': '开始时间',
|
||||
'End Time': '结束时间',
|
||||
'crontab': 'crontab',
|
||||
'失败策略': '失败策略',
|
||||
'上线': '上线',
|
||||
'下线': '下线',
|
||||
'任务状态': '任务状态',
|
||||
'工作流实例': '工作流实例',
|
||||
'任务实例': '任务实例',
|
||||
'按选择日期区间': '按选择日期区间',
|
||||
'按目标表': '按目标表',
|
||||
'按源表': '按源表',
|
||||
'按状态': '按状态',
|
||||
'按日期': '按日期',
|
||||
'按任务名称': '按任务名称',
|
||||
'等待': '等待',
|
||||
'执行中': '执行中',
|
||||
'完成': '完成',
|
||||
'创建文件': '创建文件',
|
||||
'文件名称': '文件名称',
|
||||
'文件格式': '文件格式',
|
||||
'文件内容': '文件内容',
|
||||
'确认创建': '确认创建',
|
||||
'请输入资源内容': '请输入资源内容',
|
||||
'文件详情': '文件详情',
|
||||
'下载详情': '下载详情',
|
||||
'返回': '返回',
|
||||
'保存': '保存',
|
||||
'文件管理': '文件管理',
|
||||
'上传文件': '上传文件',
|
||||
'UDF函数管理': 'UDF函数管理',
|
||||
'创建UDF函数': '创建UDF函数',
|
||||
'UDF资源管理': 'UDF资源管理',
|
||||
'上传UDF资源': '上传UDF资源',
|
||||
'服务管理-Master': '服务管理-Master',
|
||||
'服务管理-Worker': '服务管理-Worker',
|
||||
'工作流名称': '工作流名称',
|
||||
'运行类型': '运行类型',
|
||||
'运行时长(s)': '运行时长(s)',
|
||||
'运行次数': '运行次数',
|
||||
'Failure Strategy': '失败策略',
|
||||
'online': '上线',
|
||||
'offline': '下线',
|
||||
'Task Status': '任务状态',
|
||||
'Process Instance': '工作流实例',
|
||||
'Task Instance': '任务实例',
|
||||
'Select date range': '选择日期区间',
|
||||
'Date': '日期',
|
||||
'waiting': '等待',
|
||||
'In Execution': '执行中',
|
||||
'Finish': '完成',
|
||||
'Create File': '创建文件',
|
||||
'File Name': '文件名称',
|
||||
'File Format': '文件格式',
|
||||
'File Content': '文件内容',
|
||||
'Create': '创建',
|
||||
'Please enter the resource content': '请输入资源内容',
|
||||
'File Details': '文件详情',
|
||||
'Download Details': '下载详情',
|
||||
'Return': '返回',
|
||||
'Save': '保存',
|
||||
'File Management': '文件管理',
|
||||
'Upload Files': '上传文件',
|
||||
'Create UDF Function': '创建UDF函数',
|
||||
'Upload UDF Resources': '上传UDF资源',
|
||||
'Service-Master': '服务管理-Master',
|
||||
'Service-Worker': '服务管理-Worker',
|
||||
'Process Name': '工作流名称',
|
||||
'Run Type': '运行类型',
|
||||
'Run Times': '运行次数',
|
||||
'host': 'host',
|
||||
'容错标识': '容错标识',
|
||||
'重跑': '重跑',
|
||||
'恢复失败': '恢复失败',
|
||||
'停止': '停止',
|
||||
'暂停': '暂停',
|
||||
'恢复暂停': '恢复暂停',
|
||||
'甘特图': '甘特图',
|
||||
'秒': '秒',
|
||||
'名称': '名称',
|
||||
'节点类型': '节点类型',
|
||||
'提交时间': '提交时间',
|
||||
'运行时长': '运行时长',
|
||||
'重试次数': '重试次数',
|
||||
'任务名称': '任务名称',
|
||||
'任务日期': '任务日期',
|
||||
'源表': '源表',
|
||||
'记录数': '记录数',
|
||||
'目标表': '目标表',
|
||||
'不支持在线查看类型': '不支持在线查看类型',
|
||||
'大小': '大小',
|
||||
'重命名': '重命名',
|
||||
'下载': '下载',
|
||||
'确认重命名': '确认重命名',
|
||||
'确定提交': '确定提交',
|
||||
'编辑UDF函数': '编辑UDF函数',
|
||||
'类型': '类型',
|
||||
'UDF函数名称': 'UDF函数名称',
|
||||
'请输入函数名': '请输入函数名',
|
||||
'包名类名': '包名类名',
|
||||
'请输入包名类名': '请输入包名类名',
|
||||
'参数': '参数',
|
||||
'请输入参数': '请输入参数',
|
||||
'UDF资源': 'UDF资源',
|
||||
'上传资源': '上传资源',
|
||||
'使用说明': '使用说明',
|
||||
'请输入使用说明': '请输入使用说明',
|
||||
'请输入UDF函数名称': '请输入UDF函数名称',
|
||||
'请选择UDF资源': '请选择UDF资源',
|
||||
'类名': '类名',
|
||||
'jar包': 'jar包',
|
||||
'库名': '库名',
|
||||
'UDF资源名称': 'UDF资源名称',
|
||||
'文件大小': '文件大小',
|
||||
'文件描述': '文件描述',
|
||||
'拖动节点和选中项': '拖动节点和选中项',
|
||||
'选择线条连接': '选择线条连接',
|
||||
'删除选中的线或节点': '删除选中的线或节点',
|
||||
'缩小': '缩小',
|
||||
'放大': '放大',
|
||||
'全屏': '全屏',
|
||||
'未发布': '未发布',
|
||||
'启动工作流': '启动工作流',
|
||||
'从当前节点开始执行': '从当前节点开始执行',
|
||||
'恢复被容错的工作流': '恢复被容错的工作流',
|
||||
'恢复暂停流程': '恢复暂停流程',
|
||||
'从失败节点开始执行': '从失败节点开始执行',
|
||||
'补数': '补数',
|
||||
'调度执行': '调度执行',
|
||||
'恢复等待线程': '恢复等待线程',
|
||||
'提交成功': '提交成功',
|
||||
'正在执行': '正在执行',
|
||||
'准备暂停': '准备暂停',
|
||||
'准备停止': '准备停止',
|
||||
'需要容错': '需要容错',
|
||||
'fault-tolerant sign': '容错标识',
|
||||
'Rerun': '重跑',
|
||||
'Recovery Failed': '恢复失败',
|
||||
'Stop': '停止',
|
||||
'Pause': '暂停',
|
||||
'Recovery Suspend': '恢复暂停',
|
||||
'Gantt': '甘特图',
|
||||
'Name': '名称',
|
||||
'Node Type': '节点类型',
|
||||
'Submit Time': '提交时间',
|
||||
'Duration': '运行时长',
|
||||
'Retry Count': '重试次数',
|
||||
'Task Name': '任务名称',
|
||||
'Task Date': '任务日期',
|
||||
'Source Table': '源表',
|
||||
'Record Number': '记录数',
|
||||
'Target Table': '目标表',
|
||||
'Online viewing type is not supported': '不支持在线查看类型',
|
||||
'Size': '大小',
|
||||
'Rename': '重命名',
|
||||
'Download': '下载',
|
||||
'Confirm Rename': '确认重命名',
|
||||
'Submit': '提交',
|
||||
'Edit UDF Function': '编辑UDF函数',
|
||||
'type': '类型',
|
||||
'UDF Function Name': 'UDF函数名称',
|
||||
'Please enter a function name': '请输入函数名',
|
||||
'Package Name': '包名类名',
|
||||
'Please enter a Package name': '请输入包名类名',
|
||||
'Parameter': '参数',
|
||||
'Please enter a parameter': '请输入参数',
|
||||
'UDF Resources': 'UDF资源',
|
||||
'Upload Resources': '上传资源',
|
||||
'Instructions': '使用说明',
|
||||
'Please enter a instructions': '请输入使用说明',
|
||||
'Please enter a UDF function name': '请输入UDF函数名称',
|
||||
'Select UDF Resources': '请选择UDF资源',
|
||||
'Class Name': '类名',
|
||||
'Jar Package': 'jar包',
|
||||
'Library Name': '库名',
|
||||
'UDF Resource Name': 'UDF资源名称',
|
||||
'File Size': '文件大小',
|
||||
'Description': '描述',
|
||||
'Drag Nodes and Selected Items': '拖动节点和选中项',
|
||||
'Select Line Connection': '选择线条连接',
|
||||
'Delete selected lines or nodes': '删除选中的线或节点',
|
||||
'Full Screen': '全屏',
|
||||
'Unpublished': '未发布',
|
||||
'Start Process': '启动工作流',
|
||||
'Execute from the current node': '从当前节点开始执行',
|
||||
'Recover tolerance fault process': '恢复被容错的工作流',
|
||||
'Resume the suspension process': '恢复暂停流程',
|
||||
'Execute from the failed nodes': '从失败节点开始执行',
|
||||
'Complement Data': '补数',
|
||||
'Scheduling execution': '调度执行',
|
||||
'Recovery waiting thread': '恢复等待线程',
|
||||
'Submitted successfully': '提交成功',
|
||||
'Executing': '正在执行',
|
||||
'Ready to pause': '准备暂停',
|
||||
'Ready to stop': '准备停止',
|
||||
'Need fault tolerance': '需要容错',
|
||||
'kill': 'kill',
|
||||
'等待线程': '等待线程',
|
||||
'等待依赖': '等待依赖',
|
||||
'开始运行': '开始运行',
|
||||
'编辑节点': '编辑节点',
|
||||
'复制节点': '复制节点',
|
||||
'删除节点': '删除节点',
|
||||
'待运行': '待运行',
|
||||
'运行中': '运行中',
|
||||
'请输入关键词': '请输入关键词',
|
||||
'确认上传': '确认上传',
|
||||
'文件上传': '文件上传',
|
||||
'请将文件拖拽到当前上传窗口内!': '请将文件拖拽到当前上传窗口内!',
|
||||
'拖动区域上传': '拖动区域上传',
|
||||
'文件名': '文件名',
|
||||
'点击上传': '点击上传',
|
||||
'请输入文件名': '请输入文件名',
|
||||
'请选择要上传的文件': '请选择要上传的文件',
|
||||
'请输入资源描述': '请输入资源描述',
|
||||
'资源中心': '资源中心',
|
||||
'安全中心': '安全中心',
|
||||
'退出': '退出',
|
||||
'查询无数据': '查询无数据',
|
||||
'创建': '创建',
|
||||
'确认': '确认',
|
||||
'文件上传中': '文件上传中',
|
||||
'正在努力加载中...': '正在努力加载中...',
|
||||
'列表': '列表',
|
||||
'无下载url无法下载': '无下载url无法下载',
|
||||
'工作流': '工作流',
|
||||
'工作流定义': '工作流定义',
|
||||
'任务记录': '任务记录',
|
||||
'告警组管理': '告警组管理',
|
||||
'服务管理': '服务管理',
|
||||
'UDF管理': 'UDF管理',
|
||||
'资源管理': '资源管理',
|
||||
'函数管理': '函数管理',
|
||||
'修改密码': '修改密码',
|
||||
'普通用户': '普通用户',
|
||||
'创建工作流': '创建工作流',
|
||||
'定时状态': '定时状态',
|
||||
'启动': '启动',
|
||||
'定时': '定时',
|
||||
'树形图': '树形图',
|
||||
'邮箱已存在!收件人和抄送人不能重复': '邮箱已存在!收件人和抄送人不能重复',
|
||||
'邮箱输入不合法': '邮箱输入不合法',
|
||||
'启动前请先设置参数': '启动前请先设置参数',
|
||||
'继续': '继续',
|
||||
'结束': '结束',
|
||||
'节点执行': '节点执行',
|
||||
'向后执行': '向后执行',
|
||||
'向前执行': '向前执行',
|
||||
'仅执行当前节点': '仅执行当前节点',
|
||||
'通知策略': '通知策略',
|
||||
'通知组': '通知组',
|
||||
'请选择通知组': '请选择通知组',
|
||||
'收件人': '收件人',
|
||||
'抄送人': '抄送人',
|
||||
'是否补数': '是否补数',
|
||||
'执行方式': '执行方式',
|
||||
'串行执行': '串行执行',
|
||||
'并行执行': '并行执行',
|
||||
'时间': '时间',
|
||||
'定时前请先设置参数': '定时前请先设置参数',
|
||||
'起止时间': '起止时间',
|
||||
'请选择时间': '请选择时间',
|
||||
'请填写 crontab': '请填写 crontab',
|
||||
'都不发': '都不发',
|
||||
'成功发': '成功发',
|
||||
'失败发': '失败发',
|
||||
'成功或失败都发': '成功或失败都发',
|
||||
'工具栏': '工具栏',
|
||||
'查看变量': '查看变量',
|
||||
'刷新DAG状态': '刷新DAG状态',
|
||||
'返回上一节点': '返回上一节点',
|
||||
'请输入格式为': '请输入格式为',
|
||||
'连接参数': '连接参数',
|
||||
'流程定义详情': '流程定义详情',
|
||||
'创建流程定义': '创建流程定义',
|
||||
'定时任务列表': '定时任务列表',
|
||||
'流程实例详情': '流程实例详情',
|
||||
'创建资源': '创建资源',
|
||||
'用户中心': '用户中心',
|
||||
'请输入方法': '请输入方法',
|
||||
'文档中心': '文档中心',
|
||||
'创建不允许下载!': '创建不允许下载!',
|
||||
'无': '无',
|
||||
'按名称': '按名称',
|
||||
'流程优先级': '流程优先级',
|
||||
'任务优先级': '任务优先级',
|
||||
'任务超时告警': '任务超时告警',
|
||||
'超时策略': '超时策略',
|
||||
'超时告警': '超时告警',
|
||||
'超时失败': '超时失败',
|
||||
'超时时长': '超时时长',
|
||||
'超时策略必须选一个': '超时策略必须选一个',
|
||||
'超时时长必须为正整数': '超时时长必须为正整数',
|
||||
'添加依赖': '添加依赖',
|
||||
'且': '且',
|
||||
'或': '或',
|
||||
'年': '年',
|
||||
'月': '月',
|
||||
'周': '周',
|
||||
'日': '日',
|
||||
'时': '时',
|
||||
'正在运行': '正在运行',
|
||||
'等待依赖完成': '等待依赖完成',
|
||||
'已选': '已选',
|
||||
'前1小时': '前1小时',
|
||||
'前2小时': '前2小时',
|
||||
'前3小时': '前3小时',
|
||||
'昨天': '昨天',
|
||||
'前两天': '前两天',
|
||||
'前三天': '前三天',
|
||||
'前七天': '前七天',
|
||||
'上周': '上周',
|
||||
'上周一': '上周一',
|
||||
'上周二': '上周二',
|
||||
'上周三': '上周三',
|
||||
'上周四': '上周四',
|
||||
'上周五': '上周五',
|
||||
'上周六': '上周六',
|
||||
'上周日': '上周日',
|
||||
'上月': '上月',
|
||||
'上月初': '上月初',
|
||||
'上月末': '上月末',
|
||||
'刷新状态成功': '刷新状态成功',
|
||||
'队列管理': '队列管理',
|
||||
'创建队列': '创建队列',
|
||||
'编辑队列': '编辑队列',
|
||||
}
|
||||
'Waiting for thread': '等待线程',
|
||||
'Waiting for dependence': '等待依赖',
|
||||
'Start': '运行',
|
||||
'Copy': '复制节点',
|
||||
'Please enter keyword': '请输入关键词',
|
||||
'Confirm Upload': '确认上传',
|
||||
'File Upload': '文件上传',
|
||||
'Drag the file into the current upload window': '请将文件拖拽到当前上传窗口内!',
|
||||
'Drag area upload': '拖动区域上传',
|
||||
'Upload': '点击上传',
|
||||
'Please enter file name': '请输入文件名',
|
||||
'Please select the file to upload': '请选择要上传的文件',
|
||||
'Resources manage': '资源中心',
|
||||
'Security': '安全中心',
|
||||
'Logout': '退出',
|
||||
'No data': '查询无数据',
|
||||
'Uploading...': '文件上传中',
|
||||
'Loading...': '正在努力加载中...',
|
||||
'List': '列表',
|
||||
'Unable to download without proper url': '无下载url无法下载',
|
||||
'Process': '工作流',
|
||||
'Process definition': '工作流定义',
|
||||
'Task record': '任务记录',
|
||||
'Warning group management': '告警组管理',
|
||||
'Servers management': '服务管理',
|
||||
'UDF management': 'UDF管理',
|
||||
'Resource management': '资源管理',
|
||||
'Function management': '函数管理',
|
||||
'Edit password': '修改密码',
|
||||
'Ordinary users': '普通用户',
|
||||
'Create process': '创建工作流',
|
||||
'Timing state': '定时状态',
|
||||
'Timing': '定时',
|
||||
'TreeView': '树形图',
|
||||
'Mailbox already exists! Recipients and copyers cannot repeat': '邮箱已存在!收件人和抄送人不能重复',
|
||||
'Mailbox input is illegal': '邮箱输入不合法',
|
||||
'Please set the parameters before starting': '启动前请先设置参数',
|
||||
'Continue': '继续',
|
||||
'End': '结束',
|
||||
'Node execution': '节点执行',
|
||||
'Backward execution': '向后执行',
|
||||
'Forward execution': '向前执行',
|
||||
'Execute only the current node': '仅执行当前节点',
|
||||
'Notification strategy': '通知策略',
|
||||
'Notification group': '通知组',
|
||||
'Please select a notification group': '请选择通知组',
|
||||
'Recipient': '收件人',
|
||||
'Cc': '抄送人',
|
||||
'Whether it is a complement process?': '是否补数',
|
||||
'Mode of execution': '执行方式',
|
||||
'Serial execution': '串行执行',
|
||||
'Parallel execution': '并行执行',
|
||||
'Set parameters before timing': '定时前请先设置参数',
|
||||
'Start and stop time': '起止时间',
|
||||
'Please select time': '请选择时间',
|
||||
'Please enter crontab': '请输入crontab',
|
||||
'none_1': '都不发',
|
||||
'success_1': '成功发',
|
||||
'failure_1': '失败发',
|
||||
'All_1': '成功或失败都发',
|
||||
'Toolbar': '工具栏',
|
||||
'View variables': '查看变量',
|
||||
'Refresh DAG status': '刷新DAG状态',
|
||||
'Return_1': '返回上一节点',
|
||||
'Please enter format': '请输入格式为',
|
||||
'connection parameter': '连接参数',
|
||||
'Process definition details': '流程定义详情',
|
||||
'Create process definition': '创建流程定义',
|
||||
'Scheduled task list': '定时任务列表',
|
||||
'Process instance details': '流程实例详情',
|
||||
'Create Resource': '创建资源',
|
||||
'User Center': '用户中心',
|
||||
'Please enter method': '请输入方法',
|
||||
'none': '无',
|
||||
'name': '按名称',
|
||||
'Process priority': '流程优先级',
|
||||
'Task priority': '任务优先级',
|
||||
'Task timeout alarm': '任务超时告警',
|
||||
'Timeout strategy': '超时策略',
|
||||
'Timeout alarm': '超时告警',
|
||||
'Timeout failure': '超时失败',
|
||||
'Timeout period': '超时时长',
|
||||
'Timeout strategy must be selected': '超时策略必须选一个',
|
||||
'Timeout must be a positive integer': '超时时长必须为正整数',
|
||||
'Add dependency': '添加依赖',
|
||||
'and': '且',
|
||||
'or': '或',
|
||||
'month': '月',
|
||||
'week': '周',
|
||||
'day': '日',
|
||||
'hour': '时',
|
||||
'Running': '正在运行',
|
||||
'Waiting for dependency to complete': '等待依赖完成',
|
||||
'Selected': '已选',
|
||||
'Last1Hour': '前1小时',
|
||||
'Last2Hours': '前2小时',
|
||||
'Last3Hours': '前3小时',
|
||||
'Last1Days': '昨天',
|
||||
'Last2Days': '前两天',
|
||||
'Last3Days': '前三天',
|
||||
'Last7Days': '前七天',
|
||||
'LastWeek': '上周',
|
||||
'LastMonday': '上周一',
|
||||
'LastTuesday': '上周二',
|
||||
'LastWednesday': '上周三',
|
||||
'LastThursday': '上周四',
|
||||
'LastFriday': '上周五',
|
||||
'LastSaturday': '上周六',
|
||||
'LastSunday': '上周日',
|
||||
'LastMonth': '上月',
|
||||
'LastMonthBegin': '上月初',
|
||||
'LastMonthEnd': '上月末',
|
||||
'Refresh status succeeded': '刷新状态成功',
|
||||
'Queue manage': '队列管理',
|
||||
'Create queue': '创建队列',
|
||||
'Edit queue': '编辑队列',
|
||||
}
|
Loading…
Reference in New Issue
Block a user