InternetCompetition/.history/src/components/ChiCollection_2023103114103...

451 lines
12 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- 采集点收集 -->
<template>
<div>
<!-- 设置树形控件 -->
<el-button type="info" plain @click="dialogVisible = true">斥候采集点设置</el-button>
<div v-show="dialogVisible" class="tree_menu">
<el-tree :data="datas" :props="defaultProps" @node-click="treeNodeClick"></el-tree>
<!-- 树形控件右键组件 -->
</div>
<div class="pas_params" v-show="add_passage">
<div>
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="1">添加</el-menu-item>
<el-menu-item index="2">保存</el-menu-item>
<el-menu-item index="3">删除</el-menu-item>
</el-menu>
</div>
<el-table ref="singleTable" :data="tableData" style="width: 100%">
<el-table-column type="index"> </el-table-column>
<el-table-column property="tag_id" label="TagID">
<template slot-scope="scope">
<el-select v-model="scope.row.tag_id" placeholder="0X">
<el-option v-for="option in options1" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="name" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.name" placeholder="0X">
<el-option v-for="option in options2" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="datas" label="地址">
<template slot-scope="scope">
<el-select v-model="scope.row.datas" placeholder="0X">
<el-option v-for="option in options3" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="address" label="寄存地址(十进制)" width="150px">
<template slot-scope="scope">
<el-select v-model="scope.row.address" placeholder="1">
<el-option v-for="option in options4" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="type" label="采集数据类型">
<template slot-scope="scope">
<el-select v-model="scope.row.type" placeholder="bool">
<el-option v-for="option in options5" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="attribute" label="读写属性">
<template slot-scope="scope">
<el-select v-model="scope.row.attribute" placeholder="读写">
<el-option v-for="option in options6" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="order" label="上传模式">
<template slot-scope="scope">
<el-select v-model="scope.row.attribute" placeholder="读写">
<el-option v-for="option in options7" :key="option" :label="option.label" :value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="count" label="单位"> </el-table-column>
</el-table>
</div>
</div>
</template>
<script>
export default {
name: "ChiCollection",
data() {
return {
options1: [{
value: "MachinePamHID909",
label: "MachinePamHID909",
}, {
value: "MachinePamHID910",
label: "MachinePamHID910",
}, {
value: "MachinePamHID911",
label: "MachinePamHID911",
}, {
value: "MachinePamHID912",
label: "MachinePamHID912",
}, {
value: "MachinePamHID913",
label: "MachinePamHID913",
}, {
value: "MachinePamHID914",
label: "MachinePamHID914",
}, {
value: "MachinePamHID915",
label: "MachinePamHID915",
}, {
value: "MachinePamHID916",
label: "MachinePamHID916",
}, {
value: "MachinePamHID917",
label: "MachinePamHID917",
}, {
value: "MachinePamHID918",
label: "MachinePamHID918",
}, {
value: "MachinePamHID919",
label: "MachinePamHID919",
}, {
value: "MachinePamHID920",
label: "MachinePamHID920",
}, {
value: "MachinePamHID921",
label: "MachinePamHID921",
}, {
value: "MachinePamHID922",
label: "MachinePamHID922",
}, {
value: "MachinePamHID923",
label: "MachinePamHID923",
}, {
value: "MachinePamHID924",
label: "MachinePamHID924",
}, {
value: "MachinePamHID925",
label: "MachinePamHID925",
}, {
value: "MachinePamHID926",
label: "MachinePamHID926",
}, {
value: "MachinePamHID927",
label: "MachinePamHID927",
}, {
value: "MachinePamHID928",
label: "MachinePamHID928",
}, {
value: "MachinePamHID929",
label: "MachinePamHID929",
}, {
value: "MachinePamHID930",
label: "MachinePamHID930",
}, {
value: "MachinePamHID931",
label: "MachinePamHID931",
}, {
value: "MachinePamHID932",
label: "MachinePamHID932",
}, {
value: "MachinePamHID933",
label: "MachinePamHID933",
}, {
value: "MachinePamHID934",
label: "MachinePamHID934",
}, {
value: "MachinePamHID935",
label: "MachinePamHID935",
}, {
value: "MachinePamHID936",
label: "MachinePamHID936",
}, {
value: "MachinePamHID937",
label: "MachinePamHID937",
}, {
value: "MachinePamHID938",
label: "MachinePamHID938",
}],
options2: [{
value: "急停状态",
label: "急停状态",
}, {
value: "进给速度",
label: "进给速度",
}],
options3: [{
value: "0X (Coil Status)",
label: "0X (Coil Status)"
},
{
value: "1X (Input Status)",
label: "1X (Input Status)"
}, {
value: "3X (Input Registers)",
label: "3X (Input Registers)"
},
{
value: "4X (Holding Register)",
label: "4X (Holding Register)"
}],
options4: [
{
value: "1",
label: "1",
}
],
options5: [
{
value: " BIT位0/1",
label: " BIT位0/1"
},
{
value: "WORD16位无符号整数",
label: "WORD16位无符号整数"
}, {
value: "INT16位有符号整数",
label: "INT16位有符号整数"
},
{
value: "DWORD32位无符号整数",
label: "DWORD32位无符号整数"
},
{
value: "DINT32位有符号整数",
label: "DINT32位有符号整数"
}, {
value: "FLOAT单精度浮点数",
label: "FLOAT单精度浮点数"
}, {
value: "DOUBLE64位浮点数",
label: "DOUBLE64位浮点数"
}, {
value: "STRING8位字符串",
label: "STRING8位字符串"
}, {
value: "BCD1616位BCD码",
label: "BCD1616位BCD码"
}, {
value: "ULONG64位无符号整数",
label: "ULONG64位无符号整数"
}, {
value: "LONG64位有符号整数",
label: "LONG64位有符号整数"
},
],
options6: [{
value: "读写",
label: "读写"
},
{
value: "只读",
label: "只读"
}, {
value: "只写",
label: "只写"
}],
options7: [{
value: "Periodic",
label: "Periodic"
},
{
value: "Onchange",
label: "Onchange"
}, {
value: "Never",
label: "Never"
}],
activeIndex: "1",
value1: 1,
checked: "",
labelPosition: "left",
formLabelWidth: "116px",
input1: 192,
add_passage: false,
rightMenu: "",
dialogVisible: false,
menuShow: false,
datas: [{
label: 'Gateway',
children: [{
label: '数据采集',
children: [{
label: 'I/O点'
},
{
label: '用户点',
},
{
label: '计算点',
},
{
label: '系统点',
},
]
},
{
label: "上云服务",
children: [
{
label: "标准 MQTT"
},
{
label: "AWS loT"
}]
}]
}],
defaultProps: {
children: "children",
label: "label",
},
tableData: [
{
tag_id: "tag0001",
name: "测试",
datas: "",
address: "1",
order: "NUll",
type: "BIT位0/1",
attribute: "读写",
count: 1,
},
],
};
},
mounted() { },
methods: {
treeNodeClick() {
this.add_passage = true;
},
getDriveName() {
this.diag_drive = true;
},
handleSelect(key, keyPath) {
console.log(key, keyPath);
},
},
};
</script>
<style lang="less" scoped>
.tree_menu {
position: absolute;
width: 286px;
height: 753px;
left: 64px;
top: 104px;
width: 286px;
height: 753px;
line-height: 20px;
border-radius: 3px;
background-color: rgba(255, 255, 255, 1);
text-align: center;
border: 1px solid rgba(220, 220, 220, 1);
}
/deep/ .pas_params {
position: absolute;
left: 362px;
top: 95px;
width: 1066px;
height: 752px;
line-height: 20px;
border-radius: 3px;
background-color: rgba(255, 255, 255, 1);
// text-align: center;
border: 1px solid rgba(220, 220, 220, 1);
.el-button {
width: 80px;
height: 30px;
line-height: 0.5;
}
.el-col-12:last-child {
padding-right: 150px;
}
.el-col-12:first-child {
padding-right: 54px;
}
.el-row {
height: 40px;
display: flex;
align-items: flex-start;
.el-col-1 {
text-align: center;
line-height: 20px;
height: 20px;
}
.el-col-9 {
padding-left: 30px;
}
}
.el-input__inner {
height: 30px;
text-align: left;
padding: 0px 8px;
}
.content {
position: absolute;
left: 377px;
top: 69px;
width: 1220px;
height: 836px;
line-height: 20px;
padding-left: 36px;
background-color: rgba(255, 255, 255, 1);
color: rgba(16, 16, 16, 1);
font-size: 14px;
border: 1px solid rgba(187, 187, 187, 1);
display: flex;
justify-content: flex-start;
align-items: flex-start;
.el-form-item {
margin-bottom: 0px;
}
/deep/ .con_left {
.el-con-5 {
width: 43px;
}
}
.con_left {
width: 709px;
position: relative;
.con_left_footer {
position: absolute;
left: 499px;
top: 777px;
}
}
.con_right {
width: 480px;
.dialog-footer {
.el-button {
width: 80px;
height: 30px;
line-height: 0.5;
}
}
}
}
}
</style>