Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
ETL-admin
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
莫晓莉
ETL-admin
Commits
e12c5cc4
Commit
e12c5cc4
authored
Mar 16, 2021
by
李耀琨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
图标回显
parent
be023217
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
367 additions
and
74 deletions
+367
-74
src/api/kettle/link.js
+34
-0
src/views/dashboard-kettle/components/designer/FlowDesigner.vue
+323
-70
src/views/dashboard-kettle/components/designer/modules/node.vue
+8
-2
src/views/dashboard-kettle/components/designer/modules/node_menu.vue
+1
-1
src/views/kettle/home.vue
+1
-1
No files found.
src/api/kettle/link.js
View file @
e12c5cc4
...
@@ -158,6 +158,40 @@ export function inputOutputFields(data){
...
@@ -158,6 +158,40 @@ export function inputOutputFields(data){
//内容编码
export
function
availableCharsets
(
data
){
return
request
({
url
:
'etlweb/system/availableCharsets'
,
data
,
method
:
'post'
})
}
//字段格式
export
function
valueFormat
(
data
){
return
request
({
url
:
'etlweb/system/valueFormat'
,
data
,
method
:
'post'
})
}
//字段类型
export
function
valueMeta
(
data
){
return
request
({
url
:
'etlweb/system/valueMeta'
,
data
,
method
:
'post'
})
}
...
...
src/views/dashboard-kettle/components/designer/FlowDesigner.vue
View file @
e12c5cc4
...
@@ -154,8 +154,8 @@
...
@@ -154,8 +154,8 @@
<el-tabs
v-model=
"activeName"
type=
"border-card"
@
tab-click=
"tapClick"
>
<el-tabs
v-model=
"activeName"
type=
"border-card"
@
tab-click=
"tapClick"
>
<el-tab-pane
label=
"文件"
name=
"file"
>
<el-tab-pane
label=
"文件"
name=
"file"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"120px"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"120px"
>
<el-form-item
label=
"表格类(引擎):"
>
<el-form-item
label=
"表格类
型
(引擎):"
>
<el-select
v-model=
"form.
engin
e"
style=
"width: 100%"
>
<el-select
v-model=
"form.
wSpreadSheetTyp
e"
style=
"width: 100%"
>
<el-option
<el-option
v-for=
"item in engine"
v-for=
"item in engine"
:key=
"item.code"
:key=
"item.code"
...
@@ -173,7 +173,9 @@
...
@@ -173,7 +173,9 @@
:show-file-list=
"false"
:show-file-list=
"false"
:auto-upload=
"false"
:auto-upload=
"false"
>
>
<el-button
size=
"small"
type=
"primary"
>
点击上传
</el-button>
<el-button
size=
"small"
type=
"primary"
style=
"margin: 10px"
>
点击上传
</el-button
>
</el-upload>
</el-upload>
<el-card
class=
"box-card"
>
<el-card
class=
"box-card"
>
...
@@ -216,13 +218,13 @@
...
@@ -216,13 +218,13 @@
<el-card
class=
"box-card"
>
<el-card
class=
"box-card"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"200px"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"200px"
>
<el-form-item
label=
"从前面的步骤获取文件名:"
>
<el-form-item
label=
"从前面的步骤获取文件名:"
>
<el-checkbox
v-model=
"form.
checked
"
></el-checkbox>
<el-checkbox
v-model=
"form.
wAccFilenames
"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"从哪个步骤读文
化
名:"
>
<el-form-item
label=
"从哪个步骤读文
件
名:"
>
<el-select
<el-select
v-model=
"form.
region
"
v-model=
"form.
wAccStep
"
style=
"width: 100%"
style=
"width: 100%"
:disabled=
"
form.checked
"
:disabled=
"
!form.wAccFilenames
"
>
>
<el-option
label=
"区域一"
value=
"shanghai"
></el-option>
<el-option
label=
"区域一"
value=
"shanghai"
></el-option>
<el-option
label=
"区域二"
value=
"beijing"
></el-option>
<el-option
label=
"区域二"
value=
"beijing"
></el-option>
...
@@ -231,9 +233,9 @@
...
@@ -231,9 +233,9 @@
<el-form-item
label=
"保存文件的字段:"
>
<el-form-item
label=
"保存文件的字段:"
>
<el-select
<el-select
v-model=
"form.
region
"
v-model=
"form.
wAccField
"
style=
"width: 100%"
style=
"width: 100%"
:disabled=
"
form.checked
"
:disabled=
"
!form.wAccFilenames
"
>
>
<el-option
label=
"区域一"
value=
"shanghai"
></el-option>
<el-option
label=
"区域一"
value=
"shanghai"
></el-option>
<el-option
label=
"区域二"
value=
"beijing"
></el-option>
<el-option
label=
"区域二"
value=
"beijing"
></el-option>
...
@@ -244,26 +246,25 @@
...
@@ -244,26 +246,25 @@
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
label=
"工作表"
name=
"worksheet"
>
<el-tab-pane
label=
"工作表"
name=
"worksheet"
>
<el-button
type=
"primary"
@
click=
"addSheet"
>
添加工作表
</el-button>
<el-form
ref=
"form"
:model=
"form"
label-width=
"160px"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"160px"
>
<el-form-item
label=
"要读取的工作表列表:"
>
<el-form-item
label=
"要读取的工作表列表:"
>
<el-button
type=
"primary"
@
click=
"addSheet"
style=
"margin: 10px"
>
添加工作表
</el-button
>
<el-card
class=
"box-card"
>
<el-card
class=
"box-card"
>
<el-table
:data=
"tableData
"
style=
"width: 100%"
>
<el-table
:data=
"workList
"
style=
"width: 100%"
>
<el-table-column
prop=
"name"
label=
"工作表名称"
width=
"120"
>
<el-table-column
prop=
"name"
label=
"工作表名称"
width=
"120"
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"
filemask
"
label=
"起始行"
>
<el-table-column
prop=
"
startrow
"
label=
"起始行"
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"startcol"
label=
"起始列"
>
prop=
"exclude_filemask"
label=
"起始列"
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作"
>
<el-table-column
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
<el-button
@
click=
"
handle
Click(scope.row)"
@
click=
"
work
Click(scope.row)"
type=
"text"
type=
"text"
size=
"small"
size=
"small"
>
编辑
</el-button
>
编辑
</el-button
...
@@ -271,7 +272,7 @@
...
@@ -271,7 +272,7 @@
<el-button
<el-button
type=
"text"
type=
"text"
size=
"small"
size=
"small"
@
click=
"delete
Row(scope.$index, tableData
)"
@
click=
"delete
work(scope.$index, workList
)"
>
删除
</el-button
>
删除
</el-button
>
>
</
template
>
</
template
>
...
@@ -282,60 +283,77 @@
...
@@ -282,60 +283,77 @@
</el-form>
</el-form>
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
label=
"内容"
name=
"content"
>
<el-tab-pane
label=
"内容"
name=
"content"
>
<el-form
ref=
"
form"
:model=
"f
orm"
label-width=
"200px"
>
<el-form
ref=
"
contentForm"
:model=
"contentF
orm"
label-width=
"200px"
>
<el-form-item
label=
"头部:"
>
<el-form-item
label=
"头部:"
>
<el-checkbox
v-model=
"
form.checked
"
></el-checkbox>
<el-checkbox
v-model=
"
contentForm.wHeader
"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"没有空行:"
>
<el-form-item
label=
"没有空行:"
>
<el-checkbox
v-model=
"
form.checked
"
></el-checkbox>
<el-checkbox
v-model=
"
contentForm.wNoempty
"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"停在空白记录:"
>
<el-form-item
label=
"停在空白记录:"
>
<el-checkbox
v-model=
"
form.checked
"
></el-checkbox>
<el-checkbox
v-model=
"
contentForm.wStoponempty
"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"限制:"
>
<el-form-item
label=
"限制:"
>
<el-input
v-model=
"
form.name
"
></el-input>
<el-input
v-model=
"
contentForm.wLimit
"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"编码:"
>
<el-form-item
label=
"编码:"
>
<el-select
v-model=
"form.region"
style=
"width: 100%"
>
<el-select
v-model=
"contentForm.wEncoding"
style=
"width: 100%"
>
<el-option
label=
"区域一"
value=
"shanghai"
></el-option>
<el-option
<el-option
label=
"区域二"
value=
"beijing"
></el-option>
v-for=
"item in code"
:key=
"item.index"
:label=
"item.name"
:value=
"item.name"
/>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"添加文件名"
>
<el-form-item
label=
"添加文件名"
>
<el-checkbox
v-model=
"
form.checked
"
></el-checkbox>
<el-checkbox
v-model=
"
contentForm.wAddResult
"
></el-checkbox>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
label=
"错误处理"
name=
"handling"
>
<el-tab-pane
label=
"错误处理"
name=
"handling"
>
<el-form
ref=
"form"
:model=
"
f
orm"
label-width=
"130px"
>
<el-form
ref=
"form"
:model=
"
handlingF
orm"
label-width=
"130px"
>
<el-form-item
label=
"严格类型:"
>
<el-form-item
label=
"严格类型:"
>
<el-checkbox
v-model=
"
form.checked
"
></el-checkbox>
<el-checkbox
v-model=
"
handlingForm.wStrictTypes
"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"忽略错误:"
>
<el-form-item
label=
"忽略错误:"
>
<el-checkbox
v-model=
"
form.check
ed"
></el-checkbox>
<el-checkbox
v-model=
"
handlingForm.wErrorIgnor
ed"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"跳过错误行:"
>
<el-form-item
label=
"跳过错误行:"
>
<el-checkbox
v-model=
"form.checked"
></el-checkbox>
<el-checkbox
v-model=
"handlingForm.skip"
:disabled=
"!handlingForm.wSkipErrorLines"
></el-checkbox>
</el-form-item>
</el-form-item>
<el-form-item
label=
"警文件目录:"
>
<el-form-item
label=
"
告
警文件目录:"
>
<el-row
:gutter=
"10"
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.wWarningDestDir"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.wWarningExt"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
变量
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
变量
</el-button
></el-col
>
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
浏览
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
浏览
</el-button
></el-col
>
>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
...
@@ -343,17 +361,27 @@
...
@@ -343,17 +361,27 @@
<el-form-item
label=
"错误件目录:"
>
<el-form-item
label=
"错误件目录:"
>
<el-row
:gutter=
"10"
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.error"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.errorExtend"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
变量
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
变量
</el-button
></el-col
>
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
浏览
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
浏览
</el-button
></el-col
>
>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
...
@@ -361,17 +389,27 @@
...
@@ -361,17 +389,27 @@
<el-form-item
label=
"失败行数文件目录:"
>
<el-form-item
label=
"失败行数文件目录:"
>
<el-row
:gutter=
"10"
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.fail"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
扩展名
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<el-input
v-model=
"form.name"
></el-input>
<el-input
v-model=
"handlingForm.failExtend"
:disabled=
"!handlingForm.wErrorIgnored"
></el-input>
</el-col>
</el-col>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
变量
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
变量
</el-button
></el-col
>
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-col
class=
"line"
:span=
"2.5"
>
<el-button
size=
"mini"
>
浏览
</el-button></el-col
<el-button
size=
"mini"
:disabled=
"!handlingForm.wErrorIgnored"
>
浏览
</el-button
></el-col
>
>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
...
@@ -379,57 +417,97 @@
...
@@ -379,57 +417,97 @@
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
label=
"字段"
name=
"field"
>
<el-tab-pane
label=
"字段"
name=
"field"
>
<el-card
class=
"box-card"
>
</el-card>
<el-button
type=
"primary"
@
click=
"addField"
style=
"margin: 10px"
>
添加字段
</el-button
>
<el-table
:data=
"fieldList"
style=
"width: 100%"
>
<el-table-column
prop=
"name"
label=
"名称"
width=
"120"
>
</el-table-column>
<el-table-column
prop=
"type"
label=
"类型"
>
</el-table-column>
<el-table-column
prop=
"length"
label=
"长度"
>
</el-table-column>
<el-table-column
prop=
"precision"
label=
"精度"
>
</el-table-column>
<el-table-column
prop=
"trim_type"
label=
"去除空格类型"
>
</el-table-column>
<el-table-column
prop=
"repeat"
label=
"重复"
>
</el-table-column>
<el-table-column
prop=
"format"
label=
"格式"
>
</el-table-column>
<el-table-column
prop=
"currency"
label=
"货币"
>
</el-table-column>
<el-table-column
prop=
"decimal"
label=
"小数"
>
</el-table-column>
<el-table-column
prop=
"group"
label=
"分组"
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"120px"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"fieldClick(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button
>
<el-button
type=
"text"
size=
"small"
@
click=
"deletefield(scope.$index, fieldList)"
>
删除
</el-button
>
</
template
>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tab-pane>
<el-tab-pane
label=
"其他输出字段"
name=
"oher "
>
<el-tab-pane
label=
"其他输出字段"
name=
"oher "
>
<el-form
ref=
"form"
:model=
"
f
orm"
label-width=
"150px"
>
<el-form
ref=
"form"
:model=
"
otherF
orm"
label-width=
"150px"
>
<el-form-item
label=
"文件名称字段:"
>
<el-form-item
label=
"文件名称字段:"
>
<el-input
v-model=
"form.
name
"
></el-input>
<el-input
v-model=
"form.
wInclFilenameField
"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"Sheet名称字段:"
>
<el-form-item
label=
"Sheet名称字段:"
>
<el-input
v-model=
"
form.name
"
></el-input>
<el-input
v-model=
"
otherForm.wInclSheetnameField
"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"Sheet的行号列:"
>
<el-form-item
label=
"Sheet的行号列:"
>
<el-input
v-model=
"
form.name
"
></el-input>
<el-input
v-model=
"
otherForm.wInclSheetRownumField
"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"行号列:"
>
<el-form-item
label=
"行号列:"
>
<el-input
v-model=
"
form.name
"
></el-input>
<el-input
v-model=
"
otherForm.wInclRownumField
"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"文件名字段:"
>
<el-form-item
label=
"文件名字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wShortFileFieldN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"扩展名字段:"
>
<el-form-item
label=
"扩展名字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wExtensionFieldN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"路径字段:"
>
<el-form-item
label=
"路径字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wPathFieldN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"文件大小字段:"
>
<el-form-item
label=
"文件大小字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wSizeFieldN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"是否为隐藏文件字段:"
>
<el-form-item
label=
"是否为隐藏文件字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wIsHiddenN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"最后修改时间字段:"
>
<el-form-item
label=
"最后修改时间字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wLastModificationTimeN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"Uri字段:"
>
<el-form-item
label=
"Uri字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wUriN
ame"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"Root uri字段:"
>
<el-form-item
label=
"Root uri字段:"
>
<el-input
v-model=
"
form.n
ame"
></el-input>
<el-input
v-model=
"
otherForm.wRootUriN
ame"
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</el-tab-pane>
</el-tab-pane>
...
@@ -441,7 +519,7 @@
...
@@ -441,7 +519,7 @@
</span>
</span>
</el-dialog>
</el-dialog>
<!-- 修改-->
<!--
文件
修改-->
<el-dialog
<el-dialog
title=
"编辑"
title=
"编辑"
:visible
.
sync=
"edit"
:visible
.
sync=
"edit"
...
@@ -450,7 +528,7 @@
...
@@ -450,7 +528,7 @@
>
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"150px"
>
<el-form
ref=
"form"
:model=
"form"
label-width=
"150px"
>
<el-form-item
label=
"文件/目录:"
>
<el-form-item
label=
"文件/目录:"
>
<el-input
v-model=
"form.name"
:disabled=
"true"
></el-input>
<el-input
v-model=
"form.name"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"通配符:"
>
<el-form-item
label=
"通配符:"
>
...
@@ -481,6 +559,106 @@
...
@@ -481,6 +559,106 @@
<el-button
type=
"primary"
@
click=
"edit = false"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"edit = false"
>
确 定
</el-button>
</span>
</span>
</el-dialog>
</el-dialog>
<!-- 工作添加/修改-->
<el-dialog
title=
"编辑"
:visible
.
sync=
"work"
width=
"500px"
:before-close=
"handleClose"
>
<el-form
ref=
"form"
:model=
"workForm"
label-width=
"150px"
>
<el-form-item
label=
"工作表名称:"
>
<el-input
v-model=
"workForm.name"
></el-input>
</el-form-item>
<el-form-item
label=
"起始行:"
>
<el-input
v-model=
"workForm.startLine"
></el-input>
</el-form-item>
<el-form-item
label=
"起始列:"
>
<el-input
v-model=
"workForm.startColumn"
></el-input>
</el-form-item>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"work = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"work = false"
>
确 定
</el-button>
</span>
</el-dialog>
<!-- 字段添加/修改-->
<el-dialog
title=
"编辑"
:visible
.
sync=
"field"
width=
"500px"
:before-close=
"handleClose"
>
<el-form
ref=
"form"
:model=
"fieldForm"
label-width=
"120px"
>
<el-form-item
label=
"名称:"
>
<el-input
v-model=
"fieldForm.name"
></el-input>
</el-form-item>
<el-form-item
label=
"类型:"
>
<el-select
v-model=
"fieldForm.type"
style=
"width: 100%"
>
<el-option
v-for=
"item in fieldType"
:key=
"item.id"
:label=
"item.name"
:value=
"item.name"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"长度:"
>
<el-input
v-model=
"fieldForm.length"
></el-input>
</el-form-item>
<el-form-item
label=
"精度:"
>
<el-input
v-model=
"fieldForm.accuracy"
></el-input>
</el-form-item>
<el-form-item
label=
"去除空格类型:"
>
<el-select
v-model=
"fieldForm.space"
style=
"width: 100%"
>
<el-option
label=
"不去掉空格"
value=
"none"
></el-option>
<el-option
label=
"去掉左空格"
value=
"left"
></el-option>
<el-option
label=
"去掉右空格"
value=
"right"
></el-option>
<el-option
label=
"去掉左右两端空格"
value=
"both"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"重复:"
>
<el-input
v-model=
"fieldForm.repeat"
></el-input>
</el-form-item>
<el-form-item
label=
"格式:"
>
<el-select
v-model=
"fieldForm.format"
style=
"width: 100%"
>
<el-option
v-for=
"item in fieldFormat"
:key=
"item.index"
:label=
"item.name"
:value=
"item.name"
/></el-select>
</el-form-item>
<el-form-item
label=
"货币:"
>
<el-input
v-model=
"fieldForm.currency"
></el-input>
</el-form-item>
<el-form-item
label=
"小数:"
>
<el-input
v-model=
"fieldForm.decimal"
></el-input>
</el-form-item>
<el-form-item
label=
"分组:"
>
<el-input
v-model=
"fieldForm.grouping"
></el-input>
</el-form-item>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"field = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"field = false"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</div>
</template>
</template>
...
@@ -498,6 +676,9 @@ import {
...
@@ -498,6 +676,9 @@ import {
excelSheetType
,
excelSheetType
,
previousSteps
,
previousSteps
,
inputOutputFields
,
inputOutputFields
,
availableCharsets
,
valueFormat
,
valueMeta
,
}
from
"@/api/kettle/link"
;
}
from
"@/api/kettle/link"
;
export
default
{
export
default
{
data
()
{
data
()
{
...
@@ -511,6 +692,20 @@ export default {
...
@@ -511,6 +692,20 @@ export default {
include_subfolders
:
"1"
,
include_subfolders
:
"1"
,
},
},
],
],
workList
:
[
{
name
:
"王小虎"
,
startLine
:
"0"
,
startColumn
:
"11"
,
},
],
fieldList
:
[
{
name
:
"王小虎"
,
startLine
:
"0"
,
startColumn
:
"11"
,
},
],
engine
:
[],
engine
:
[],
isShowIcon
:
false
,
isShowIcon
:
false
,
isLeftMenu
:
true
,
isLeftMenu
:
true
,
...
@@ -533,13 +728,32 @@ export default {
...
@@ -533,13 +728,32 @@ export default {
sourceId
:
undefined
,
sourceId
:
undefined
,
targetId
:
undefined
,
targetId
:
undefined
,
},
},
code
:
{},
zoom
:
0.5
,
zoom
:
0.5
,
excelLnput
:
false
,
excelLnput
:
false
,
edit
:
false
,
edit
:
false
,
work
:
false
,
field
:
false
,
form
:
{
form
:
{
checked
:
true
,
wAccFilenames
:
false
,
},
workForm
:
{
wHeader
:
false
,
wNoempty
:
false
,
wStoponempty
:
false
,
wAddResult
:
false
,
},
},
contentForm
:
{},
handlingForm
:
{
wStrictTypes
:
false
,
wErrorIgnored
:
false
,
skip
:
false
,
},
otherForm
:{},
fieldForm
:
{},
fieldFormat
:
[],
fieldType
:[],
activeName
:
"file"
,
activeName
:
"file"
,
};
};
},
},
...
@@ -685,11 +899,36 @@ export default {
...
@@ -685,11 +899,36 @@ export default {
deleteRow
(
index
,
rows
)
{
deleteRow
(
index
,
rows
)
{
rows
.
splice
(
index
,
1
);
rows
.
splice
(
index
,
1
);
},
},
deletework
(
index
,
rows
)
{
rows
.
splice
(
index
,
1
);
},
deletefield
(
index
,
rows
)
{
rows
.
splice
(
index
,
1
);
},
tapClick
()
{},
tapClick
()
{},
handleClick
(
val
)
{
handleClick
(
val
)
{
this
.
edit
=
!
this
.
edit
;
this
.
edit
=
!
this
.
edit
;
this
.
form
=
val
;
this
.
form
=
val
;
},
},
workClick
(
val
)
{
this
.
work
=
!
this
.
work
;
this
.
workForm
=
val
;
},
fieldClick
(
val
)
{
this
.
field
=
!
this
.
field
;
this
.
fieldForm
=
val
;
},
addSheet
()
{
this
.
work
=
!
this
.
work
;
this
.
workForm
=
{};
},
addField
()
{
this
.
field
=
!
this
.
field
;
this
.
fieldForm
=
{};
},
// 关闭弹框
// 关闭弹框
handleClose
(
done
)
{
handleClose
(
done
)
{
this
.
$confirm
(
"确认关闭?"
)
this
.
$confirm
(
"确认关闭?"
)
...
@@ -1089,13 +1328,27 @@ export default {
...
@@ -1089,13 +1328,27 @@ export default {
this
.
engine
=
res
;
this
.
engine
=
res
;
});
});
previousSteps
().
then
(
res
=>
{
availableCharsets
(
pamer
).
then
((
res
)
=>
{
this
.
code
=
res
;
})
console
.
log
(
res
);
});
inputOutputFields
().
then
(
res
=>
{
let
pamer2
=
new
FormData
();
// 创建form对象
pamer2
.
append
(
"valueType"
,
"all"
);
valueFormat
(
pamer2
).
then
((
res
)
=>
{
this
.
fieldFormat
=
res
;
});
valueMeta
().
then
(
res
=>
{
this
.
fieldType
=
res
console
.
log
(
res
);
})
})
previousSteps
().
then
((
res
)
=>
{});
inputOutputFields
().
then
((
res
)
=>
{});
},
},
// 是否具有该线
// 是否具有该线
hasLine
(
from
,
to
)
{
hasLine
(
from
,
to
)
{
...
...
src/views/dashboard-kettle/components/designer/modules/node.vue
View file @
e12c5cc4
...
@@ -10,7 +10,8 @@
...
@@ -10,7 +10,8 @@
<!--
<div
class=
"ef-node-left"
></div>
-->
<!--
<div
class=
"ef-node-left"
></div>
-->
<!-- 节点类型的图标 -->
<!-- 节点类型的图标 -->
<div
class=
"el-node-icon ef-node-left-ico flow-node-drag"
>
<div
class=
"el-node-icon ef-node-left-ico flow-node-drag"
>
<img
:src=
"node.ico"
alt=
""
class=
" flow-node-drag"
>
<img
:src=
"prefix+node.ico"
alt=
""
class=
" flow-node-drag"
>
<!--
<i
:class=
"nodeIcoClass"
></i>
-->
<!--
<i
:class=
"nodeIcoClass"
></i>
-->
</div>
</div>
<!-- 节点名称 -->
<!-- 节点名称 -->
...
@@ -34,7 +35,11 @@
...
@@ -34,7 +35,11 @@
activeElement
:
Object
activeElement
:
Object
},
},
data
()
{
data
()
{
return
{}
return
{
prefix
:
'http://192.168.0.2:9888/ETLWEB-SERVER/etlweb/'
,
}
},
},
computed
:
{
computed
:
{
nodeContainerClass
()
{
nodeContainerClass
()
{
...
@@ -59,6 +64,7 @@
...
@@ -59,6 +64,7 @@
}
}
},
},
methods
:
{
methods
:
{
// 点击节点
// 点击节点
clickNode
()
{
clickNode
()
{
this
.
$emit
(
'clickNode'
,
this
.
node
.
id
)
this
.
$emit
(
'clickNode'
,
this
.
node
.
id
)
...
...
src/views/dashboard-kettle/components/designer/modules/node_menu.vue
View file @
e12c5cc4
...
@@ -87,7 +87,7 @@ var mousePosition = {
...
@@ -87,7 +87,7 @@ var mousePosition = {
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
prefix
:
'http://192.168.0.
44:9700
/etlweb/'
,
prefix
:
'http://192.168.0.
2:9888/ETLWEB-SERVER
/etlweb/'
,
// 测试数据开始=====
// 测试数据开始=====
jobTreeList
:
[
jobTreeList
:
[
{
{
...
...
src/views/kettle/home.vue
View file @
e12c5cc4
...
@@ -1219,7 +1219,7 @@ export default {
...
@@ -1219,7 +1219,7 @@ export default {
type
:
nodeMenu
.
type
,
//节点类型
type
:
nodeMenu
.
type
,
//节点类型
left
:
left
+
'px'
,
//坐标
left
:
left
+
'px'
,
//坐标
top
:
top
+
'px'
,
//坐标
top
:
top
+
'px'
,
//坐标
ico
:
this
.
prefix
+
nodeMenu
.
icon
,
//图标
ico
:
nodeMenu
.
icon
,
//图标
}
}
console
.
log
(
node
);
console
.
log
(
node
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment