Commit 9d5ac4aa by 莫晓莉

123

parent 5a14ffb7
......@@ -582,7 +582,8 @@ aside {
//
// $svgUrl:'http://192.168.0.2:9888/ETLWEB-SERVER/etlweb';
$svgUrl:'http://192.168.0.44:9888/ETLWEB-SERVER/etlweb';
// $svgUrl:'http://192.168.0.44:9888/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;}
.preview { background-image: url($svgUrl+'/ui/images/preview.svg?scale=16') !important;}
......
import Vue from 'vue';
// v-dialogDrag: 弹窗拖拽
Vue.directive('dialogDrag', {
bind(el, binding, vnode, oldVnode) {
const dialogHeaderEl = el.querySelector('.el-dialog__header');
const dragDom = el.querySelector('.el-dialog');
dialogHeaderEl.style.cursor = 'move';
// 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null);
dialogHeaderEl.onmousedown = (e) => {
// 鼠标按下,计算当前元素距离可视区的距离
const disX = e.clientX - dialogHeaderEl.offsetLeft;
const disY = e.clientY - dialogHeaderEl.offsetTop;
// 获取到的值带px 正则匹配替换
let styL, styT;
// 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
if(sty.left.includes('%')) {
styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100);
styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100);
}else {
styL = +sty.left.replace(/\px/g, '');
styT = +sty.top.replace(/\px/g, '');
};
document.onmousemove = function (e) {
// 通过事件委托,计算移动的距离
const l = e.clientX - disX;
const t = e.clientY - disY;
// 移动当前元素
dragDom.style.left = `${l + styL}px`;
dragDom.style.top = `${t + styT}px`;
//将此时的位置传出去
//binding.value({x:e.pageX,y:e.pageY})
};
document.onmouseup = function (e) {
document.onmousemove = null;
document.onmouseup = null;
};
}
}
})
// v-dialogDragWidth: 弹窗宽度拖大 拖小
Vue.directive('dialogDragWidth', {
bind(el, binding, vnode, oldVnode) {
const dragDom = binding.value.$el.querySelector('.el-dialog');
el.onmousedown = (e) => {
// 鼠标按下,计算当前元素距离可视区的距离
const disX = e.clientX - el.offsetLeft;
document.onmousemove = function (e) {
e.preventDefault(); // 移动时禁用默认事件
// 通过事件委托,计算移动的距离
const l = e.clientX - disX;
dragDom.style.width = `${l}px`;
};
document.onmouseup = function (e) {
document.onmousemove = null;
document.onmouseup = null;
};
}
}
})
\ No newline at end of file
import Vue from 'vue';
// v-dialogDrag: 弹窗拖拽
Vue.directive('dialogDrag', {
bind(el, binding, vnode, oldVnode) {
const dialogHeaderEl = el.querySelector('.el-dialog__header');
const dragDom = el.querySelector('.el-dialog');
dialogHeaderEl.style.cursor = 'move';
// 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null);
dialogHeaderEl.onmousedown = (e) => {
// 鼠标按下,计算当前元素距离可视区的距离
const disX = e.clientX - dialogHeaderEl.offsetLeft;
const disY = e.clientY - dialogHeaderEl.offsetTop;
// 获取到的值带px 正则匹配替换
let styL, styT;
// 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
if(sty.left.includes('%')) {
styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100);
styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100);
}else {
styL = +sty.left.replace(/\px/g, '');
styT = +sty.top.replace(/\px/g, '');
};
document.onmousemove = function (e) {
// 通过事件委托,计算移动的距离
const l = e.clientX - disX;
const t = e.clientY - disY;
// 移动当前元素
dragDom.style.left = `${l + styL}px`;
dragDom.style.top = `${t + styT}px`;
//将此时的位置传出去
//binding.value({x:e.pageX,y:e.pageY})
};
document.onmouseup = function (e) {
document.onmousemove = null;
document.onmouseup = null;
};
}
}
})
// v-dialogDragWidth: 弹窗宽度拖大 拖小
Vue.directive('dialogDragWidth', {
bind(el, binding, vnode, oldVnode) {
const dragDom = binding.value.$el.querySelector('.el-dialog');
el.onmousedown = (e) => {
// 鼠标按下,计算当前元素距离可视区的距离
const disX = e.clientX - el.offsetLeft;
document.onmousemove = function (e) {
e.preventDefault(); // 移动时禁用默认事件
// 通过事件委托,计算移动的距离
const l = e.clientX - disX;
dragDom.style.width = `${l}px`;
};
document.onmouseup = function (e) {
document.onmousemove = null;
document.onmouseup = null;
};
}
}
})
\ No newline at end of file
......@@ -683,6 +683,25 @@
</span>
</el-dialog>
<!-- 输出弹窗start=============== -->
<outDialog ref="tableOutPut" :tableOutPutVisible.sync="tableOutPutVisible"></outDialog>
<insertOrUpdate ref="insertOrdate" :InsertOrUpdateVisible.sync="InsertOrUpdateVisible"></insertOrUpdate>
<excelOutPutDialog ref="excelOut" :excelOutPutVisible.sync="excelOutPutVisible"></excelOutPutDialog>
<updateDialog ref="update" :updateVisible.sync="updateVisible"></updateDialog>
<synDialog ref="syn" :synVisible.sync="synVisible"></synDialog>
<delDialog ref="del" :deleteVisible.sync="deleteVisible"></delDialog>
<sqlDialog ref="sql" :sqlVisible.sync="sqlVisible"></sqlDialog>
<textFileDialog ref="textFile" :fileVisible.sync="fileVisible"></textFileDialog>
<microDialog ref="mic" :microVisible.sync="microVisible"></microDialog>
<!-- 输出弹窗end================== -->
</div>
</template>
......@@ -711,12 +730,45 @@ import customConstant from "../appBulletFrame/customConstant";
import randomNumber from "../appBulletFrame/randomNumber";
// 输出弹窗start******************************************
import outDialog from '../../../output-dialog/table-out'
import insertOrUpdate from '../../../output-dialog/insertOrUpdate'
import excelOutPutDialog from '../../../output-dialog/Excel-output'
import updateDialog from '../../../output-dialog/update'
import synDialog from '../../../output-dialog/synchronize'
import delDialog from '../../../output-dialog/delete'
import sqlDialog from '../../../output-dialog/sqlFileOutput'
import textFileDialog from '../../../output-dialog/text-file-output'
import microDialog from '../../../output-dialog/micro-excel'
// 输出弹窗end********************************************
export default {
// props: {
// dialogVisibleFourth: {
// type: Boolean,
// default: false
// }
// },
data() {
return {
// mxl=================================
InsertOrUpdateVisible:true,
tableOutPutVisible:false,
excelOutPutVisible:false,
updateVisible:false,
synVisible:false,
deleteVisible:false,
sqlVisible:false,
fileVisible:false,
microVisible:true,
// mxl=================================
TableInputDialog:false,
SystemInfoDialog:false,
ConstantDialog:false,
......@@ -760,7 +812,7 @@ export default {
workForm:{},
fieldForm:{},
excelLnput: false,
excelLnput:false,
edit: false,
work:false,
field:false,
......@@ -779,8 +831,20 @@ export default {
nodeMenu,
getSystemInformation,
customConstant,
randomNumber
randomNumber,
// FlowNodeForm
// 弹窗组件start***********************
outDialog,//表输出
insertOrUpdate,//插入或更新
excelOutPutDialog,
updateDialog,
synDialog,
delDialog,
sqlDialog,
textFileDialog,
microDialog
// 弹窗组件end***********************
},
//自定义指令 https://www.jb51.net/article/108047.htm
directives: {
......@@ -1310,6 +1374,8 @@ export default {
},
clickNode(node) {
console.log("点击节点操作", node);
// this.$emit("dialogVisibleFourth",true);
// this.$emit('updata:dialogVisibleFourth',true); //触发showbox方法,true为向父组件传递的数据
this.stepName.name = node.name
......
......@@ -10,7 +10,7 @@
<!-- <div class="ef-node-left"></div> -->
<!-- 节点类型的图标 -->
<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> -->
</div>
<!-- 节点名称 -->
......@@ -34,7 +34,9 @@
activeElement: Object
},
data() {
return {}
return {
prefix:'http://192.168.0.44:9882/etlweb/',
}
},
computed: {
nodeContainerClass() {
......
......@@ -87,7 +87,8 @@ var mousePosition = {
export default {
data() {
return {
prefix:'http://192.168.0.2:9700/etlweb/',
// prefix:'http://192.168.0.2:9700/etlweb/',
prefix:'http://192.168.0.44:9882/etlweb/',
// 测试数据开始=====
jobTreeList: [
{
......
......@@ -94,7 +94,7 @@
<div class="mid">
<el-tabs v-if="tabShowFlag" style="margin-top:-5vh;margin-bottom:0;" v-model="picName" type="card" closable @tab-remove="removeTab">
<el-tab-pane label="数据库名称" >
<flow-designer ref="pic"></flow-designer>
<flow-designer ref="pic" ></flow-designer>
</el-tab-pane>
</el-tabs>
......
/* .trans { background-image: url(/web/ui/images/spoongraph.svg?scale=16) !important;} */
\ No newline at end of file
<template>
<div class="box">
<div class="left">
<!-- <el-tabs v-model="activeName" type="card" @tab-click="handleClick"> -->
<el-tabs v-model="activeName" type="card" >
<el-tab-pane label="资源库" name="first">
<div class="sel-content">
<div class="sel-menu-bar">
<el-dropdown
size="small"
placement="bottom"
>
<span class="sel-btn">
新建
<i class="el-icon-caret-bottom el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="password">
<template>
<i style="color:red;font-weight:bold;font-size:15px;" class="el-icon-refresh"></i>
新建转换
</template>
</el-dropdown-item>
<el-dropdown-item command="logout">
<template>
<i style="color:#F99C1C;font-weight:bold;font-size:15px;" class="el-icon-refresh-left"></i>
新建作业
</template>
</el-dropdown-item>
<el-dropdown-item style="text-align:right">新建目录</el-dropdown-item>
<el-dropdown-item class="text-center">打开</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown
size="small"
placement="bottom">
<span class="sel-btn">
资源库管理
<i class="el-icon-caret-bottom el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="showModalOne()">连接资源库</el-dropdown-item>
<el-dropdown-item >管理资源库</el-dropdown-item>
<el-dropdown-item >断开资源库</el-dropdown-item>
<el-dropdown-item>导出资源库</el-dropdown-item>
<el-dropdown-item>导入资源库</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown
size="small"
placement="bottom">
<span class="sel-btn">
帮组
<i class="el-icon-caret-bottom el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item> 语言切换</el-dropdown-item>
<el-dropdown-item >关于</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
<!-- 文件夹存放区域start-->
<el-tree
:data="jobTreeList"
:auto-expand-parent="true"
:check-strictly="true"
:default-expand-all="false"
node-key="id"
ref="tree"
:props="defaultProps"
:highlight-current="true">
<!-- el-icon-folder -->
<!-- <span class="custom-tree-node" slot-scope="{node,data}">
<span>
<i :class="data.icon"></i>{{ node.label }}
</span>
</span> -->
<span class="custom-tree-node" slot-scope="{node,data}">
<span>
<i class="el-icon-folder"></i>{{ node.label }}
</span>
</span>
</el-tree>
<!-- 文件夹存放区域end -->
</div>
</el-tab-pane>
<el-tab-pane label="核心对象" name="second">
<div class="sel-content">
核心对象
</div>
</el-tab-pane>
</el-tabs>
</div>
<div class="resize" title="收缩侧边栏">...</div>
<div class="mid">gggggg</div>
<!-- 弹窗1start -->
<el-dialog
title="资源库连接"
:visible.sync="dialogVisibleOne"
width="500px"
:before-close="handleCloseOne">
<div>
<el-link @click.native="showModalTwo" class="btn-pointer" :underline="false">新增资源库</el-link>
<el-link class="btn-pointer" :underline="false">修改资源库</el-link>
<el-link class="btn-pointer" :underline="false">删除资源库</el-link>
</div>
<div class="table-container">
<!-- <ul >
<li v-for="(item,index) in count" :key="index" class="infinite-list-item">{{ item }}</li>
</ul> -->
<ul >
<li class="btn" @mouseenter="listHoverIdx = idx" @mouseleave="listHoverIdx = -1" @click="listCheckedIdx=idx" :class="{'hover': listHoverIdx == idx,'checked': listCheckedIdx == idx}" v-for="(item,idx) in linkList" :key="idx" >
{{ item.name }}
</li>
</ul>
</div>
<el-form style="margin-top:15px;" label-position="left" :model="ruleForm" status-icon ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="用户名" prop="pass">
<el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="密码" prop="checkPass">
<el-input type="password" v-model="ruleForm.checkPass" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="handleCloseOne">取 消</el-button>
<el-button type="primary" @click="dialogVisibleOne = false">确 定</el-button>
</span>
</el-dialog>
<!-- 弹窗1end -->
<!--弹窗2start -->
<el-dialog
title="选择仓库类型"
:visible.sync="dialogVisibleTwo"
width="650px"
top="15%"
:before-close="handleCloseTwo">
<div class="table-container table-container-repos">
<ul>
<!-- <li :class="typeFlag==index?'type-checked':''" @click="chooseLinkType(index)" ref="acp" v-for="(item,index) in typesList" :key="index" >
{{ item.type }}:{{ item.name }}
</li> -->
<li class="btn" @mouseenter="typeHoverIdx = idx" @mouseleave="typeHoverIdx = -1" @click="typeCheckedIdx=idx" :class="{'hover': typeHoverIdx == idx,'checked': typeCheckedIdx == idx}" v-for="(item,idx) in typesList" :key="idx" >
{{ item.type }}:{{ item.name }}
</li>
</ul>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="FileModal = true">取 消</el-button>
<el-button type="primary" @click="showModalThree(typeCheckedIdx)">确 定</el-button>
</span>
</el-dialog>
<!-- 弹窗2end -->
<!-- 弹窗3start -->
<el-dialog
title="资源库信息"
:visible.sync="dialogVisibleThree"
width="600px"
top="19%"
:before-close="handleCloseThree">
<el-form style="margin-top:15px;" :model="ruleForm" status-icon ref="ruleForm" label-width="150px" class="demo-ruleForm">
<el-form-item label="选择数据库连接">
<el-select v-model="ruleForm.region" placeholder="请选择选择数据库连接">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
<span style="margin-left:15px;">
<el-button @click="dialogVisibleThree = false">编辑</el-button>
<el-button @click="showModalFourth()">新建</el-button>
<el-button @click="dialogVisibleThree = false">删除</el-button>
</span>
</el-form-item>
<el-form-item label="资源库标识" prop="pass">
<el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="资源库名称" prop="checkPass">
<el-input type="password" v-model="ruleForm.checkPass" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisibleThree = false">确 定</el-button>
<el-button @click="dialogVisibleThree = false">创建或更新</el-button>
<el-button type="primary" @click="dialogVisibleThree = false">删 除</el-button>
<el-button @click="dialogVisibleThree = false">取 消</el-button>
<!-- <el-button type="primary" @click="dialogVisibleTwo = false">确 定</el-button> -->
</span>
</el-dialog>
<!-- 弹窗3end -->
<!-- 弹窗4start -->
<el-dialog
title="数据库连接"
:visible.sync="dialogVisibleFourth"
width="800px"
top="5%"
:before-close="handleCloseFourth">
<div style="display:flex;">
<div class="left-container" >
<ul class="infinite-list">
<li @click="chooseType(index)" :class="[index==nowTypeIndex?'type-checked':'']" v-for="(item,index) in linkType" :key="index" >{{ item.name }}</li>
</ul>
</div>
<!-- 右边start -->
<el-form style="flex:1;" label-width="100px" :model="createModel" ref="createFrom" :rules="rulesOne">
<div v-if="nowTypeIndex==0">
<el-form-item label="连接名称" prop="name" >
<el-input v-model="createModel.name" ></el-input>
</el-form-item>
<div style="display:flex;">
<div class="choose-container" >
<div>
<div class="boxtitle">连接类型</div>
<!-- <ul class="leftv scroll-y">
<li>111</li>
<li>222</li>
<li>333</li>
<li>444</li>
<li>555</li>
</ul> -->
<ul class="leftv scroll-y">
<li class="btn" @mouseenter="linkHoverIdx = idx" @mouseleave="linkHoverIdx = -1" @click="chooseLinkType(item.value,idx)" :class="{'hover': linkHoverIdx == idx,'checked': linkCheckedIdx == idx}" v-for="(item,idx) in accessDataList" :key="idx" >
{{ item.text }}
</li>
</ul>
</div>
<div style="margin-top:15px;">
<div class="boxtitle">连接方式</div>
<!-- <ul class="rightv scroll-y">
<li>111</li>
<li>222</li>
<li>333</li>
<li>444</li>
<li>555</li>
</ul> -->
<ul class="rightv scroll-y">
<li class="btn" @mouseenter="methodHoverIdx = idx" @mouseleave="methodHoverIdx = -1" @click="chooseAccess(item.value,idx)" :class="{'hover': methodHoverIdx == idx,'checked': methodCheckedIdx == idx}" v-for="(item,idx) in accessMethods" :key="idx" >
{{ item.text }}
</li>
</ul>
</div>
</div>
<div class="input-container">
<div class="input-container-title">设置</div>
<el-form-item label="主机名称:" prop="hostname" label-width="100px">
<el-input v-model="createModel.hostname"></el-input>
</el-form-item>
<el-form-item label="数据库名称:" prop="databaseName" label-width="100px">
<el-input v-model="createModel.databaseName" ></el-input>
</el-form-item>
<!-- <el-form-item label="数据表空间:" prop="pass" label-width="90px">
<el-input v-model="createModel.pass" ></el-input>
</el-form-item>
<el-form-item label="索引表空间:" prop="pass" label-width="90px">
<el-input v-model="createModel.pass"></el-input>
</el-form-item> -->
<el-form-item label="端口号:" prop="port" label-width="100px">
<el-input v-model="createModel.port"></el-input>
</el-form-item>
<el-form-item label="用户名:" prop="username" label-width="100px">
<el-input v-model="createModel.username"></el-input>
</el-form-item>
<el-form-item label="密码:" prop="password" label-width="100px">
<el-input v-model="createModel.password"></el-input>
</el-form-item>
</div>
</div>
</div>
<div v-if="nowTypeIndex==1">
<!-- 高级 -->
<el-checkbox-group class="check-group" v-model="checkModel">
<el-checkbox class="checkbox-sty" label="美食/餐厅线上活动" name="type1"></el-checkbox>
<el-checkbox class="checkbox-sty" label="地推活动" name="type2"></el-checkbox>
<el-checkbox class="checkbox-sty" label="线下主题活动" name="type3"></el-checkbox>
<el-checkbox class="checkbox-sty" label="单纯品牌曝光" name="type4"></el-checkbox>
</el-checkbox-group>
<div>
<div style="padding:10px ;">默认模式名称,在没有其他模式时候使用</div>
<el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input>
</div>
<div>
<div style="padding:10px ;">请输入连接成功后要执行的SQL语句,用分号(;)隔开</div>
<el-input type="textarea" ></el-input>
</div>
</div>
<div v-if="nowTypeIndex==2">
选项
</div>
<div v-if="nowTypeIndex==3">
连接池
</div>
<div v-if="nowTypeIndex==4">
集群
</div>
</el-form>
<!-- 右边end -->
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisibleTwo = false">取 消</el-button>
<el-button @click="dialogVisibleTwo = false">测 试</el-button>
<el-button @click="dialogVisibleTwo = false">特征列表</el-button>
<el-button @click="dialogVisibleTwo = false">浏 览</el-button>
<el-button @click="comfirmCreate('createFrom')">确 定</el-button>
</span>
</el-dialog>
<!-- 弹窗4end -->
<!-- 弹窗5start -->
<el-dialog
title="文件资源库设置"
:visible.sync="FileModal"
width="600px"
top="19%"
:before-close="closeFileModal">
<el-form style="margin-top:15px;" :model="ruleForm" status-icon ref="ruleForm" label-width="150px" class="demo-ruleForm">
<el-form-item label="根目录" prop="pass">
<div style="display:flex;">
<el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input>
<span style="margin-left:15px;">
<el-button @click="FileModalScan = true">浏览</el-button>
</span>
</div>
</el-form-item>
<el-form-item label="只读资源库?:" prop="checkPass">
<el-checkbox ></el-checkbox>
</el-form-item>
<el-form-item label="不显示隐藏文件:" prop="checkPass">
<el-checkbox ></el-checkbox>
</el-form-item>
<el-form-item label="资源库标志" prop="checkPass">
<el-input type="password" v-model="ruleForm.checkPass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="名称" prop="checkPass">
<el-input type="password" v-model="ruleForm.checkPass" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="closeFileModal()">取 消</el-button>
<el-button type="primary" @click="FileModal = false">确 定</el-button>
</span>
</el-dialog>
<!-- 弹窗5end -->
<!-- 弹窗6start -->
<el-dialog
title="文件浏览器"
:visible.sync="FileModalScan"
width="450px"
top="19%"
:before-close="closeFileModalScan">
<div class="file-container">
<!-- 文件夹存放区域start-->
<el-tree
:data="jobTreeList"
:auto-expand-parent="true"
:check-strictly="true"
:default-expand-all="false"
node-key="id"
ref="tree"
:props="defaultProps"
:highlight-current="true">
<!-- el-icon-folder -->
<!-- <span class="custom-tree-node" slot-scope="{node,data}">
<span>
<i :class="data.icon"></i>{{ node.label }}
</span>
</span> -->
<span class="custom-tree-node" slot-scope="{node,data}">
<span>
<i class="el-icon-folder"></i>{{ node.label }}
</span>
</span>
</el-tree>
<!-- 文件夹存放区域end -->
</div>
<span slot="footer" class="dialog-footer" style="display:flex;">
<el-select style="flex:1;margin-right:25px;" v-model="ruleForm.region" placeholder="请选择选择数据库连接">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
<el-button @click="FileModalScan = false">取 消</el-button>
<el-button type="primary" @click="FileModalScan = false">确 定</el-button>
</span>
</el-dialog>
<!-- 弹窗6end -->
</div>
</template>
<script>
// import '@/utils/dialog.js';
import {
types,
getLinkList,
accessMethod,//获取连接方式列表
accessData,//获取连接类型
create,
} from "@/api/kettle/link";
export default {
data() {
return {
accessDataList:[],//连接类型
typesList:[],//资源库连接类型
typeHoverIdx: -1,
typeCheckedIdx: -2 ,
linkList:[],//获取历史连接的资源库列表
listHoverIdx: -1,//鼠标移动到历史创建数据库列表
listCheckedIdx: -2 ,//当前选择历史创建数据库列表
accessMethods:[],//连接方式列表
linkHoverIdx: -1,//鼠标移动到连接类型
linkCheckedIdx: -2 ,//当前选择连接类型列表
methodHoverIdx:0,//鼠标移动到连接方式
methodCheckedIdx: 0,//当前选择连接方式列表
createModel:{},//创建数据库
rulesOne:{
name:[
{required:true,message:'请输入名称',trigger:'blur'}
],
hostname:[
{required:true,message:'请输入主机名称',trigger:'blur'}
],
databaseName:[
{required:true,message:'请输入数据库名称',trigger:'blur'}
],
port:[
{required:true,message:'请输入端口号',trigger:'blur'}
],
username:[
{required:true,message:'请输入用户名',trigger:'blur'}
],
password:[
{required:true,message:'请输入密码',trigger:'blur'}
],
// logLevel:[
// {required:true,message:'请选择日志级别',trigger:'change'}
// ],
},
checkModel:[],
visible:true,
dialogDrag:false,
dialog: {// dialog显示隐藏
dialogVisible: false,
dialogDrag: true, // 可拖拽
dialogChange: true, // 可拉伸
title: '详情'
},
activeName: 'first',//当前选择的标签
jobTreeList:[
{
path: 'f0',
id: '1',
parent: '0',
lasted: false,
},
{
path: 'f01',
id: '2',
parent: '1',
lasted: true,
},
{
path: 'f02',
id: '3',
parent: '1',
lasted: true,
},
{
path: 'f021',
id: '6',
parent: '3',
lasted: false,
},
{
path: 'f021',
id: '7',
parent: '6',
lasted: false,
},
{
path: 'f40',
id: '4',
parent: '0',
lasted: false,
},
{
path: 'f41',
id: '5',
parent: '4',
lasted: true,
}
],
defaultProps: {
label: 'path',
children: 'children',
},
dialogVisibleOne:false,//链接资源库弹窗
ruleForm: {
pass: '',
checkPass: '',
age: ''
},
dialogVisibleTwo:false,//新增资源库弹窗
count:[
'1111111111111111',
'2222222222222222'
],
dialogVisibleThree:false,//资源库信息弹窗
dialogVisibleFourth:false,
linkType:[
{
id:1,
name:'一般'
},
{
id:2,
name:'高级'
},
{
id:3,
name:'选项'
},
{
id:4,
name:'连接池'
},
{
id:5,
name:'集群'
}
],
nowTypeIndex:0,//当前选中数据库类型
FileModal:false,//文件资源库弹窗
FileModalScan:false,//浏览弹窗
};
},
mounted () {
this.dragControllerDiv();//左右窗体调整宽度
this.treeRevert(this.jobTreeList);
this.accessData();//页面一加载就获取连接类型
},
methods: {
// 左边文件夹和右边画布的宽度可以拖拽调整
dragControllerDiv: function () {
var resize = document.getElementsByClassName('resize');
var left = document.getElementsByClassName('left');
var mid = document.getElementsByClassName('mid');
var box = document.getElementsByClassName('box');
for (let i = 0; i < resize.length; i++) {
// 鼠标按下事件
resize[i].onmousedown = function (e) {
//颜色改变提醒
// resize[i].style.background = '#818181';
var startX = e.clientX;
resize[i].left = resize[i].offsetLeft;
// 鼠标拖动事件
document.onmousemove = function (e) {
var endX = e.clientX;
var moveLen = resize[i].left + (endX - startX); // (endx-startx)=移动的距离。resize[i].left+移动的距离=左边区域最后的宽度
var maxT = box[i].clientWidth - resize[i].offsetWidth; // 容器宽度 - 左边区域的宽度 = 右边区域的宽度
if (moveLen < 32) moveLen = 32; // 左边区域的最小宽度为32px
if (moveLen > maxT - 150) moveLen = maxT - 150; //右边区域最小宽度为150px
resize[i].style.left = moveLen; // 设置左侧区域的宽度
for (let j = 0; j < left.length; j++) {
left[j].style.width = moveLen + 'px';
mid[j].style.width = (box[i].clientWidth - moveLen - 10) + 'px';
}
};
// 鼠标松开事件
document.onmouseup = function (evt) {
//颜色恢复
// resize[i].style.background = '#d6d6d6';
document.onmousemove = null;
document.onmouseup = null;
resize[i].releaseCapture && resize[i].releaseCapture(); //当你不在需要继续获得鼠标消息就要应该调用ReleaseCapture()释放掉
};
resize[i].setCapture && resize[i].setCapture(); //该函数在属于当前线程的指定窗口里设置鼠标捕获
return false;
};
}
},
//文件夹数据转换
treeRevert(arrayList){
console.log('传入数据=============',arrayList);
let formatObj = arrayList.reduce((pre, cur) => {
return {...pre, [cur['id']]: cur}
}, {});
console.log(formatObj);
let formatArray = arrayList.reduce((arr, cur) => {
// let pid = cur.pid ? cur.pid : 0;
let pid = cur.parent ? cur.parent : 0;
let parent = formatObj[pid];
cur.disabled = !cur.lasted;
if (parent) {
parent.children ? parent.children.push(cur) : parent.children=[cur];
} else {
arr.push(cur)
}
return arr;
}, []);
console.log('树形数据=============',formatArray);
this.jobTreeList=formatArray;
},
// 打开关闭弹窗
showModalOne(){
console.log('打卡资源库连接:');
this.getLinkList();//打开资源库连接弹窗同时获取历史连接记录
this.dialogVisibleOne=true;
},
handleCloseOne(){
this.dialogVisibleOne=false;
this.listHoverIdx=-1;//清空当前鼠标移动到的数据
this.listCheckedIdx=-2;//清空当前鼠标选中的数据
},
showModalTwo(){
this.dialogVisibleTwo=true;
this.types();
},
handleCloseTwo(){
this.dialogVisibleTwo=false;
},
showModalThree(typeCheckedIdx){
console.log('当前点击---',typeCheckedIdx);
if(typeCheckedIdx==0){
this.dialogVisibleThree=true;
}
if(typeCheckedIdx==1){
this.FileModal=true;
}
},
handleCloseThree(){
this.dialogVisibleThree=false;
},
showModalFourth(){
this.dialogVisibleFourth=true;
this.accessMethod();//获取连接方式
},
handleCloseFourth(){
this.dialogVisibleFourth=false;
},
closeFileModal(){
this.FileModal=false;
},
closeFileModalScan(){
this.FileModalScan=false;
},
chooseType(index){
this.nowTypeIndex=index;
},
// 获取资源库连接类型
types(){
types().then(res=>{
if (res) {
console.log('获取类型成功!');
this.typesList=res;
}else {
this.$message.error(res.errMsg)
}
})
},
// 获取历史建立的连接资源库列表
getLinkList(){
getLinkList().then(res=>{
if (res) {
console.log('获取历史连接资源库列表:');
this.linkList=res;
}else {
this.$message.error(res.errMsg)
}
})
},
chooseLinkType(item,idx){
console.log('选择连接类型:',item);
this.linkCheckedIdx=idx;
this.accessMethod();//切换连接方式
this.methodHoverIdx=-1;
this.methodCheckedIdx=-2;
this.createModel.type=item.value;
},
// 获取连接方式
chooseAccess(item,idx){
console.log('选择连接方式:',item);
this.methodCheckedIdx=idx;
this.createModel.access=item.value;
},
// 获取连接方式
accessMethod(){
var accessData=this.accessDataList[this.linkCheckedIdx].value;
var params={accessData:accessData};
let data = new FormData();
data.append('accessData', params.accessData)
console.log('参数==',params);
// accessMethod(JSON.stringify(params)).then(res=>{
accessMethod(data).then(res=>{
if (res) {
console.log('获取连接方式:',res);
this.accessMethods=res;
this.createModel.access=this.accessMethods[0].value;
console.log('表单赋值连接方式:',this.createModel);
}else {
this.$message.error(res.errMsg)
}
})
},
//获取连接类型
accessData(){
accessData().then(res=>{
if (res) {
console.log('获取连接类型:',res);
var data=res;
if(data){
for(var i =0;i<data.length;i++){
if(data[i].value=='ORACLE'){
console.log('-----------------');
this.linkCheckedIdx=i;
this.createModel.type='ORACLE';
console.log('表单赋值连接类型:',this.createModel);
}
}
}
this.accessDataList=data;
this.accessMethod();
}else {
this.$message.error(res.errMsg)
}
})
},
// 编辑数据
comfirmCreate(formName){
this.$refs[formName].validate((valid) => {
if (valid) {
var params=this.createModel;
let data = new FormData();
// data.append('databaseInfo', params);
// data.append('description', params.description)
// data.append('file', this.form.file)
// data.append('title', this.form.description)
console.log('表单提交参数==',params);
// return;
create(data).then(res=>{
console.log('提交数据:',res);
if (res.success) {
this.$message.success('成功!');
// this.DialogVisibleThree=false;//关闭弹窗
// this.formThree={};
// this.getKettleJobList();//刷新列表
}else {
this.$message.error(res.errMsg)
}
})
} else {
console.log('error submit!!');
return false;
}
});
},
}
};
</script>
<style>
/* .content{
direction: flex;
} */
.ef-left-box{
flex:1
}
.el-tabs--card >.el-tabs__header {
margin: 0 !important;
}
.el-tabs--card>.el-tabs__header {
margin: 0;
}
.el-tabs__item {
background-color:#DEECFD;
color:#1567A9;
}
.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{
border-bottom: 1px solid #dce3e8;
}
.el-tabs__item.is-active {
color: #FFDEAD;
}
.el-tabs--card>.el-tabs__header {
border-bottom: 1px solid #E4E7ED;
}
.sel-content{
min-height: 81vh;
border: 1px solid #dce3e8;
}
.sel-menu-bar{
background-color: #D6E3F2;
}
.sel-btn{
display: inline-block;
padding: 7px 15px;
font-size: 12px;
border-radius: 3px;
}
.text-center{
text-align:center;
}
.drop-item{
padding:10px 5px;
}
.space-gap{
margin-right:5px;
}
.rg{
text-align: right;
}
.el-tabs__item.is-active{
color:#4074AF;
font-weight:bold;
}
/* 拖拽相关样式start-------------------- */
/*包围div样式*/
.box {
width: 100%;
height: 100%;
margin: 1% 0px;
overflow: hidden;
padding:0 15px;
min-height: 86vh;
display: flex;
}
/*左侧div样式*/
.left {
/*左侧初始化宽度*/
width:350px; /*左侧初始化宽度*/
height: 100%;
background: #FFFFFF;
float: left;
min-height: 86vh;
}
/*拖拽区div样式*/
.resize {
cursor: col-resize;
background-color: #d6d6d6;
border-radius: 5px;
margin-top: -10px;
width: 5px;
background-size: cover;
background-position: center;
font-size: 32px;
color: white;
background-color:white;
min-height: 86vh;
}
/*拖拽区鼠标悬停样式*/
.resize:hover {
color: #444444;
}
/*右侧div'样式*/
.mid {
flex:1;
/*右侧初始化宽度*/
height: 100%;
background: #fff;
/* box-shadow: -1px 4px 5px 3px rgba(0, 0, 0, 0.11); */
min-height: 81vh;
margin-top:4vh;
border: 1px solid #dce3e8;
}
/* 拖拽相关样式end-------------------- */
.el-dialog__header{
background-color:#D2E0F1;
}
.el-dialog__body{
padding:15px 15px;
}
.btn-pointer{
padding:5px;
border-radius:5px;
}
.btn-pointer:hover {
border:1px solid #AAC8F1;
box-shadow: 2px 2px 2px 2px #AAC8F1;
}
.table-container{
margin-top:15px;
border:1px solid #D2E0F1;
overflow-y: scroll;
height:300px;
}
.box ul{
margin:0;
padding:0;
}
.box ul li{
list-style: none;
height:30px;
line-height:30px;
padding:0 10px;
white-space: nowrap;
}
.table-container-repos{
height:100px;
margin-top:0;
}
.choose-container{
width:200px;
display:flex;
flex-direction:column;
margin-right:10px;
}
.left-container{
width:180px;
border:1px solid #D2E0F1;
overflow-y:scroll;
height:520px;
margin-right:10px;
}
.leftv{
border:1px solid #D2E0F1;
height:250px;
}
.rightv{
border:1px solid #D2E0F1;
height:150px;
}
.input-container{
flex:1;
border:1px solid #D2E0F1;
position: relative;
padding:15px;
}
.input-container-title{
background-color:white;
padding:0 5px;
position:absolute;
top:-8px;
left: 15px;
font-weight:bold;
color: #15428B;
}
.boxtitle{
padding:5px 10px;
background-color:#CFDFF3;
}
.scroll-y{
overflow-y: scroll;
}
.type-checked{
background-color:#8888FF;
color: #fff;
}
.check-group{
padding:5px;
background-color: #D1DDEF;
}
.checkbox-sty{
display: block;
padding:5px 0;
}
.file-container{
height:400px;
border:1px solid #D2E0F1;
}
.btn.hover{
cursor: pointer;
background-color: #EEEEEE;
}
.hover{
cursor: pointer;
background-color: #EEEEEE;
}
.btn.checked{
background-color:#8888FF;
color: #fff;
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="Excel输出"
:visible.sync="excelOutPutVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="文件" name="content">
<el-form ref="form" :model="form" label-width="200px">
<!-- <el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item> -->
<el-form-item label="文件名:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="创建父目录:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="启动时不创建文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="扩展名:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含步骤数:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含日期:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含时间:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="指定日期时间格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="日期时间格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="结果中添加文件名:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="内容" name="handling">
<el-form ref="form" :model="form" label-width="250px">
<el-form-item label="追加:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="头部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="尾部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="编码:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="分拆...每一行:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="sheet名称:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="保护sheet:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="密码:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="自动调整大小:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="保留null值:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="使用临时文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="临时文件目录:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<div style="position:relative;border:1px solid #b5b8c8;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">模版</div>
<el-form-item label="使用模版:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="临时文件目录:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="追加Excel模版:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="格式" name="oher ">
<el-form ref="form" :model="form" label-width="150px">
<div style="position:relative;border:1px solid #b5b8c8;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">表头字体</div>
<el-form-item label="表头字体:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头字体大小:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="白头字体加粗:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头字体倾斜:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头字体下划线:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头字体方向:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头字体颜色:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头背景颜色:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头高度:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表头对齐方式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="添加图片:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
</div>
<div style="position:relative;border:1px solid #b5b8c8;margin-top:15px;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">表数据字体</div>
<el-form-item label="数据字体:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="数据字体大小:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="数据字体颜色:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="数据背景颜色:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="字段" name="word ">
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="excelOutPutVisible = false">取 消</el-button>
<el-button type="primary" @click="excelOutPutVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
// tableData: [
// {
// filemask: "",
// name: "王小虎",
// exclude_filemask: "",
// file_required: "0",
// include_subfolders: "1",
// },
// ],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"姓名"
},
{
column_name: "column_age",column_comment:"年龄"
},
{
column_name: "column_sex",column_comment:"性别"
}
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女'
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
excelOutPutVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:excelOutPutVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
<style >
.el-form-item--small.el-form-item{
margin-bottom:5px !important;
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="删除"
:visible.sync="deleteVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<!-- <div id="ExcelInputDialog"></div> -->
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<div style="border:1px solid #99BBE8;padding:15px 15px;margin-bottom:15px;">
<el-form ref="form" :model="form" label-width="200px">
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="目标表:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="提交记录数量:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
</el-form>
</div>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>查询值所需的关键字</span>
</div>
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-card>
<span slot="footer" class="dialog-footer">
<el-button @click="deleteVisible = false">取 消</el-button>
<el-button type="primary" @click="deleteVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"比较符"
},
{
column_name: "column_sex",column_comment:"流里的字段1"
},
{
column_name: "column_col",column_comment:"流里的字段2"
},
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'0'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'1'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'2'
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
deleteVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:updateVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
\ No newline at end of file
<template>
<div>
<el-dialog
title="插入/更新"
:visible.sync="InsertOrUpdateVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="基本配置" name="content">
<el-form ref="form" :model="form" label-width="200px">
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目标表:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="提交记录数量:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="不执行任何更新:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<!-- <el-form-item label="忽略插入错误:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="指定数据库字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item> -->
</el-form>
</el-tab-pane>
<el-tab-pane label="查询字段" name="handling">
<el-card class="box-card" style="margin-top:15px;">
<div slot="header" class="clearfix">
<el-button style="padding: 3px 0" type="text">新增字段</el-button>
<el-button style="padding: 3px 0" type="text">删除字段</el-button>
<el-button style="padding: 3px 0" type="text">获取字段</el-button>
</div>
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-card>
</el-tab-pane>
<el-tab-pane label="更新字段" name="oher ">
<el-card class="box-card" style="margin-top:15px;">
<div slot="header" class="clearfix">
<el-button style="padding: 3px 0" type="text" @click="add">新增字段</el-button>
<el-button style="padding: 3px 0" type="text">删除字段</el-button>
<el-button style="padding: 3px 0" type="text">获取和更新字段</el-button>
<el-button style="padding: 3px 0" type="text">编辑映射</el-button>
</div>
<el-table style="width: 100%" border >
<!-- <template v-for="(item,index) in updateTableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'">
<template slot-scope="scope">
<el-input v-model="scope.row[scope.column.property]" ></el-input>
</template>
</el-table-column>
</template> -->
<template v-for="(item,index) in updateTableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'">
</el-table-column>
</template>
<el-table-column
v-for="(item, key) in updateTableData"
:key="key"
align="center"
:prop="item.column_name"
:label="item.column_comment"
>
<template scope="scope">
<el-input
v-model="scope.row[scope.column.property]"
size="mini"
type="number"
:min="0.0"
/>
</template>
</el-table-column>
</el-table>
</el-card>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="tableOutPutVisible = false">取 消</el-button>
<el-button type="primary" @click="tableOutPutVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"比较符"
},
{
column_name: "column_sex",column_comment:"流里的字段1"
},
{
column_name: "column_col",column_comment:"流里的字段2"
}
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'1',
column_col1:'2',
column_col2:'2'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2'
}],
// 表头数据
updateTableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"流字段"
},
{
column_name: "column_sex",column_comment:"更新"
},
],
// 表格数据
updateTableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'1',
column_col1:'2',
column_col2:'2'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2'
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
InsertOrUpdateVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:tableOutPutVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
\ No newline at end of file
<template>
<div>
<el-dialog
title="校验Web服务是否可用"
:visible.sync="microVisible"
width="800px"
:before-close="handleClose"
top="5%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="文件" name="handling">
<el-form ref="form" :model="form" label-width="250px">
<el-form-item label="文件名:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="扩展名:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="Stream XSLX data:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="分割每...行数据:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含步骤数:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含日期:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含时间:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="指定日期时间格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="时间日期格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="如果输出文件中已存在工作表:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="在接收到数据前不创建文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="结果中添加文件名:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<div style="position:relative;border:1px solid #b5b8c8;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">模版</div>
<el-form-item label="使用模板创建新文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="使用模板创建新工作表:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="模板工作表:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="工作表" name="oher ">
<el-form ref="form" :model="form" label-width="250px">
<div style="position:relative;border:1px solid #b5b8c8;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">Sheet设置</div>
<el-form-item label="Sheet名称:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="设为活动Sheet:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="如果输出文件中已存在工作表:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="保护工作表:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="保护人:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="密码:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
</div>
<div style="position:relative;border:1px solid #b5b8c8;margin-top:15px;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">内容选项</div>
<el-form-item label="开始输出自单元格:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="当输出记录时:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="头部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="尾部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="自动调整列大小:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="强制公式重新计算:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="不改变现有单元格格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="内容" name="word ">
<el-form ref="form" :model="form" label-width="250px">
<div style="position:relative;border:1px solid #b5b8c8;padding:15px;margin-bottom:15px;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">写在已存在的工作表</div>
<el-form-item label="在表的末尾行开始写(追加行):">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="抵消行数:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="在写入文件前添加的空行数:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="删除表头:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</div>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>字段</span>
</div>
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-card>
</el-form>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="microVisible = false">取 消</el-button>
<el-button type="primary" @click="microVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'handling',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"名称"
},
{
column_name: "column_age",column_comment:"类型"
},
{
column_name: "column_sex",column_comment:"格式"
},
{
column_name: "column_col",column_comment:"单元格样式"
},
{
column_name: "column_col1",column_comment:"字段标题"
},
{
column_name: "column_col2",column_comment:"单元格表头样式"
},
{
column_name: "column_col3",column_comment:"字段包含公式"
},
{
column_name: "column_col4",column_comment:"超链接"
},
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2',
column_col3:'2',
column_col4:'4'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'1',
column_col1:'2',
column_col2:'2',
column_col3:'2',
column_col4:'4'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'1',
column_col1:'2',
column_col2:'2',
column_col3:'2',
column_col4:'4'
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
microVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:microVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
<style >
.el-form-item--small.el-form-item{
margin-bottom:5px !important;
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="SQL 文件输出"
:visible.sync="sqlVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name" placeholder="SQL 文件输出"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="一般" name="content">
<el-form ref="form" :model="form" label-width="200px">
<div style="position:relative;border:1px solid #b5b8c8;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">连接</div>
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目标表:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
</div>
<div style="position:relative;border:1px solid #b5b8c8;padding:15px 0;margin-top:15px;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">输出文件</div>
<el-form-item label="增加 创建表 语句:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="增加 清空表 语句:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="每个语句另起一行:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名:">
<el-row :gutter="10">
<el-col :span="14">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">显示文件夹</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="创建父目录:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="启动时不创建文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="扩展名:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名中包括步骤号:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名中包含日期?:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名中包含时间:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="追加方式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="每...行拆分:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="将文件加入到结果文件中:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="高级" name="oher ">
<el-form ref="form" :model="form" label-width="150px">
<el-form-item label="日期格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="编码:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="sqlVisible = false">取 消</el-button>
<el-button type="primary" @click="sqlVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"比较符"
},
{
column_name: "column_sex",column_comment:"流里的字段1"
},
{
column_name: "column_col",column_comment:"流里的字段2"
}
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'2'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'3'
}],
// 表头数据
tableHead1:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"流字段"
},
{
column_name: "column_sex",column_comment:"更新"
}
],
// 表格数据
tableData1: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
sqlVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:sqlVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
<style >
.el-form-item--small.el-form-item{
margin-bottom:5px !important;
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="Synchronize After Merge"
:visible.sync="synVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name" placeholder="数据同步"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="一般" name="content">
<el-form ref="form" :model="form" label-width="200px">
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目标表:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="提交的记录数量:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="批量更新:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表名在字段里定义:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表名字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>用来查询的关键字</span>
</div>
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-card>
<el-card class="box-card" style="margin-top:15px;">
<div slot="header" class="clearfix">
<span>更新字段</span>
</div>
<el-table style="width: 100%" border :data="tableData1">
<template v-for="(item,index) in tableHead1">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-card>
</el-form>
</el-tab-pane>
<el-tab-pane label="高级" name="oher ">
<el-form ref="form" :model="form" label-width="150px">
<div style="position:relative;border:1px solid #b5b8c8;padding:15px 0;">
<div style="position:absolute;top:-15px;left:20px;color:#15428b;background-color:#fff;padding:5px 10px;">操作</div>
<el-form-item label="操作字段名:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="当值相等时插入:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="当值相等时更新:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="当值相等时删除:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="执行查询:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="synVisible = false">取 消</el-button>
<el-button type="primary" @click="synVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"比较符"
},
{
column_name: "column_sex",column_comment:"流里的字段1"
},
{
column_name: "column_col",column_comment:"流里的字段2"
}
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'2'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'3'
}],
// 表头数据
tableHead1:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"流字段"
},
{
column_name: "column_sex",column_comment:"更新"
}
],
// 表格数据
tableData1: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
synVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:synVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
<style >
.el-form-item--small.el-form-item{
margin-bottom:5px !important;
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="表输出"
:visible.sync="tableOutPutVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="基本配置" name="content">
<el-form ref="form" :model="form" label-width="200px">
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="提交记录数量:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="裁减表:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="忽略插入错误:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="指定数据库字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="主选项" name="handling">
<el-form ref="form" :model="form" label-width="250px">
<el-form-item label="表分区数据:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="分区字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="每个月分区数据:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="每天分区数据:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="使用批量插入:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="表名定义在一个字段里:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="包含表名的字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="存储表名字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="返回一个自动产生的关键字:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="自动产生的关键字的字段名称:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="数据库字段" name="oher ">
<el-form ref="form" :model="form" label-width="150px">
<el-form-item label="文件名称字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="Sheet名称字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="Sheet的行号列:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="行号列:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="文件名字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="扩展名字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="路径字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="文件大小字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="是否为隐藏文件字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="最后修改时间字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="Uri字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="Root uri字段:">
<el-input v-model="form.name"></el-input>
</el-form-item>
</el-form>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="tableOutPutVisible = false">取 消</el-button>
<el-button type="primary" @click="tableOutPutVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
tableData: [
{
filemask: "",
name: "王小虎",
exclude_filemask: "",
file_required: "0",
include_subfolders: "1",
},
],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
tableOutPutVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:tableOutPutVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
\ No newline at end of file
<template>
<div>
<el-dialog
title="文本文件输出"
:visible.sync="fileVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="文件" name="content">
<el-form ref="form" :model="form" label-width="200px">
<!-- <el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col
>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col
>
</el-row>
</el-form-item> -->
<el-form-item label="文件名称:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="结果输送至命令行或脚本:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="输出传递到Servlet:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="创建父目录:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="启动时不创建文件:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="从字段中获取文件名:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名字段:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="扩展名:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含步骤数:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含数据分区号:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含日期:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="文件名里包含时间:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="指定日期时间格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="时间日期格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="结果中添加文件名:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="内容" name="handling">
<el-form ref="form" :model="form" label-width="250px">
<el-form-item label="追加方式:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="分隔符:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">插入TAB</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="封闭符:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="强制在字段周围加封闭符:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="禁用封闭符修复:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="头部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="尾部:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="格式:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="压缩:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="编码:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="字段右填充或裁减:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="快速存储数据(无格式):">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="分拆...每一行:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="添加文件结束行:">
<el-row :gutter="10">
<el-col :span="23">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="字段" name="oher ">
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="fileVisible = false">取 消</el-button>
<el-button type="primary" @click="fileVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
// inputValue:'',
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"名称"
},
{
column_name: "column_age",column_comment:"类型"
},
{
column_name: "column_sex",column_comment:"格式"
},
{
column_name: "column_col",column_comment:"长度"
},
{
column_name: "column_col1",column_comment:"精度"
},
{
column_name: "column_col2",column_comment:"货币"
},
{
column_name: "column_col3",column_comment:"小数"
},
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'1',
column_col1:'1',
column_col2:'1',
column_col3:'1',
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'2',
column_col1:'1',
column_col2:'1',
column_col3:'1',
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'3',
column_col1:'1',
column_col2:'1',
column_col3:'1',
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
fileVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:fileVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
\ No newline at end of file
<template>
<div>
<el-dialog
title="更新"
:visible.sync="updateVisible"
width="800px"
:before-close="handleClose"
top="10%"
>
<div id="ExcelInputDialog"></div>
<el-form ref="stepName" :model="stepName" label-width="120px">
<el-form-item label="步骤名称:">
<el-input v-model="stepName.name"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="基本配置" name="content">
<el-form ref="form" :model="form" label-width="200px">
<el-form-item label="数据库连接:">
<el-row :gutter="10">
<el-col :span="14">
<el-select v-model="form.region" style="width: 100%">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">编辑</el-button></el-col>
<el-col class="line" :span="3">
<el-button size="mini">新建</el-button></el-col>
<el-col class="line" :span="3">
<el-button size="mini">向导</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="目的模式:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col>
</el-row>
</el-form-item>
<el-form-item label="目标表:">
<el-row :gutter="10">
<el-col :span="20">
<el-input v-model="form.name"></el-input>
</el-col>
<el-col class="line" :span="3">
<el-button size="mini">浏览</el-button></el-col
>
</el-row>
</el-form-item>
<el-form-item label="提交记录数量:">
<el-row :gutter="10">
<el-col :span="23">
<el-input v-model="form.name"></el-input>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="批量更新:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="跳过查询:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="忽略查询失败:">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
<el-form-item label="标志字段(key found):">
<el-row :gutter="10">
<el-col :span="23">
<el-checkbox v-model="form.checked"></el-checkbox>
</el-col>
</el-row>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="查询字段" name="handling">
<el-table style="width: 100%" border :data="tableData">
<template v-for="(item,index) in tableHead">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-tab-pane>
<el-tab-pane label="更新字段" name="oher ">
<el-table style="width: 100%" border :data="tableData2">
<template v-for="(item,index) in tableHead2">
<el-table-column :prop="item.column_name" :label="item.column_comment" :key="index" v-if="item.column_name != 'id'"></el-table-column>
</template>
</el-table>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="tableOutPutVisible = false">取 消</el-button>
<el-button type="primary" @click="tableOutPutVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default ({
data(){
return{
form:{},
stepName:{},
activeName:'content',
engine:[],
// 表头数据
tableHead:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"比较符"
},
{
column_name: "column_sex",column_comment:"流里的字段1"
},
{
column_name: "column_col",column_comment:"流里的字段2"
},
],
// 表格数据
tableData: [{
column_age: '3',
column_name: '鞠婧祎',
column_sex: '女',
column_col:'0'
},
{
column_age: '25',
column_name: '魏大勋',
column_sex: '男',
column_col:'1'
},
{
column_age: '18',
column_name: '关晓彤',
column_sex: '女',
column_col:'2'
}],
// 表头数据
tableHead2:[
{
column_name: "column_name",column_comment:"表字段"
},
{
column_name: "column_age",column_comment:"流字段"
},
],
// 表格数据
tableData2: [{
column_age: '3',
column_name: '鞠婧祎',
},
{
column_age: '25',
column_name: '魏大勋',
},
{
column_age: '18',
column_name: '关晓彤',
}],
}
},
props:{
title:{
type:String,
default:''
},
nodePath:{
type:String,
default:''
},
updateVisible:{
type: Boolean,
default:false
},
explorer:Function
},
mounted(){
},
methods:{
handleClose(){
this.$emit("update:updateVisible", false);
},
confirm(){
},
//新建转换
createTrans(){
var formData = new FormData();
var formData = new FormData();
formData.append('dir', this.nodePath);
formData.append('transName', this.inputValue);
// console.log('新建提交参数==',params);
createTrans(formData).then(res=>{
if (res) {
this.$message.success('创建成功!');
this.explorer('');
this.$emit("update:estabDialogVisible", false);
}else {
this.$message.error(res.errMsg)
}
})
},
// 上传
handleChange(file, fileList) {
// console.log(file);
this.fileList = fileList.slice(-3);
this.tableData.push({ name: file.name });
// console.log(this.tableData);
// this.getObjectURL(file.raw)
// console.log(this.getObjectURL(file.raw));
},
addSheet(){},
fileChnageInput(e) {
console.log(e);
},
}
})
</script>
\ No newline at end of file
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