<template>
|
<div class="menuPop">
|
<div class="leftBox">
|
<ul>
|
<li
|
v-for="(item, index) in option"
|
@click="setTableChange(item)"
|
class="leftBoxLi"
|
>
|
{{ item.cnName }}
|
</li>
|
</ul>
|
</div>
|
<div class="rightBox">
|
<div class="tableBox">
|
<el-table
|
:data="tableData"
|
ref="dialogPayChannel"
|
height="100%"
|
style="width: 100%"
|
border
|
>
|
<el-table-column
|
align="center"
|
type="index"
|
label="序号"
|
width="50"
|
/>
|
<el-table-column
|
v-for="(item, index) in attributeData"
|
:key="index"
|
:label="item.alias"
|
:prop="item.field"
|
show-overflow-tooltip
|
align="center"
|
></el-table-column>
|
</el-table>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<script>
|
import {
|
dataQuery_selectByPage,
|
inquiry_selectDomains,
|
inquiry_selectFields,
|
dataQuerySelectWktById,
|
sign_getPublicKey,
|
dataLib_selectDownloadFile,
|
dataQuery_selectDbOverflowDep,
|
apply_insertApply,
|
decr,
|
encr,
|
dataLib_selectDepsByIds, selectByBuffer
|
} from '../../api/api.js'
|
import { getToken } from "@/utils/auth"
|
import $ from "jquery"
|
import { View } from "ol"
|
export default {
|
data() {
|
return {
|
option:null,
|
tableData: [],
|
attributeData:[],
|
queryForm:{
|
pageIndex:1,
|
pageSize:10,
|
},
|
pageCount:0,
|
pickupInfo:null,
|
optionx:[],
|
wkt:null,
|
}
|
},
|
methods: {
|
async getTableDateHidder() {
|
let name = this.pickupInfo.url.replaceAll("LF:","");
|
name = name.replaceAll("_","");
|
const data = await inquiry_selectFields({ name: name })
|
if (data.code != 200) {
|
this.$message.error("列表调用失败")
|
}
|
const data1 = await inquiry_selectDomains({ name: name })
|
if (data1.code != 200) {
|
this.$message.error("列表调用失败")
|
}
|
this.optionx = []
|
this.attributeData = []
|
var valadata = data.result
|
var laydomain = data1.result
|
|
for (var i in valadata) {
|
if (valadata[i].showtype == 1) {
|
if (
|
valadata[i].domainNa != null &&
|
valadata[i].domainNa != undefined
|
) {
|
for (var j in laydomain) {
|
if (laydomain[j].domName == valadata[i].domainNa) {
|
valadata[i].domainNa = laydomain[j].codeDesc
|
}
|
}
|
}
|
this.optionx.push(valadata[i])
|
this.attributeData.push(valadata[i])
|
}
|
}
|
this.getTableData()
|
},
|
setTableChange(res) {
|
this.pickupInfo = res;
|
this.getTableDateHidder()
|
},
|
async getTableData() {
|
this.tableData = []
|
let name = this.pickupInfo.url.replaceAll("LF:","");
|
name = name.replaceAll("_","");
|
let info = this.$store.state.pickUpPointInfo;
|
let params = {
|
buffer:10,
|
limit:20,
|
name:name,
|
wkt:`POINT (${info.lon} ${info.lat})`,
|
}
|
const data = await selectByBuffer(params)
|
if (data.code != 200) {
|
this.$message.error("列表调用失败")
|
}
|
|
var val_Data = data.result
|
for (var i in val_Data) {
|
var valste = val_Data[i]
|
for (var j in this.optionx) {
|
if (
|
this.optionx[j].domainNa != null &&
|
this.optionx[j].domainNa != undefined
|
) {
|
valste[this.optionx[j].field] = this.optionx[j].domainNa
|
}
|
}
|
}
|
this.pageCount = data.count
|
this.tableData = data.result
|
},
|
},
|
mounted() {
|
this.option = JSON.parse(sessionStorage.getItem("checkedLayers"));
|
this.pickupInfo = this.option.length > 0 ? this.option[0] : {};
|
this.getTableDateHidder();
|
this.$bus.$on("treeChanged", changed => {
|
if (changed){
|
this.option = JSON.parse(sessionStorage.getItem("checkedLayers"));
|
}
|
})
|
},
|
}
|
</script>
|
|
<style scoped lang="less">
|
.menuPop {
|
width: 100%;
|
height: 100%;
|
margin: 0;
|
padding: 0;
|
overflow: hidden;
|
border: 1px solid gray;
|
float: left;
|
.leftBox {
|
width: 20%;
|
height: 100%;
|
overflow: auto;
|
float: left;
|
border-right: 1px solid gray;
|
li {
|
line-height: 20px;
|
border-bottom: 1px solid gray;
|
padding: 5px;
|
background: rgba(255, 255, 255, 0.2);
|
}
|
li:hover {
|
color: #409eff;
|
background: rgba(128, 128, 128, 0.2);
|
}
|
.leftDown {
|
width: 94%;
|
padding: 3%;
|
display: flex;
|
justify-content: flex-end;
|
}
|
}
|
|
.rightBox {
|
width: calc(80% - 1px);
|
height: 100%;
|
float: left;
|
.rightTitle {
|
padding: 5px;
|
|
width: 100%;
|
}
|
.tableBox {
|
position: relative;
|
height: 89%;
|
}
|
.rightPage {
|
margin-left: 50px;
|
/*不可点击的*/
|
}
|
|
.boxClose {
|
float: right;
|
margin-right: 20px;
|
}
|
}
|
}
|
|
li {
|
line-height: 20px;
|
border-bottom: 1px solid gray;
|
padding: 5px;
|
}
|
</style>
|