Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DolphinScheduler社区
DolphinScheduler
提交
794c713c
DolphinScheduler
项目概览
DolphinScheduler社区
/
DolphinScheduler
与 Fork 源项目一致
Fork自
apache / DolphinScheduler
通知
67
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
DolphinScheduler
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
794c713c
编写于
4月 15, 2019
作者:
G
gongzijian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
i18n
上级
8ddcb19e
变更
100
展开全部
隐藏空白更改
内联
并排
Showing
100 changed file
with
1622 addition
and
1731 deletion
+1622
-1731
escheduler-ui/src/js/conf/home/pages/dag/_source/config.js
escheduler-ui/src/js/conf/home/pages/dag/_source/config.js
+30
-30
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.scss
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.scss
+2
-1
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.vue
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.vue
+9
-9
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/selectInput.vue
.../home/pages/dag/_source/formModel/_source/selectInput.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
...home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
+8
-8
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/formModel.vue
...rc/js/conf/home/pages/dag/_source/formModel/formModel.vue
+22
-22
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/log.vue
...r-ui/src/js/conf/home/pages/dag/_source/formModel/log.vue
+15
-15
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/commcon.js
...home/pages/dag/_source/formModel/tasks/_source/commcon.js
+24
-24
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/datasource.vue
.../pages/dag/_source/formModel/tasks/_source/datasource.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/dependItemList.vue
...es/dag/_source/formModel/tasks/_source/dependItemList.vue
+5
-5
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/localParams.vue
...pages/dag/_source/formModel/tasks/_source/localParams.vue
+7
-7
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/resources.vue
...e/pages/dag/_source/formModel/tasks/_source/resources.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/dependent.vue
...conf/home/pages/dag/_source/formModel/tasks/dependent.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/mr.vue
...src/js/conf/home/pages/dag/_source/formModel/tasks/mr.vue
+13
-13
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/procedure.vue
...conf/home/pages/dag/_source/formModel/tasks/procedure.vue
+5
-5
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/python.vue
...js/conf/home/pages/dag/_source/formModel/tasks/python.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/shell.vue
.../js/conf/home/pages/dag/_source/formModel/tasks/shell.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/spark.vue
.../js/conf/home/pages/dag/_source/formModel/tasks/spark.vue
+31
-31
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue
...rc/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue
+10
-10
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sub_process.vue
...nf/home/pages/dag/_source/formModel/tasks/sub_process.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/dag/_source/jumpAffirm/jumpAffirm.vue
.../js/conf/home/pages/dag/_source/jumpAffirm/jumpAffirm.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/jsPlumbHandle.js
...rc/js/conf/home/pages/dag/_source/plugIn/jsPlumbHandle.js
+4
-4
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/util.js
...uler-ui/src/js/conf/home/pages/dag/_source/plugIn/util.js
+1
-1
escheduler-ui/src/js/conf/home/pages/dag/_source/udp/udp.vue
escheduler-ui/src/js/conf/home/pages/dag/_source/udp/udp.vue
+8
-8
escheduler-ui/src/js/conf/home/pages/dag/_source/variable/variablesView.vue
...js/conf/home/pages/dag/_source/variable/variablesView.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/_source/createDataSource.vue
.../pages/datasource/pages/list/_source/createDataSource.vue
+27
-27
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/_source/list.vue
...js/conf/home/pages/datasource/pages/list/_source/list.vue
+14
-14
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/index.vue
...ui/src/js/conf/home/pages/datasource/pages/list/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/home/index.vue
escheduler-ui/src/js/conf/home/pages/home/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/email.vue
...es/projects/pages/definition/pages/list/_source/email.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue
...ges/projects/pages/definition/pages/list/_source/list.vue
+17
-17
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue
...es/projects/pages/definition/pages/list/_source/start.vue
+23
-23
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue
...s/projects/pages/definition/pages/list/_source/timing.vue
+17
-17
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/util.js
...ages/projects/pages/definition/pages/list/_source/util.js
+4
-4
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/index.vue
...home/pages/projects/pages/definition/pages/list/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/tree/index.vue
...home/pages/projects/pages/definition/pages/tree/index.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue
...e/pages/projects/pages/definition/timing/_source/list.vue
+12
-12
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/index.vue
...onf/home/pages/projects/pages/definition/timing/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/projects/pages/index/_source/projectChart.vue
.../home/pages/projects/pages/index/_source/projectChart.vue
+10
-10
escheduler-ui/src/js/conf/home/pages/projects/pages/index/index.vue
...-ui/src/js/conf/home/pages/projects/pages/index/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/gantt/index.vue
.../home/pages/projects/pages/instance/pages/gantt/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/common.js
...ages/projects/pages/instance/pages/list/_source/common.js
+12
-12
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/conditions.vue
...projects/pages/instance/pages/list/_source/conditions.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/list.vue
...pages/projects/pages/instance/pages/list/_source/list.vue
+34
-35
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/index.vue
...f/home/pages/projects/pages/instance/pages/list/index.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/projects/pages/list/_source/createProject.vue
.../home/pages/projects/pages/list/_source/createProject.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/projects/pages/list/_source/list.vue
...c/js/conf/home/pages/projects/pages/list/_source/list.vue
+12
-12
escheduler-ui/src/js/conf/home/pages/projects/pages/list/index.vue
...r-ui/src/js/conf/home/pages/projects/pages/list/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/projects/pages/taskInstance/pages/list/_source/list.vue
...s/projects/pages/taskInstance/pages/list/_source/list.vue
+12
-12
escheduler-ui/src/js/conf/home/pages/projects/pages/taskInstance/pages/list/index.vue
...me/pages/projects/pages/taskInstance/pages/list/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/projects/pages/taskRecord/pages/list/_source/list.vue
...ges/projects/pages/taskRecord/pages/list/_source/list.vue
+19
-13
escheduler-ui/src/js/conf/home/pages/projects/pages/taskRecord/pages/list/index.vue
...home/pages/projects/pages/taskRecord/pages/list/index.vue
+18
-18
escheduler-ui/src/js/conf/home/pages/projects/pages/timing/index.vue
...ui/src/js/conf/home/pages/projects/pages/timing/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/create/index.vue
...onf/home/pages/resource/pages/file/pages/create/index.vue
+11
-11
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/details/_source/noType.vue
...ages/resource/pages/file/pages/details/_source/noType.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/details/index.vue
...nf/home/pages/resource/pages/file/pages/details/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/edit/index.vue
.../conf/home/pages/resource/pages/file/pages/edit/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/_source/list.vue
...ome/pages/resource/pages/file/pages/list/_source/list.vue
+14
-14
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/_source/rename.vue
...e/pages/resource/pages/file/pages/list/_source/rename.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/index.vue
.../conf/home/pages/resource/pages/file/pages/list/index.vue
+4
-4
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/_source/createUdf.vue
...s/resource/pages/udf/pages/function/_source/createUdf.vue
+17
-17
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/_source/list.vue
.../pages/resource/pages/udf/pages/function/_source/list.vue
+15
-15
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/index.vue
...nf/home/pages/resource/pages/udf/pages/function/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/_source/list.vue
.../pages/resource/pages/udf/pages/resource/_source/list.vue
+14
-14
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/_source/rename.vue
...ages/resource/pages/udf/pages/resource/_source/rename.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/index.vue
...nf/home/pages/resource/pages/udf/pages/resource/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/createQueue.vue
...f/home/pages/security/pages/queue/_source/createQueue.vue
+5
-5
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/list.vue
.../js/conf/home/pages/security/pages/queue/_source/list.vue
+10
-10
escheduler-ui/src/js/conf/home/pages/security/pages/queue/index.vue
...-ui/src/js/conf/home/pages/security/pages/queue/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/security/pages/servers/_source/list.vue
...s/conf/home/pages/security/pages/servers/_source/list.vue
+6
-6
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/master/index.vue
.../home/pages/security/pages/servers/pages/master/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/worker/index.vue
.../home/pages/security/pages/servers/pages/worker/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/createTenement.vue
.../pages/security/pages/tenement/_source/createTenement.vue
+12
-12
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/list.vue
.../conf/home/pages/security/pages/tenement/_source/list.vue
+13
-13
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/index.vue
.../src/js/conf/home/pages/security/pages/tenement/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/createUser.vue
...nf/home/pages/security/pages/users/_source/createUser.vue
+16
-16
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/list.vue
.../js/conf/home/pages/security/pages/users/_source/list.vue
+22
-22
escheduler-ui/src/js/conf/home/pages/security/pages/users/index.vue
...-ui/src/js/conf/home/pages/security/pages/users/index.vue
+3
-3
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/createWarning.vue
...es/security/pages/warningGroups/_source/createWarning.vue
+9
-9
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue
.../home/pages/security/pages/warningGroups/_source/list.vue
+15
-15
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/index.vue
...js/conf/home/pages/security/pages/warningGroups/index.vue
+2
-2
escheduler-ui/src/js/conf/home/pages/user/pages/account/_source/info.vue
...rc/js/conf/home/pages/user/pages/account/_source/info.vue
+10
-10
escheduler-ui/src/js/conf/home/pages/user/pages/account/index.vue
...er-ui/src/js/conf/home/pages/user/pages/account/index.vue
+1
-1
escheduler-ui/src/js/conf/home/pages/user/pages/password/_source/info.vue
...c/js/conf/home/pages/user/pages/password/_source/info.vue
+13
-13
escheduler-ui/src/js/conf/home/pages/user/pages/password/index.vue
...r-ui/src/js/conf/home/pages/user/pages/password/index.vue
+1
-1
escheduler-ui/src/js/conf/home/router/index.js
escheduler-ui/src/js/conf/home/router/index.js
+39
-39
escheduler-ui/src/js/conf/login/App.vue
escheduler-ui/src/js/conf/login/App.vue
+7
-7
escheduler-ui/src/js/module/components/conditions/conditions.vue
...ler-ui/src/js/module/components/conditions/conditions.vue
+1
-1
escheduler-ui/src/js/module/components/fileUpdate/fileUpdate.vue
...ler-ui/src/js/module/components/fileUpdate/fileUpdate.vue
+12
-12
escheduler-ui/src/js/module/components/fileUpdate/udfUpdate.vue
...uler-ui/src/js/module/components/fileUpdate/udfUpdate.vue
+6
-6
escheduler-ui/src/js/module/components/nav/nav.vue
escheduler-ui/src/js/module/components/nav/nav.vue
+13
-13
escheduler-ui/src/js/module/components/noData/noData.vue
escheduler-ui/src/js/module/components/noData/noData.vue
+1
-1
escheduler-ui/src/js/module/components/popup/popup.vue
escheduler-ui/src/js/module/components/popup/popup.vue
+3
-3
escheduler-ui/src/js/module/components/progressBar/progressBar.vue
...r-ui/src/js/module/components/progressBar/progressBar.vue
+2
-2
escheduler-ui/src/js/module/components/secondaryMenu/menu.js
escheduler-ui/src/js/module/components/secondaryMenu/menu.js
+21
-21
escheduler-ui/src/js/module/components/spin/spin.vue
escheduler-ui/src/js/module/components/spin/spin.vue
+1
-1
escheduler-ui/src/js/module/components/transfer/transfer.vue
escheduler-ui/src/js/module/components/transfer/transfer.vue
+5
-5
escheduler-ui/src/js/module/download/index.js
escheduler-ui/src/js/module/download/index.js
+1
-1
escheduler-ui/src/js/module/i18n/locale/en_US.js
escheduler-ui/src/js/module/i18n/locale/en_US.js
+389
-446
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
+388
-446
未找到文件。
escheduler-ui/src/js/conf/home/pages/dag/_source/config.js
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.scss
浏览文件 @
794c713c
...
...
@@ -386,10 +386,11 @@ svg path:hover {
.name-p
{
position
:
absolute
;
left
:
50%
;
bottom
:
-24
px
;
top
:
58
px
;
width
:
200px
;
text-align
:
center
;
margin-left
:
-100px
;
word-break
:break-all
;
}
.ban-p
{
position
:
absolute
;
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/dag.vue
浏览文件 @
794c713c
<
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
)
})
},
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/selectInput.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
浏览文件 @
794c713c
...
...
@@ -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
'
,
{
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/formModel.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/log.vue
浏览文件 @
794c713c
...
...
@@ -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
})
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/commcon.js
浏览文件 @
794c713c
...
...
@@ -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
'
)}
`
}
]
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/datasource.vue
浏览文件 @
794c713c
...
...
@@ -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
'
,
{
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/dependItemList.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/localParams.vue
浏览文件 @
794c713c
...
...
@@ -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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/_source/resources.vue
浏览文件 @
794c713c
...
...
@@ -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"
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/dependent.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/mr.vue
浏览文件 @
794c713c
<
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('
请输入mainC
lass')"
:placeholder=
"$t('
Please enter main c
lass')"
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/procedure.vue
浏览文件 @
794c713c
<
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/python.vue
浏览文件 @
794c713c
<
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/shell.vue
浏览文件 @
794c713c
<
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/spark.vue
浏览文件 @
794c713c
<
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('
请输入mainC
lass')"
:placeholder=
"$t('
Please enter main c
lass')"
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sql.vue
浏览文件 @
794c713c
<
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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sub_process.vue
浏览文件 @
794c713c
...
...
@@ -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
'
,
{
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/jumpAffirm/jumpAffirm.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/jsPlumbHandle.js
浏览文件 @
794c713c
...
...
@@ -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
=
()
=>
{
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/plugIn/util.js
浏览文件 @
794c713c
...
...
@@ -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>`
}
/**
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/udp/udp.vue
浏览文件 @
794c713c
...
...
@@ -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
}
...
...
escheduler-ui/src/js/conf/home/pages/dag/_source/variable/variablesView.vue
浏览文件 @
794c713c
<
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
()
})
...
...
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/_source/createDataSource.vue
浏览文件 @
794c713c
<
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
}
}
...
...
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
>
...
...
escheduler-ui/src/js/conf/home/pages/datasource/pages/list/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/home/index.vue
浏览文件 @
794c713c
<
template
>
<m-list-construction
:title=
"$t('
首页
')"
>
<m-list-construction
:title=
"$t('
Home
')"
>
<template
slot=
"content"
>
<m-project-chart
:id=
"0"
></m-project-chart>
</
template
>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/email.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/start.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/util.js
浏览文件 @
794c713c
...
...
@@ -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
'
)}
`
}
]
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/tree/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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'"
>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/definition/timing/index.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/index/_source/projectChart.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/index/index.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/gantt/index.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/common.js
浏览文件 @
794c713c
...
...
@@ -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
'
)}
`
}
]
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/conditions.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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"
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/instance/pages/list/index.vue
浏览文件 @
794c713c
<
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
)
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/list/_source/createProject.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/list/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/taskInstance/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/taskInstance/pages/list/index.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/taskRecord/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/taskRecord/pages/list/index.vue
浏览文件 @
794c713c
<
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
'
)}
`
}
]
}
...
...
escheduler-ui/src/js/conf/home/pages/projects/pages/timing/index.vue
浏览文件 @
794c713c
<
template
>
<m-list-construction
:title=
"$t('
定时管理
')"
>
<m-list-construction
:title=
"$t('
Cron Management
')"
>
<template
slot=
"content"
>
<m-list></m-list>
</
template
>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/create/index.vue
浏览文件 @
794c713c
<
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
}
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/details/_source/noType.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/details/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/edit/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/_source/rename.vue
浏览文件 @
794c713c
<
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
()
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/file/pages/list/index.vue
浏览文件 @
794c713c
<
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
'
)
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/_source/createUdf.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/function/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/_source/rename.vue
浏览文件 @
794c713c
<
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
()
...
...
escheduler-ui/src/js/conf/home/pages/resource/pages/udf/pages/resource/index.vue
浏览文件 @
794c713c
<
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
'
)
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/createQueue.vue
浏览文件 @
794c713c
<
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
)
{
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/queue/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/queue/index.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/servers/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
(
'
进程p
id
'
)
}}
</span>
<span>
{{
$t
(
'
Process P
id
'
)
}}
</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"
>
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/master/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/servers/pages/worker/index.vue
浏览文件 @
794c713c
<
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>
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/createTenement.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/tenement/index.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/createUser.vue
浏览文件 @
794c713c
<
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
}
}
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/users/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
'
}
}
})
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/users/index.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/createWarning.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/_source/list.vue
浏览文件 @
794c713c
...
...
@@ -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
')
}
`
}
}
}
)
...
...
escheduler-ui/src/js/conf/home/pages/security/pages/warningGroups/index.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/account/_source/info.vue
浏览文件 @
794c713c
<
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
"
>&
nbsp
;
<
/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
>
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/account/index.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/password/_source/info.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/conf/home/pages/user/pages/password/index.vue
浏览文件 @
794c713c
<
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
>
...
...
escheduler-ui/src/js/conf/home/router/index.js
浏览文件 @
794c713c
...
...
@@ -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
'
)}
`
}
}
]
...
...
escheduler-ui/src/js/conf/login/App.vue
浏览文件 @
794c713c
...
...
@@ -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
}
...
...
escheduler-ui/src/js/module/components/conditions/conditions.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/module/components/fileUpdate/fileUpdate.vue
浏览文件 @
794c713c
<
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
...
...
escheduler-ui/src/js/module/components/fileUpdate/udfUpdate.vue
浏览文件 @
794c713c
...
...
@@ -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
...
...
escheduler-ui/src/js/module/components/nav/nav.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/module/components/noData/noData.vue
浏览文件 @
794c713c
...
...
@@ -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
>
...
...
escheduler-ui/src/js/module/components/popup/popup.vue
浏览文件 @
794c713c
...
...
@@ -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
,
...
...
escheduler-ui/src/js/module/components/progressBar/progressBar.vue
浏览文件 @
794c713c
...
...
@@ -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>
...
...
escheduler-ui/src/js/module/components/secondaryMenu/menu.js
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
escheduler-ui/src/js/module/components/spin/spin.vue
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
escheduler-ui/src/js/module/components/transfer/transfer.vue
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
escheduler-ui/src/js/module/download/index.js
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
escheduler-ui/src/js/module/i18n/locale/en_US.js
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
escheduler-ui/src/js/module/i18n/locale/zh_CN.js
浏览文件 @
794c713c
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录