From accebdce93486d3b4f26e55ffdea047549cce20c Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期一, 28 七月 2025 21:12:38 +0800 Subject: [PATCH] Merge branch 'master' of http://125.76.225.53:18448/r/xhj/vue_mdc_xhj --- src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 173 insertions(+), 0 deletions(-) diff --git a/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue b/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue new file mode 100644 index 0000000..d52b8d6 --- /dev/null +++ b/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue @@ -0,0 +1,173 @@ +<template> + <a-card :bordered="false" style="display: flex;flex-direction: column"> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="12"> + <a-col :md="7" :sm="8"> + <a-form-item label="鐘舵��" :labelCol="{span: 6}" :wrapperCol="{span: 14, offset: 1}"> + <a-select v-model='queryParam.status' placeholder="璇烽�夋嫨鐘舵��"> + <a-select-option value="1">寰呮満</a-select-option> + <a-select-option value="2">杩愯</a-select-option> + <a-select-option value="3">鎶ヨ</a-select-option> + <a-select-option value="4">鍏虫満</a-select-option> + </a-select> + </a-form-item> + </a-col> + <a-col :md="7" :sm="8"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + </span> + </a-col> + </a-row> + </a-form> + </div> + + <div class="equipmentList" id="DeviceList"> + <a-table + ref="table" + bordered + size="middle" + rowKey="equipmentId" + :columns="columns" + :dataSource="localDataSource" + :pagination="false" + :loading="loading" + :scroll="{x:'max-content',y:scrollY}"/> + </div> + </a-card> +</template> + +<script> + import { postAction, getAction } from '@/api/manage' + import { filterObj } from '@/utils/util' + + export default { + name: 'EquipmentLayout', + components: { }, + data() { + return { + localDataSource: [...this.dataSource], + loading:false, + queryParam: {}, + columns: [ + { + title: '璁惧缂栧彿', + align: "center", + dataIndex: 'equipmentId', + width:210 + }, + { + title: '瀹夎浣嶇疆', + align: "center", + dataIndex: 'equipmentName', + width:300 + }, + { + title: '鐘舵��', + align: "center", + dataIndex: 'oporationDict', + width:200 + }, + { + title: '閲囬泦鏃堕棿', + align: "center", + dataIndex: 'collecttime', + defaultSortOrder:'descend', + sorter: (a, b) => {return a.collecttime>b.collecttime?1:-1}, + width:350 + } + ], + scrollY:465, + url: { + list: '/mdc/mdcEquipment/queryEquipmentMonitorList', + } + } + }, + props: { + dataSource: { + type: Array, + required: true, + default: [] + }, + equipmentId: '' + }, + watch: { + dataSource(newVal) { + this.localDataSource = [...newVal]; // 鉁� 鐩戝惉鐖剁粍浠舵暟鎹彉鍖� + } + }, + methods: { + loadData() { + var params = this.getQueryParams();//鏌ヨ鏉′欢 + this.loading = true; + getAction(this.url.list, params).then((res) => { + if (res.success) { + this.localDataSource = res.result + } + if (res.code === 510) { + this.$message.warning(res.message) + } + this.loading = false; + }) + }, + getQueryParams() { + let param = Object.assign({}, this.queryParam); + param.key = this.equipmentId; + return filterObj(param); + }, + handleWindowResize(){ + const boxHeight = +window.getComputedStyle(document.getElementById('DeviceList')).height.slice(0,-2) + const tableHeadHeight = +window.getComputedStyle(document.querySelector('.ant-table-thead th')).height.slice(0,-2) + this.scrollY = boxHeight - tableHeadHeight + }, + // 閲嶇疆瀛楀吀绫诲瀷鎼滅储妗嗙殑鍐呭 + searchReset() { + var that = this; + that.queryParam.status = ""; + that.queryParam.key = this.equipmentId; + that.loadData(); + }, + searchQuery() { + this.loadData(); + } + }, + mounted(){ + window.addEventListener('resize',this.handleWindowResize) + this.handleWindowResize() + }, + } +</script> +<style scoped> + .equipmentList{ + flex: 1; + overflow: hidden; + } + + @media screen and (min-width: 1920px){ + .equipmentList{ + height: 640px!important; + } + } + @media screen and (min-width: 1680px) and (max-width: 1920px){ + .equipmentList{ + height: 640px!important; + } + } + @media screen and (min-width: 1400px) and (max-width: 1680px){ + .equipmentList{ + height: 493px!important; + } + } + @media screen and (min-width: 1280px) and (max-width: 1400px){ + .equipmentList{ + height: 493px!important; + } + } + @media screen and (max-width: 1280px){ + .equipmentList{ + height: 394px!important; + } + } + +</style> \ No newline at end of file -- Gitblit v1.9.3