Merge pull request 'dev' (#5) from dev into master

Reviewed-on: #5
pull/7/head^2
niuwu666 2024-08-30 00:46:30 +08:00
commit 0df439daaa
5 changed files with 174 additions and 6 deletions

View File

@ -38,4 +38,11 @@ export function extractDataName() {
}) })
} }
export function selectByTableName(tableName) {
return request({
url: '/integration/task/selectByTableName?tableName='+tableName,
method: 'post',
})
}

View File

@ -0,0 +1,106 @@
<template>
<div>
<div>
<el-dialog
title="提示"
:visible.sync="dialogVisible"
width="30%"
>
<span>
<el-radio-group v-model="labelPosition" size="small">
<el-radio-button label="left">左对齐</el-radio-button>
<el-radio-button label="right">右对齐</el-radio-button>
<el-radio-button label="top">顶部对齐</el-radio-button>
</el-radio-group>
<div style="margin: 20px;"></div>
<el-form :label-position="labelPosition" label-width="80px" :model="tableMsg">
<el-form-item label="任务id">
<el-input v-model="tableMsg.id" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="数据库id">
<el-input v-model="tableMsg.databaseId" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="数据表">
<el-cascader
v-model="tableMsg.tableName"
:options="tables"
:props="{ expandTrigger: 'hover',value:'id',label:'name',children:'tableNames' }"
@change="handleChange"></el-cascader>
</el-form-item>
<el-form-item label="表别名">
<el-input v-model="tableMsg.tableAsField"></el-input>
</el-form-item>
</el-form>
</span>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogVisible = false"> </el-button>
</span>
</el-dialog>
</div>
</div>
</template>
<script>
//jsjsjson,
//import from ',
import {extractDataName} from "../../../api/etl/etl";
export default {
name: "task",
//import使"
components: {},
props: {},
data() {
//"
return {
labelPosition: 'right',
dialogVisible:false,
tableMsg:{},
tables:{}
};
},
// data",
computed: {},
//data",
watch: {},
//",
methods: {
handleChange(value) {
console.log(value);
},
getDatabaseMessage(){
this.dialogVisible = true
extractDataName().then(res => {
console.log(res);
this.tables = res.data
})
},
},
// - 访this",
created() {
},
// - 访DOM",
mounted() {
},
beforeCreate() {
}, // - ",
beforeMount() {
}, // - ",
beforeUpdate() {
}, // - ",
updated() {
}, // - ",
beforeDestroy() {
}, // - ",
destroyed() {
}, // - ",
activated() {
} //keep-alive",
};
</script>
<style scoped>
</style>

View File

@ -48,7 +48,44 @@
</span> </span>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogVisible = false"> </el-button> <el-button type="primary" @click="nextOne()"></el-button>
</span>
</el-dialog>
<el-dialog
title="提示"
:visible.sync="dialogVisible1"
width="30%"
>
<el-table
ref="multipleTable"
:data="tableData"
tooltip-effect="dark"
style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column
type="selection"
width="55">
</el-table-column>
<el-table-column
label="日期"
width="120">
<template slot-scope="scope">{{ scope.row.date }}</template>
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="120">
</el-table-column>
<el-table-column
prop="address"
label="地址"
show-overflow-tooltip>
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible1 = false"> </el-button>
<el-button type="primary" @click="dialogVisible1 = false"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
@ -56,14 +93,19 @@
<script> <script>
import { Graph } from "@antv/x6"; import { Graph } from "@antv/x6";
import {extractDataName} from "../../../api/etl/etl"; import {extractDataName, selectByTableName} from "../../../api/etl/etl";
export default { export default {
name: "antvX6", name: "antvX6",
data() { data() {
return { return {
tableData:[],
dialogVisible1: false,
tables:{}, tables:{},
tableMsg:{}, tableMsg:{
tableName:"",
tableAsField:""
},
labelPosition: 'right', labelPosition: 'right',
dialogVisible:false, dialogVisible:false,
curSelectNode: "", curSelectNode: "",
@ -93,8 +135,22 @@ export default {
}; };
}, },
methods: { methods: {
handleSelectionChange(val) {
this.multipleSelection = val;
},
nextOne(){
let tableAsField = this.tableMsg.tableAsField;
let tableName = this.tableMsg.tableName;
selectByTableName(tableName).then(res => {
this.dialogVisible1 = true
this.tableData = res.data
console.log(res);
})
this.dialogVisible = false
},
handleChange(value) { handleChange(value) {
console.log(value);
this.tableMsg.tableName = value[1]
}, },
getDatabaseMessage(){ getDatabaseMessage(){
this.dialogVisible = true this.dialogVisible = true

View File

View File

@ -117,7 +117,7 @@ import { diGui } from "@/api/market/orders";
//jsjsjson, //jsjsjson,
//import from ', //import from ',
export default { export default {
dicts:['pms_shop_typeid','pms_shop_publiststatus','pms_shop_brandid','pms_shop_verifystatus'], dicts:['product_name','orders_num','orders_state','orders_launchdate'],
//import使" //import使"
components: {}, components: {},
props: {}, props: {},
@ -237,7 +237,6 @@ export default {
created() { created() {
// this.diGui() // this.diGui()
this.selectList() this.selectList()
this.selected = this.options[0].value
}, },
// - 访DOM", // - 访DOM",
mounted() { mounted() {