From 39b58503e7fd4929a86c7b6accf8a582e02f077f Mon Sep 17 00:00:00 2001
From: quanyawei <401863037@qq.com>
Date: Thu, 11 Apr 2024 16:06:41 +0800
Subject: [PATCH] fix: 页码修改
---
src/views/Listdata/index.vue | 180 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 137 insertions(+), 43 deletions(-)
diff --git a/src/views/Listdata/index.vue b/src/views/Listdata/index.vue
index d065d2c..e253099 100644
--- a/src/views/Listdata/index.vue
+++ b/src/views/Listdata/index.vue
@@ -31,7 +31,7 @@
:props="props"
collapse-tags
clearable
- ></el-cascader>
+ />
</div>
<div>
<el-select
@@ -44,37 +44,70 @@
:key="item.value"
:label="item.label"
:value="item.value"
- >
- </el-option>
+ />
</el-select>
</div>
<component
:is="dataType"
style="padding-left: 0; margin-left: 20px; width: 160px"
- @sendPickerChild="showPickerChild"
class="select11"
+ @sendPickerChild="showPickerChild"
/>
- <el-button type="primary" @click="toExcel()" style="margin-left: 20px"
+ <!-- <el-button type="primary" @click="toExcel()" style="margin-left: 20px"
>������</el-button
+ > -->
+ <!-- <el-dropdown @command="handleCommand">
+ <el-button type="primary" @click="toExcel()" style="margin-left: 20px"
+ >������<i class="el-icon-arrow-down el-icon--right"></i
+ ></el-button>
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item command="expNew">������(���)</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown> -->
+ <el-dropdown
+ split-button
+ type="primary"
+ style="margin-left: 20px"
+ @click="toExcel()"
+ @command="handleCommand"
>
- <el-button @click="exportMon">������</el-button>
+ ������
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item command="expNew">
+ ������(���)
+ </el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ <el-button
+ style="margin-left: 10px"
+ @click="exportMon"
+ >
+ ������
+ </el-button>
</div>
<el-table
- :data="dateList"
id="exportTab"
+ :data="dateList"
style="margin-top: 20px"
border
max-height="800"
>
<el-table-column
v-for="item in columnList"
+ :key="item"
:prop="item"
:label="item"
width="180px"
- :key="item"
+ />
+ <!-- <el-table-column
+ v-for="item in columnList"
+ :prop="item.props"
+ :label="item.label"
+ width="180px"
+ :key="item.label"
>
- </el-table-column>
+ </el-table-column> -->
</el-table>
</div>
</template>
@@ -102,7 +135,7 @@
TimePicker1,
HourPicker1,
},
- data() {
+ data () {
// ������������������
return {
props: { multiple: true },
@@ -111,7 +144,7 @@
newMac: '',
newMac1: [],
newSensor: [] /* ������������ */,
- columnList: [], //���������������
+ columnList: [], // ���������������
dateList: [],
timevalue: [],
select1: '������',
@@ -142,7 +175,7 @@
computed: {},
// ������data������������������
watch: {
- select1(nv, ov) {
+ select1 (nv, ov) {
if (nv === '������') {
this.dataType = 'HourPicker'
this.unit = 'day'
@@ -161,7 +194,7 @@
}
},
// ���������������������������
- newMac(newVal, oldval) {
+ newMac (newVal, oldval) {
this.newMac1 = []
for (let i = 0; i < newVal.length; i++) {
// console.log(newVal[i], 111)
@@ -173,29 +206,73 @@
// ������dataType���������������
},
// ������������ - ��������������������������������� this ���������
- created() {
+ created () {
this.getData()
- // for (let key in this.timess[0]) {
- // this.columnList.push(key)
- // }
},
// ������������ - ��������������������������� DOM ���������
// mounted() {
//
// },
- beforeCreate() {}, // ������������ - ������������
- beforeMount() {}, // ������������ - ������������
- beforeUpdate() {}, // ������������ - ������������
- updated() {}, // ������������ - ������������
- beforeDestroy() {}, // ������������ - ������������
- destroyed() {}, // ������������ - ������������
- activated() {},
+ beforeCreate () {}, // ������������ - ������������
+ beforeMount () {}, // ������������ - ������������
+ beforeUpdate () {}, // ������������ - ������������
+ updated () {}, // ������������ - ������������
+ beforeDestroy () {}, // ������������ - ������������
+ destroyed () {}, // ������������ - ������������
+ activated () {},
// ������������
methods: {
- showPickerChild(data) {
+ handleCommand (command) {
+ if (this.newMac1 == '') {
+ this.$message.warning('���������������')
+ return
+ }
+ if (this.value == '') {
+ this.$message.warning('���������������')
+ return
+ }
+ this.dateList = []
+ this.columnList = []
+ this.$request({
+ url: 'monitorPoint/exlOut',
+ method: 'post',
+ data: {
+ macs: this.newMac1,
+ sensors: this.value.toString(),
+ // startTime: this.timevalue[0],
+ // endTime: this.timevalue[1],
+ type: this.unit,
+ times: this.newData instanceof Array ? this.newData : [this.newData],
+ },
+ responseType: 'blob',
+ }).then((res) => {
+ console.log('������������', res)
+ this.getOutExcel('������������������.xlsx', res)
+ })
+ },
+ getOutExcel (fileName, res) {
+ let blob = new Blob([res], { type: 'application/x-xls' })
+ if (window.navigator.msSaveOrOpenBlob) {
+ // ������ IE & EDGE
+ navigator.msSaveBlob(blob, fileName)
+ } else {
+ var link = document.createElement('a')
+ // ������������������������URL������
+ const url = window.URL || window.webkitURL || window.moxURL
+ // ������������������
+ link.href = url.createObjectURL(blob)
+ // ������������������
+ link.download = fileName
+ // ������������������
+ link.click()
+ // ������������������������
+ url.revokeObjectURL(link.href)
+ }
+ },
+ showPickerChild (data) {
this.newData = data
},
- getData() {
+ getData () {
this.$request({
url: '/monitorPoint/queryMonitorPoints',
method: 'get',
@@ -213,14 +290,16 @@
label: this.defaultData[i].name,
})
this.options[i].children = []
- for (let j = 0; j < this.defaultData[i].devices.length; j++) {
- this.options[i].children.push({
- value: [
- this.defaultData[i].devices[j].name,
- this.defaultData[i].devices[j].mac,
- ],
- label: this.defaultData[i].devices[j].name,
- })
+ if (this.defaultData[i].devices) {
+ for (let j = 0; j < this.defaultData[i].devices.length; j++) {
+ this.options[i].children.push({
+ value: [
+ this.defaultData[i].devices[j].name,
+ this.defaultData[i].devices[j].mac,
+ ],
+ label: this.defaultData[i].devices[j].name,
+ })
+ }
}
}
})
@@ -229,7 +308,7 @@
})
},
// ���������������������������������
- getSensor() {
+ getSensor () {
this.newSensor = []
this.$request({
url: '/deviceInfo/getMacSensors',
@@ -250,8 +329,7 @@
console.log(err)
})
},
- exportMon() {
- console.log(this.timevalue)
+ exportMon () {
if (this.newMac1 == '') {
this.$message.warning('���������������')
return
@@ -274,18 +352,34 @@
times: this.newData instanceof Array ? this.newData : [this.newData],
},
}).then((res) => {
- console.log(res, 11)
+ // console.log(res, 11)
this.tableData = res.data
- // console.log(this.tableData, 'this.tableData')
for (let key in this.tableData[0]) {
this.columnList.push(key)
}
for (let item of this.tableData) {
this.dateList.push(item)
}
+ // this.tableData = res.data
+ // for (let key in this.tableData[0]) {
+ // let prop = key
+ // if (String(key).indexOf('.') > -1) {
+ // prop = key.replace(/\./g, '')
+ // }
+ // this.columnList.push({ label: key, props: prop })
+ // }
+ // for (let item of this.tableData) {
+ // for (let key in this.tableData[0]) {
+ // if (String(key).indexOf('.') > -1) {
+ // let newKey = key.replace(/\./g, '')
+ // item[newKey] = item[key]
+ // }
+ // }
+ // this.dateList.push(item)
+ // }
})
},
- toExcel() {
+ toExcel () {
let wb = XLSX.utils.table_to_book(document.querySelector('#exportTab'), {
sheet: '���������',
})
@@ -303,9 +397,9 @@
}
return ws
},
- setExlStyle(data) {
+ setExlStyle (data) {
let borderAll = {
- //���������������������
+ // ���������������������
top: {
style: 'thin',
},
@@ -325,7 +419,7 @@
data[key].s = {
border: borderAll,
alignment: {
- horizontal: 'center', //������������������
+ horizontal: 'center', // ������������������
vertical: 'center',
},
font: {
--
Gitblit v1.8.0