Commit d327393f by 李耀琨

完成字符串替换,替换Null值,分组,发送邮件

parent e9433fa1
ENV = 'development'
#VUE_APP_BASE_API = 'http://147.1.3.180:9888/'
#VUE_APP_WS_API = 'ws://147.1.3.180:9888/'
#VUE_APP_BASE_API = 'http://192.168.0.24:9888'
#VUE_APP_WS_API = 'ws://192.168.0.24:9888'
#VUE_APP_FILE_API = 'http://192.168.0.24:9888'
# 接口地址
#VUE_APP_BASE_API = 'http://192.168.0.33:9889'
#VUE_APP_WS_API = 'ws://192.168.0.33:9889'
#VUE_APP_FILE_API = 'http://192.168.0.33:9889'
VUE_APP_BASE_API = 'http://192.168.0.71:9888'
VUE_APP_WS_API = 'ws://192.168.0.71:9888'
VUE_APP_FILE_API = 'http://192.168.0.71:9888'
# 是否启用 babel-plugin-dynamic-import-node插件
VUE_CLI_BABEL_TRANSPILE_MODULES = true
......@@ -64,6 +64,7 @@
"scss": "^0.2.4",
"scss-loader": "0.0.1",
"sortablejs": "1.8.4",
"uuid": "^8.3.2",
"vue": "2.6.10",
"vue-count-to": "1.0.13",
"vue-cropper": "0.4.9",
......
......@@ -584,7 +584,7 @@ aside {
// $svgUrl:'http://147.1.3.180:9888/ETLWEB-SERVER/etlweb';
// $svgUrl:'http://192.168.0.24:9888/ETLWEB-SERVER/etlweb';
$svgUrl:'http://192.168.0.71:9888/ETLWEB-SERVER/etlweb';
// $svgUrl:'http://192.168.0.33:9889/ETLWEB-SERVER/etlweb';
// $svgUrl:'http://192.168.0.44:9882/ETLWEB-SERVER/etlweb';
// .schema { background-image: url($svgUrl/ui/images/schema.svg?scale=16) !important;}
......
......@@ -81,6 +81,7 @@ const baseUrl = process.env.VUE_APP_BASE_API === '/' ? '' : process.env.VUE_APP_
// Vue.prototype.etlWeb = "http://147.1.3.180:9888/ETLWEB-SERVER/etlweb/"
// Vue.prototype.etlWeb = "http://192.168.0.24:9888/ETLWEB-SERVER/etlweb/"
Vue.prototype.etlWeb = "http://192.168.0.71:9888/ETLWEB-SERVER/etlweb/"
// Vue.prototype.etlWeb = "http://192.168.0.33:9889/ETLWEB-SERVER/etlweb/"
new Vue({
......
......@@ -458,6 +458,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import main from "../../../mykettle/main";
export default {
components: {
......
......@@ -206,6 +206,20 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { valueFormat, valueMeta } from "@/api/kettle/link";
export default {
......
......@@ -169,6 +169,20 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { valueFormat, valueMeta } from "@/api/kettle/link";
export default {
......
......@@ -82,6 +82,20 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes } from "@/api/kettle/link";
export default {
......
......@@ -69,7 +69,7 @@
</el-form>
结构分组的字段:
<br />
<el-button type="text" @click="selectModify(true)">添加字段</el-button>
<el-button type="text" @click="structure(true)">添加字段</el-button>
<el-button type="text" @click="getTheGroup">获取字段</el-button>
<el-table :data="groupFile" border style="width: 100%">
<el-table-column prop="name" label="分组字段"> </el-table-column>
......@@ -77,7 +77,7 @@
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
@click="selectModify(false, scope.row)"
@click="structure(false, scope.row)"
type="text"
size="small"
>编辑</el-button
......@@ -96,7 +96,7 @@
<br />
聚合:
<br />
<el-button type="text" @click="selectModify(true)">添加字段</el-button>
<el-button type="text" @click="polymerization(true)">添加字段</el-button>
<el-button type="text" @click="getTheField">获取字段</el-button>
<el-table :data="fields" border style="width: 100%">
<el-table-column prop="aggregate" label="分组字段"> </el-table-column>
......@@ -106,7 +106,7 @@
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
@click="selectModify(false, scope.row)"
@click="polymerization(false, scope.row)"
type="text"
size="small"
>编辑</el-button
......@@ -127,8 +127,8 @@
</span>
</el-dialog>
<!-- <el-dialog
title="添加字段"
<el-dialog
title="添加结构分组的字段"
:visible.sync="addField"
width="500px"
:before-close="handleClose"
......@@ -138,29 +138,76 @@
<el-form-item label="名称:">
<el-input v-model="fiel.name"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addField = false">取 消</el-button>
<el-button type="primary" @click="addFieldDetermine">确 定</el-button>
</span>
</el-dialog>
<el-dialog
title="添加聚合"
:visible.sync="gather"
width="500px"
:before-close="handleClose"
:modal="false"
>
<el-form ref="form" :model="fiel" label-width="160px">
<el-form-item label="分组字段:">
<el-input v-model="gatherLite.aggregate"></el-input>
</el-form-item>
<el-form-item label="subject:">
<el-select v-model="gatherLite.subject" placeholder="请选择">
<el-option
v-for="(item,index) in fields"
:key="index"
:label="item.aggregate"
:value="item.aggregate"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="类型:">
<el-select v-model="fiel.type" style="width: 100%" clearable>
<el-select v-model="gatherLite.type" placeholder="请选择">
<el-option
v-for="item in type"
:key="item.code"
:label="item.descrp"
:value="item.code"
/>
v-for="item in fields"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addField = false">取 消</el-button>
<el-button type="primary" @click="addFieldDetermine">确 定</el-button>
<el-button @click="gather = false">取 消</el-button>
<el-button type="primary" @click="gatherDetermine">确 定</el-button>
</span>
</el-dialog> -->
</el-dialog>
</div>
</template>
<script>
import { systemDataTypes, inputOutputFields } from "@/api/kettle/link";
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
export default {
props: ["form", "groupingDialog", "saveOutputDialog", "nodeData"],
data() {
......@@ -171,6 +218,8 @@ export default {
type: {},
dataStatus: false,
fiel: {},
gatherLite: {},
gather: false,
};
},
......@@ -179,6 +228,30 @@ export default {
},
methods: {
gatherDetermine(){},
structure(state, val) {
// this.addField = !this.addField
this.dataStatus = state;
if (state) {
this.fiel = {};
} else {
this.fiel = val;
}
this.addField = !this.addField;
},
polymerization(state, val) {
this.dataStatus = state;
if (state) {
this.gatherLite = {};
} else {
this.gatherLite = val;
this.systemDataTypesFun()
}
this.gather = !this.gather;
},
getTheGroup() {
var enc = new mxCodec(mxUtils.createXmlDocument());
var node = enc.encode(this.newGraph.getModel());
......@@ -191,16 +264,13 @@ export default {
pamerFields.append("graphXml", this.graphXml);
pamerFields.append("before", true);
inputOutputFields(pamerFields).then((res) => {
// this.parameters = res;
res.forEach((item, index) => {
console.log(item, index);
this.groupFile.push({
variable: item.name,
});
});
this.groupFile = res;
console.log(res);
});
},
deleteField(index, rows) {
rows.splice(index, 1);
},
getTheField() {
console.log(this.nodeData);
......@@ -219,10 +289,16 @@ export default {
pamerFields.append("query", "");
inputOutputFields(pamerFields).then((res) => {
console.log(res, "yuiyuiyui");
for (let i of res) {
i.field_name = i.name;
}
this.fields = res;
this.fields = []
res.forEach((item) => {
this.fields.push({
aggregate: item.name,
subject: item.name,
type: item.type,
});
console.log(this.fields);
});
// this.fields.field_name = res.name
});
},
......@@ -231,7 +307,8 @@ export default {
console.log(graph, "双击获取值");
this.newGraph = graph;
console.log(val, "拿到form");
// this.fields = JSON.parse(val.fields)
this.fields = JSON.parse(val.fields)
this.groupFile = JSON.parse(val.groupFile)
},
handleCloseFun() {
......@@ -265,18 +342,9 @@ export default {
rows.splice(index, 1);
},
addSheet(state, val) {
this.addField = !this.addField;
this.dataStatus = state;
if (state) {
this.fiel = {};
} else {
this.fiel = val;
}
},
systemDataTypesFun() {
systemDataTypes().then((res) => {
console.log(res);
this.type = res;
});
},
......
......@@ -305,6 +305,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import main from "../../../mykettle/main";
import browseFiles from "../appBulletFrame/browseFiles";
import { datetimeformat, getLinkList,exp,test } from "@/api/kettle/link";
......
......@@ -195,6 +195,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
export default {
props: ["jobSettingsDialog"],
data() {
......
......@@ -104,6 +104,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { valueMeta } from "@/api/kettle/link";
export default {
props: ["form", "mappingInputDialog", "saveOutputDialog", "nodeData"],
......
......@@ -25,6 +25,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes } from "@/api/kettle/link";
export default {
props: ["form", "mappingOutputDialog", "saveOutputDialog", "nodeData"],
......
......@@ -54,6 +54,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes } from "@/api/kettle/link";
export default {
props: ["form", "nullOperationDialog", "saveOutputDialog", "nodeData"],
......
<template>
<div class="randomNumber">
<el-dialog
<el-dialog
title="生成随机数"
:visible.sync="RandomValueDialog"
width="800px"
......@@ -19,17 +19,14 @@
<el-form-item>
<el-table :data="fields" style="width: 100%">
<el-table-column label="字段">
<el-table-column
type="index"
width="50">
</el-table-column>
<el-table-column type="index" width="50"> </el-table-column>
<el-table-column prop="name" label="名称"> </el-table-column>
<el-table-column prop="type" label="类型"> </el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
@click="addSheet(false,scope.row)"
@click="addSheet(false, scope.row)"
type="text"
size="small"
>编辑</el-button
......@@ -46,7 +43,7 @@
</el-table>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<span slot="footer" class="dialog-footer">
<el-button @click="handleCloseFun">取 消</el-button>
<el-button type="primary" @click="RandomValueDialogFun"
>确 定</el-button
......@@ -54,7 +51,6 @@
</span>
</el-dialog>
<el-dialog
title="添加字段"
:visible.sync="addField"
......@@ -88,17 +84,32 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { randomValueFunc } from "@/api/kettle/link";
export default {
props: ["form","saveOutputDialog","RandomValueDialog"],
props: ["form", "saveOutputDialog", "RandomValueDialog"],
data() {
return {
fields: [],
fiel:{},
random:{},
dataState:false,
addField:false,
fiel: {},
random: {},
dataState: false,
addField: false,
};
},
......@@ -107,54 +118,46 @@ export default {
},
methods: {
clickFun(graph,val){
console.log(graph,'双击获取值')
clickFun(graph, val) {
console.log(graph, "双击获取值");
this.newGraph = graph;
console.log(val,"拿到form");
this.fields = JSON.parse(val.fields)
console.log(val, "拿到form");
this.fields = JSON.parse(val.fields);
},
handleCloseFun(){
handleCloseFun() {
this.$emit("update:RandomValueDialog", false);
},
RandomValueDialogFun() {
this.handleCloseFun()
this.handleCloseFun();
this.form.fields = JSON.stringify(this.fields);
this.saveOutputDialog(this.form)
this.saveOutputDialog(this.form);
},
addSheet(state,val) {
addSheet(state, val) {
this.addField = !this.addField;
this.dataState = state
this.dataState = state;
if (state) {
this.fiel = {};
}else{
} else {
this.fiel = val;
}
},
addFieldState(){
this.addField = !this.addField
addFieldState() {
this.addField = !this.addField;
if (this.dataState) {
this.fields.push(this.fiel)
this.fields.push(this.fiel);
}
},
randomValueFuncFun() {
randomValueFunc().then((res) => {
this.random = res;
});
},
deleteRow(index, rows) {
rows.splice(index, 1);
},
......@@ -167,8 +170,6 @@ export default {
})
.catch((_) => {});
},
},
};
</script>
......
......@@ -16,20 +16,20 @@
<el-form ref="form" :model="form" label-width="160px">
<el-form-item label="替换所有字段的null值" />
<el-form-item label="值替换为:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.replaceAllByValue" :disabled="form.selectValuesType == 'Y' || form.selectFields == 'Y'"></el-input>
</el-form-item>
<el-form-item label="设置空字符串">
<el-checkbox
v-model="form.main_path"
v-model="form.setEmptyStringAll"
true-label="Y"
false-label="N"
:disabled="form.selectValuesType == 'Y' || form.selectFields == 'Y'"
></el-checkbox>
</el-form-item>
<el-form-item label="掩码(日期)">
<el-select v-model="form.format" style="width: 100%" clearable>
<el-select v-model="form.format" style="width: 100%" clearable :disabled="form.selectValuesType == 'Y' || form.selectFields == 'Y'">
<el-option
v-for="item in fieldFormat"
:key="item.index"
......@@ -42,37 +42,85 @@
</el-card>
<el-form ref="form" :model="form" label-width="160px">
<el-form-item label="选择字段">
<el-checkbox
v-model="form.main_path"
v-model="form.selectFields"
true-label="Y"
false-label="N"
@change="selectFields"
></el-checkbox>
</el-form-item>
<el-form-item label="选择值类型">
<el-checkbox
v-model="form.main_path"
v-model="form.selectValuesType"
true-label="Y"
false-label="N"
@change="selectValuesType"
></el-checkbox>
</el-form-item>
</el-form>
<el-button type="text" @click="fieldClick(true)">添加字段</el-button>
<!-- <el-button type="text" @click="getTheField">获取字段</el-button> -->
<el-table :data="fields" style="width: 100%">
<el-table-column prop="field_name" label="字段名称"> </el-table-column>g
<el-card class="box-card">
值类型
<br>
<el-button type="text" @click="valuetypesApp(true)" :disabled="form.selectValuesType == 'N'">添加字段</el-button>
<el-table :data="valuetypes" style="width: 100%">
<el-table-column prop="name" label="类型"> </el-table-column>
<el-table-column prop="variable_name" label="变量名"> </el-table-column>
<el-table-column prop="value" label="值替换为"> </el-table-column>
<el-table-column prop="variable_type" label="变量活动类型">
<el-table-column prop="mask" label="转换掩码(日期)">
</el-table-column>
<el-table-column prop="default_value" label="默认值"> </el-table-column>
<el-table-column prop="set_type_empty_string" label="设置空字符串">
<template slot-scope="scope">
{{scope.row.set_empty_string == 'Y'? '是' :'否'}}
</template> </el-table-column>
<el-table-column label="操作" width="100px">
<template slot-scope="scope">
<el-button
@click="valuetypesApp(false, scope.row)"
type="text"
size="small"
:disabled="form.selectValuesType == 'N'"
>编辑</el-button
>
<el-button
type="text"
size="small"
:disabled="form.selectValuesType == 'N'"
@click="deleteField(scope.$index, valuetypes)"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
</el-card>
<br>
<br>
<el-card class="box-card">
字段
<br>
<el-button type="text" @click="fieldClick(true)" :disabled="form.selectFields == 'N'">添加字段</el-button>
<el-table :data="fields" style="width: 100%" >
<el-table-column prop="name" label="字段"> </el-table-column>
<el-table-column prop="value" label="值替换为"> </el-table-column>
<el-table-column prop="mask" label="转换掩码(日期)">
</el-table-column>
<el-table-column prop="set_empty_string" label="设置空字符串">
<template slot-scope="scope">
{{scope.row.set_empty_string == 'Y'? '是' :'否'}}
</template>
</el-table-column>
<el-table-column label="操作" width="100px">
<template slot-scope="scope">
......@@ -80,17 +128,20 @@
@click="fieldClick(false, scope.row)"
type="text"
size="small"
:disabled="form.selectFields == 'N'"
>编辑</el-button
>
<el-button
type="text"
size="small"
@click="deleteField(scope.$index, fields)"
:disabled="form.selectFields == 'N'"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
</el-card>
<span slot="footer" class="dialog-footer">
<el-button @click="handleCloseFun">取 消</el-button>
......@@ -102,48 +153,51 @@
</el-dialog>
<el-dialog
title="添加字段"
:title="fieldState?'添加':'修改'"
:visible.sync="fieldBox"
width="500px"
:before-close="handleClose"
:modal="false"
>
<el-form ref="form" :model="metadataForm" label-width="160px">
<el-form-item label="字段名称:">
<el-form-item label="字段:">
<el-select
v-model="metadataForm.field_name"
v-model="metadataForm.name"
style="width: 100%"
clearable
>
<el-option
v-for="item in fieldsName"
v-for="item in fieldsLite"
:key="item.index"
:label="item.name"
:value="item.name"
/>
</el-select>
</el-form-item>
<el-form-item label="变量名:">
<el-input v-model="metadataForm.variable_name"></el-input>
<el-form-item label="值替换为:">
<el-input v-model="metadataForm.value"></el-input>
</el-form-item>
<el-form-item label="变量活动类型:">
<el-form-item label="转换掩码(日期):">
<el-select
v-model="metadataForm.variable_type"
v-model="metadataForm.mask"
style="width: 100%"
clearable
>
<el-option
v-for="item in activityType"
:key="item.id"
:label="item.desc"
:value="item.desc"
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="metadataForm.default_value"></el-input>
<el-form-item label="设置空字符串:">
<el-select v-model="metadataForm.set_empty_string" style="width: 100%" >
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
</el-form>
......@@ -152,6 +206,64 @@
<el-button type="primary" @click="addFieldBox">确 定</el-button>
</span>
</el-dialog>
<el-dialog
:title="fieldState?'添加':'修改'"
:visible.sync="valuetypesBox"
width="500px"
:before-close="handleClose"
:modal="false"
>
<el-form ref="form" :model="valuetypesForm" label-width="160px">
<el-form-item label="类型:">
<el-select
v-model="valuetypesForm.name"
style="width: 100%"
clearable
>
<el-option
v-for="item in fieldType"
:key="item.index"
:label="item.name"
:value="item.name"
/>
</el-select>
</el-form-item>
<el-form-item label="值替换为:">
<el-input v-model="valuetypesForm.value"></el-input>
</el-form-item>
<el-form-item label="转换掩码(日期):">
<el-select
v-model="valuetypesForm.mask"
style="width: 100%"
clearable
>
<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-select v-model="valuetypesForm.set_empty_string" style="width: 100%" >
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="valuetypesBox = false">取 消</el-button>
<el-button type="primary" @click="addvaluetypesBox">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -196,19 +308,24 @@ export default {
},
data() {
return {
valuetypes:[],
newGraph: [],
fieldBox: false,
fields: [],
metadataForm: {},
fieldFormat: {},
fieldCompress: {},
fieldType: {},
dataState: false,
fieldType: [{name:'-'}],
fileType: [],
codingType: [],
fileSelection: {},
activityType: [],
fieldsName: [],
fieldState:false,
valuetypesBox:false,
valuetypesState:false,
valuetypesForm:{},
fieldsLite:[],
};
},
......@@ -221,16 +338,50 @@ export default {
},
methods: {
valuetypesApp(state,val){
this.valuetypesState = state
this.valuetypesBox = !this.valuetypesBox
if (state) {
this.valuetypesForm = {}
}else{
this.valuetypesForm = val
}
},
fieldClick(state,val){
this.fieldState = state
this.fieldBox = !this.fieldBox
if (state) {
this.metadataForm = {}
this.getTheField()
}else{
this.metadataForm = val
this.getTheField()
}
},
selectFields(){
if (this.form.selectFields == "Y") {
this.form.selectValuesType = "N"
}
},
selectValuesType(){
if (this.form.selectValuesType == "Y") {
this.form.selectFields = "N"
}
},
clickFun(graph, val) {
console.log(graph, 1);
this.newGraph = graph;
this.fields = JSON.parse(val.fields);
this.valuetypes = JSON.parse(val.valuetypes)
},
handleCloseFun() {
this.$emit("update:replaceNullDialog", false);
},
getVariableDialogFun() {
this.form.valuetypes = JSON.stringify(this.valuetypes);
this.form.fields = JSON.stringify(this.fields);
this.saveOutputDialog(this.form);
this.handleCloseFun();
......@@ -252,11 +403,8 @@ export default {
pamerFields.append("before", true);
pamerFields.append("query", "");
inputOutputFields(pamerFields).then((res) => {
console.log(res, "yuiyuiyui");
for (let i of res) {
i.field_name = i.name;
}
this.fields = res;
this.fieldsLite = res
console.log(res);
// this.fields.field_name = res.name
});
},
......@@ -295,43 +443,19 @@ export default {
rows.splice(index, 1);
},
fieldClick(state, val) {
this.fieldBox = !this.fieldBox;
this.dataState = state;
let type = new FormData(); // 创建form对象
type.append("query", "");
variableType(type).then((res) => {
this.activityType = res;
});
var enc = new mxCodec(mxUtils.createXmlDocument());
var node = enc.encode(this.newGraph.getModel());
this.graphXml = mxUtils.getPrettyXml(node);
let pamerFields = new FormData(); // 创建form对象
pamerFields.append(
"stepName",
this.nodeData.value.attributes.label.value
);
pamerFields.append("graphXml", this.graphXml);
pamerFields.append("before", true);
pamerFields.append("query", "");
inputOutputFields(pamerFields).then((res) => {
console.log(res, "kanzzhelia ");
this.fieldsName = res;
});
if (state) {
this.metadataForm = {};
} else {
this.metadataForm = val;
addvaluetypesBox(){
this.valuetypesBox = !this.valuetypesBox
if (this.valuetypesState) {
this.valuetypes.push(this.valuetypesForm);
this.$emit("valuetypes", this.valuetypes);
}
console.log(this.valuetypes);
},
addFieldBox() {
this.fieldBox = !this.fieldBox;
if (this.dataState) {
if (this.fieldState) {
this.fields.push(this.metadataForm);
this.$emit("fields", this.fields);
} else {
}
},
......@@ -345,7 +469,9 @@ export default {
valueMetaFun() {
valueMeta().then((res) => {
this.fieldType = res;
res.forEach(item => {
this.fieldType.push(item)
});
});
},
},
......
......@@ -18,15 +18,15 @@
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="收件人" />
<el-form-item label="收件人地址:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.destination"></el-input>
</el-form-item>
<el-form-item label="抄送:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.destinationCc"></el-input>
</el-form-item>
<el-form-item label="暗送:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.destinationBCc"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -35,25 +35,25 @@
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="发件人" />
<el-form-item label="发件人姓名:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.replytoname"></el-input>
</el-form-item>
<el-form-item label="发件人地址:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.replyto"></el-input>
</el-form-item>
</el-form>
</el-card>
<br />
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="回复:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.replyToAddresses"></el-input>
</el-form-item>
<el-form-item label="联系人:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.contact_person"></el-input>
</el-form-item>
<el-form-item label="联系电话:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.contact_phone"></el-input>
</el-form-item>
</el-form>
</el-tab-pane>
......@@ -62,11 +62,11 @@
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="SMTP 服务器" />
<el-form-item label="SMTP 服务器:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.server"></el-input>
</el-form-item>
<el-form-item label="端口:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.port"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -77,31 +77,47 @@
<el-form-item label="用户认证">
<el-checkbox
v-model="form.main_path"
v-model="form.use_auth"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="用户名:">
<el-input v-model="form.label"></el-input>
<el-input
v-model="form.auth_user"
:disabled="form.use_auth == 'N'"
></el-input>
</el-form-item>
<el-form-item label="密码">
<el-input v-model="form.label"></el-input>
<el-input
v-model="form.auth_password"
:disabled="form.use_auth == 'N'"
></el-input>
</el-form-item>
<el-form-item label="使用安全认证">
<el-checkbox
v-model="form.main_path"
v-model="form.use_secure_auth"
true-label="Y"
false-label="N"
:disabled="form.use_auth == 'N'"
></el-checkbox>
</el-form-item>
<el-form-item label="安全连接类型">
<el-input v-model="form.label"></el-input>
<!-- <el-input v-model="form.secureconnectiontype" :disabled="form.use_auth =='N' || form.use_secure_auth =='N'"></el-input> -->
<el-select
v-model="form.secureconnectiontype"
:disabled="
form.use_auth == 'N' || form.use_secure_auth == 'N'
"
style="width: 100%"
>
<el-option label="SSL" value="SSL"></el-option>
<el-option label="TLS" value="TLS"></el-option>
</el-select>
</el-form-item>
</el-form>
</el-card>
......@@ -114,50 +130,76 @@
<el-form-item label="在邮件中包含日期">
<el-checkbox
v-model="form.main_path"
v-model="form.include_date"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="值发送邮件正文">
<el-checkbox
v-model="form.main_path"
v-model="form.only_comment"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="邮件正文使用HTML格式">
<el-checkbox
v-model="form.main_path"
v-model="form.use_HTML"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="编码">
<el-input v-model="form.label"></el-input>
<el-input
v-model="form.encoding"
:disabled="form.use_HTML == 'N'"
></el-input>
</el-form-item>
<el-form-item label="优先级设置">
<el-checkbox
v-model="form.main_path"
v-model="form.use_Priority"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="优先级">
<el-input v-model="form.label"></el-input>
<el-select
v-model="form.priority"
:disabled="form.use_Priority == 'N'"
style="width: 100%"
>
<el-option label="低" value="low"></el-option>
<el-option label="一般" value="normal"></el-option>
<el-option label="高" value="high"></el-option>
</el-select>
</el-form-item>
<el-form-item label="重要性">
<el-input v-model="form.label"></el-input>
<el-select
v-model="form.importance"
:disabled="form.use_Priority == 'N'"
style="width: 100%"
>
<el-option label="低" value="low"></el-option>
<el-option label="一般" value="normal"></el-option>
<el-option label="高" value="high"></el-option>
</el-select>
</el-form-item>
<el-form-item label="Sensitivity">
<el-input v-model="form.label"></el-input>
<el-select
v-model="form.sensitivity"
:disabled="form.use_Priority == 'N'"
style="width: 100%"
>
<el-option label="Normal" value="normal"></el-option>
<el-option label="Personal" value="personal"></el-option>
<el-option label="Private" value="private"></el-option>
<el-option label="Confidential" value="confidential"></el-option>
</el-select>
</el-form-item>
</el-form>
</el-card>
......@@ -166,11 +208,11 @@
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="消息" />
<el-form-item label="主题:">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.subject"></el-input>
</el-form-item>
<el-form-item label="邮件正文">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.comment"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -183,19 +225,18 @@
<el-form-item label="Attached content file">
<el-checkbox
v-model="form.main_path"
v-model="form.attachContentFromField"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="Content fieldname">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.attachContentField" :disabled="form.attachContentFromField=='N'"></el-input>
</el-form-item>
<el-form-item label="Filename fieldname">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.attachContentFileNameField" :disabled="form.attachContentFromField=='N'"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -206,45 +247,41 @@
<el-form-item label="动态文件名?">
<el-checkbox
v-model="form.main_path"
v-model="form.isFilenameDynamic"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="文件名字段">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.dynamicFieldname" :disabled="form.isFilenameDynamic == 'N'"></el-input>
</el-form-item>
<el-form-item label="通配符字段">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.dynamicWildcard" :disabled="form.isFilenameDynamic == 'N'"></el-input>
</el-form-item>
<el-form-item label="文件名/目录">
<el-row :gutter="10">
<el-col :span="16">
<el-input v-model="form.output_step"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">文件</el-button>
<el-col :span="18">
<el-input v-model="form.sourcefilefoldername" :disabled="form.isFilenameDynamic == 'Y'"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">目录</el-button>
<el-button size="mini" :disabled="form.isFilenameDynamic == 'Y'" @click="selectFilePath(true)">选择文件/目录</el-button>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="包括子目录">
<el-checkbox
v-model="form.main_path"
v-model="form.include_files"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="通配符">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.sourcewildcard" :disabled="form.isFilenameDynamic == 'Y'"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -255,31 +292,30 @@
<el-form-item label="Zip 文件">
<el-checkbox
v-model="form.main_path"
v-model="form.zip_files"
true-label="Y"
false-label="N"
></el-checkbox>
</el-form-item>
<el-form-item label="动态 Zip 文件名?">
<el-checkbox
v-model="form.main_path"
v-model="form.zipFilenameDynamic"
true-label="Y"
false-label="N"
:disabled="form.zip_files=='N'"
></el-checkbox>
</el-form-item>
<el-form-item label="Zip 文件名字段">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.dynamicZipFilename" :disabled="form.zipFilenameDynamic == 'N' || form.zip_files=='N'"></el-input>
</el-form-item>
<el-form-item label="Zip 文件名">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.zip_name" :disabled="form.zip_files=='N'"></el-input>
</el-form-item>
<el-form-item label="如果附件大于...则进行压缩">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.zip_limit_size" :disabled="form.zip_files=='N'"></el-input>
</el-form-item>
</el-form>
</el-card>
......@@ -289,40 +325,41 @@
<el-form-item label="文件名/目录">
<el-row :gutter="10">
<el-col :span="16">
<el-input v-model="form.output_step"></el-input>
<el-input v-model="form.image_name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">添加</el-button>
<el-button size="mini" @click="appImg">添加</el-button>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">文件</el-button>
<el-button size="mini" @click="selectFilePath(false)"
>文件</el-button
>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="内容ID">
<el-input v-model="form.label"></el-input>
<el-input v-model="form.content_id"></el-input>
</el-form-item>
</el-form>
<br>
<el-form >
<el-form-item label="内嵌图片"/>
<br />
<el-form>
<el-form-item label="内嵌图片" />
</el-form>
<el-table :data="tableData" border style="width: 100%">
<el-table-column prop="date" label="图片" >
</el-table-column>
<el-table-column prop="name" label="内容id" >
<el-table :data="embeddedimages" border style="width: 100%">
<el-table-column prop="image_name" label="图片"> </el-table-column>
<el-table-column prop="content_id" label="内容id">
</el-table-column>
<el-table-column label="操作" >
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
@click="addInputField( scope.row)"
@click="addInputField(scope.row)"
type="text"
size="small"
>编辑</el-button
>
<el-button
@click="deleteField(scope.$index, inputLies.connector)"
@click="deleteField(scope.$index, embeddedimages)"
type="text"
size="small"
>删除</el-button
......@@ -368,21 +405,61 @@
<el-button type="primary" @click="addFieldDetermine">确 定</el-button>
</span>
</el-dialog>
<el-dialog
title="文件浏览器"
:visible.sync="filePathSelection"
width="500px"
:before-close="handleClose"
:modal="false"
>
<browseFiles :disabed="true" v-on:route="route"></browseFiles>
<span slot="footer" class="dialog-footer">
<el-button @click="filePathSelection = false">取 消</el-button>
<el-button type="primary" @click="addFilePathSelection"
>确 定</el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes } from "@/api/kettle/link";
import browseFiles from "../appBulletFrame/browseFiles";
const uuid = require("uuid");
export default {
components: {
browseFiles,
},
props: ["form", "sendMailDialog", "saveOutputDialog"],
data() {
return {
tableData: [],
embeddedimages: [],
addField: false,
fields: [],
type: {},
fileList: [],
dataStatus: false,
fiel: {},
filePathSelection: false,
urlState:false,
};
},
......@@ -391,6 +468,37 @@ export default {
},
methods: {
deleteField(index, rows) {
rows.splice(index, 1);
},
appImg() {
this.embeddedimages.push({
image_name: this.form.image_name,
content_id: this.form.content_id,
});
this.form.image_name = "";
this.form.content_id = "";
},
route(flowData) {
if (this.urlState) {
this.form.sourcefilefoldername = flowData.name
}else{
this.form.image_name = flowData.name;
this.form.content_id = uuid.v1();
console.log(form.content_id);
console.log(this.localPath);
}
},
selectFilePath(state) {
this.urlState = state
this.filePathSelection = !this.filePathSelection;
},
addFilePathSelection() {
this.filePathSelection = !this.filePathSelection;
},
clickFun(graph, val) {
console.log(graph, "双击获取值");
this.newGraph = graph;
......@@ -405,9 +513,10 @@ export default {
},
SystemInfoDialogFun() {
this.handleCloseFun();
this.form.fields = JSON.stringify(this.fields);
this.form.embeddedimages = JSON.stringify(this.embeddedimages);
this.saveOutputDialog(this.form);
this.handleCloseFun();
},
addFieldDetermine() {
......
......@@ -137,6 +137,21 @@
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes } from "@/api/kettle/link";
export default {
props: ["form", "streamQueryDialog", "saveOutputDialog"],
......
<template>
<div class="getSystemInformation">
<el-dialog
title="获取系统信息"
:visible.sync="stringSubstitutionDialog"
width="1300px"
:before-close="handleCloseFun"
>
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="form.label"></el-input>
</el-form-item>
</el-form>
<el-card class="box-card">
字段
<br />
<el-button
type="text"
@click="fieldClick(true)"
:disabled="form.selectFields == 'N'"
>添加字段</el-button
>
<el-table :data="fields" style="width: 100%">
<el-table-column type="index" width="50" align="center">
</el-table-column>
<el-table-column
prop="in_stream_name"
label="输入流字段"
align="center"
>
</el-table-column>
<el-table-column
prop="out_stream_name"
label="输出流字段"
align="center"
>
</el-table-column>
<el-table-column
prop="use_regex"
label="使用正则表达式"
align="center"
>
<template slot-scope="scope">
{{ scope.row.set_empty_string == "yes" ? "是" : "否" }}
</template>
</el-table-column>
<el-table-column prop="replace_string" label="搜索" align="center">
</el-table-column>
<el-table-column
prop="replace_by_string"
label="使用...替换"
align="center"
>
</el-table-column>
<el-table-column
prop="set_empty_string"
label="设置为空串?"
align="center"
>
<template slot-scope="scope">
{{ scope.row.set_empty_string == "Y" ? "是" : "否" }}
</template>
</el-table-column>
<el-table-column
prop="replace_field_by_string"
label="使用字段值替换"
align="center"
>
</el-table-column>
<el-table-column
prop="whole_word"
label="整个单词匹配"
align="center"
>
<template slot-scope="scope">
{{ scope.row.set_empty_string == "yes" ? "是" : "否" }}
</template>
</el-table-column>
<el-table-column
prop="case_sensitive"
label="大小写敏感"
align="center"
>
<template slot-scope="scope">
{{ scope.row.set_empty_string == "yes" ? "是" : "否" }}
</template>
</el-table-column>
<el-table-column prop="is_unicode" label="ls Unicode" align="center">
<template slot-scope="scope">
{{ scope.row.set_empty_string == "yes" ? "是" : "否" }}
</template>
</el-table-column>
<el-table-column label="操作" width="100px" align="center">
<template slot-scope="scope">
<el-button
@click="fieldClick(false, scope.row)"
type="text"
size="small"
:disabled="form.selectFields == 'N'"
>编辑</el-button
>
<el-button
type="text"
size="small"
@click="deleteField(scope.$index, fields)"
:disabled="form.selectFields == 'N'"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
</el-card>
<span slot="footer" class="dialog-footer">
<el-button @click="handleCloseFun">取 消</el-button>
<el-button type="primary" @click="SystemInfoDialogFun">确 定</el-button>
</span>
</el-dialog>
<el-dialog
title="添加字段"
:visible.sync="addField"
width="500px"
:before-close="handleClose"
:modal="false"
>
<el-form ref="form" :model="fiel" label-width="160px">
<el-form-item label="输入流字段:">
<el-select
v-model="fiel.in_stream_name"
style="width: 100%"
clearable
>
<el-option
v-for="item in fieldsLite"
:key="item.index"
:label="item.name"
:value="item.name"
/>
</el-select>
</el-form-item>
<el-form-item label="输出流字段:">
<el-input v-model="fiel.out_stream_name"></el-input>
</el-form-item>
<el-form-item label="使用正则表达式:">
<el-select v-model="fiel.type" style="width: 100%" clearable>
<el-option label="是" value="yes"></el-option>
<el-option label="否" value="on"></el-option>
</el-select>
</el-form-item>
<el-form-item label="搜索:">
<el-input v-model="fiel.replace_string"></el-input>
</el-form-item>
<el-form-item label="使用...替换:">
<el-input v-model="fiel.replace_by_string"></el-input>
</el-form-item>
<el-form-item label="设置为空串?:">
<el-select v-model="fiel.set_empty_string" style="width: 100%" clearable>
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
<el-form-item label="使用字段值替换:">
<el-select
v-model="fiel.replace_field_by_string"
style="width: 100%"
clearable
>
<el-option
v-for="item in fieldsLite"
:key="item.index"
:label="item.name"
:value="item.name"
/>
</el-select>
</el-form-item>
<el-form-item label="整个单词匹配:">
<el-select v-model="fiel.whole_word" style="width: 100%" clearable>
<el-option label="是" value="yes"></el-option>
<el-option label="否" value="on"></el-option>
</el-select>
</el-form-item>
<el-form-item label="大小写敏感:">
<el-select v-model="fiel.case_sensitive" style="width: 100%" clearable>
<el-option label="是" value="yes"></el-option>
<el-option label="否" value="on"></el-option>
</el-select>
</el-form-item>
<el-form-item label="ls Unicode:">
<el-select v-model="fiel.is_unicode" style="width: 100%" clearable>
<el-option label="是" value="yes"></el-option>
<el-option label="否" value="on"></el-option>
</el-select>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addField = false">取 消</el-button>
<el-button type="primary" @click="addFieldDetermine">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import mxgraph from "@/utils/mxgraph";
const {
mxGraph,
mxUtils,
mxEvent,
mxKeyHandler,
mxRubberband,
mxConstants,
mxStencilRegistry,
mxStencil,
mxCodec,
mxGraphModel,
mxGeometry,
} = mxgraph;
import { systemDataTypes, inputOutputFields } from "@/api/kettle/link";
export default {
props: ["form", "stringSubstitutionDialog", "saveOutputDialog", "nodeData"],
data() {
return {
addField: false,
fields: [],
type: {},
dataStatus: false,
fiel: {},
fieldsLite: [],
};
},
created() {
this.systemDataTypesFun();
},
methods: {
fieldClick(state, val) {
this.getTheField();
this.dataStatus = state
this.addField = !this.addField;
if (state) {
this.fiel = {};
} else {
this.fiel = val;
}
},
deleteField(index, rows) {
rows.splice(index, 1);
},
clickFun(graph, val) {
console.log(graph, "双击获取值");
this.newGraph = graph;
console.log(val, "拿到form");
this.fields = JSON.parse(val.fields);
},
getTheField() {
console.log(this.nodeData);
var enc = new mxCodec(mxUtils.createXmlDocument());
var node = enc.encode(this.newGraph.getModel());
this.graphXml = mxUtils.getPrettyXml(node);
// console.log( this.graphXml,"看着了");
let pamerFields = new FormData(); // 创建form对象
pamerFields.append(
"stepName",
this.nodeData.value.attributes.label.value
);
pamerFields.append("graphXml", this.graphXml);
pamerFields.append("before", true);
pamerFields.append("query", "");
inputOutputFields(pamerFields).then((res) => {
this.fieldsLite = res;
console.log(res);
// this.fields.field_name = res.name
});
},
handleCloseFun() {
this.$emit("update:stringSubstitutionDialog", false);
},
SystemInfoDialogFun() {
this.handleCloseFun();
this.form.fields = JSON.stringify(this.fields);
this.saveOutputDialog(this.form);
},
addFieldDetermine() {
this.addField = !this.addField;
if (this.dataStatus) {
this.fields.push(this.fiel);
} else {
}
},
// 关闭弹框
handleClose(done) {
this.$confirm("确认关闭?")
.then((_) => {
done();
})
.catch((_) => {});
},
deleteRow(index, rows) {
rows.splice(index, 1);
},
addSheet(state, val) {
this.addField = !this.addField;
this.dataStatus = state;
if (state) {
this.fiel = {};
} else {
this.fiel = val;
}
},
systemDataTypesFun() {
systemDataTypes().then((res) => {
this.type = res;
});
},
},
};
</script>
<style lang="scss" scoped>
* {
outline: none;
}
</style>
......@@ -90,7 +90,7 @@ export default {
// prefix:`http://147.1.3.180:9888/ETLWEB-SERVER/etlweb/`,
// prefix:`http://192.168.0.24:9888/ETLWEB-SERVER/etlweb/`,
prefix:`http://192.168.0.71:9888/ETLWEB-SERVER/etlweb/`,
// prefix:`http://192.168.0.33:9889/ETLWEB-SERVER/etlweb/`,
// 测试数据开始=====
jobTreeList: [
{
......
......@@ -742,6 +742,20 @@
>
</getSystemInformation>
<!-- 字符串替换-->
<stringSubstitution
ref="stringSubstitution"
:disabled="true"
:form="form"
:nodeData="nodeData"
:stringSubstitutionDialog.sync="stringSubstitutionDialog"
:saveOutputDialog="saveOutputDialog"
>
</stringSubstitution>
<!-- 自定义常量数据-->
<customConstant
......@@ -984,13 +998,16 @@
:form="form"
:streamQueryDialog.sync="streamQueryDialog"
:doubleClickCell="doubleClickCell"
:saveOutputDialog="saveOutputDialog"
></streamQuery>
<!-- 替换NULL值 -->
<replaceNull
ref="replaceNull"
:form="form"
:nodeData="nodeData"
:replaceNullDialog.sync="replaceNullDialog"
:doubleClickCell="doubleClickCell">
:doubleClickCell="doubleClickCell"
:saveOutputDialog="saveOutputDialog">
</replaceNull>
<!-- 发送邮件 -->
......@@ -999,6 +1016,7 @@
:form="form"
:sendMailDialog.sync="sendMailDialog"
:doubleClickCell="doubleClickCell"
:saveOutputDialog="saveOutputDialog"
></sendMail>
<!-- 文件浏览器-->
......@@ -1267,7 +1285,7 @@ import mappingInput from "../appBulletFrame/mappingInput"; //映射输入
import mappingOutput from "../appBulletFrame/mappingOutput"; //映射输出
import xmlFileInput from "../appBulletFrame/xmlFileInput"; //xml文件输入
import nullOperation from "../appBulletFrame/nullOperation"; //空操作
import stringSubstitution from "../appBulletFrame/stringSubstitution"; //字符串替换
import conversionSettings from "../appBulletFrame/conversionSettings"; //转换设置
import jobSettings from "../appBulletFrame/jobSettings"; //作业设置
......@@ -1409,6 +1427,7 @@ export default {
xmlFileInputDialog: false, //xml文件输入
importXmlFileDialog: false, //导出资源库到XML文件
groupingDialog: false, //分组
stringSubstitutionDialog:false,//字符串替换
streamQueryDialog: false, //流查询
replaceNullDialog:false, //替换Null值
sendMailDialog: false, //发送邮件
......@@ -1506,6 +1525,7 @@ export default {
successDialog,
homeworkDialog,
//
stringSubstitution,//字符串替换
sortRecord, //排序记录
setVariable, //设置变量
getVariable, //获取变量
......@@ -2215,7 +2235,14 @@ export default {
valueFormat(pamer2).then((res) => {
this.fieldFormat = res;
});
if ((this.curFileType == "transformation" && cell.dis == "step84") ||
if ((this.curFileType == "transformation" && cell.dis == "step63") ||
cell.value.attributes.ctype.value == "ReplaceString") {
this.stringSubstitutionDialog = !this.stringSubstitutionDialog
this.form = this.showDataFunc();
setTimeout(() => {
this.$refs.stringSubstitution.clickFun(this.graph,this.form);
}, 500);
}else if ((this.curFileType == "transformation" && cell.dis == "step84") ||
cell.value.attributes.ctype.value == "IfNull") {
this.replaceNullDialog = !this.replaceNullDialog
this.form = this.showDataFunc();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment