From 54c22f2f0e98c35e48cdad6c4d0299d08beea630 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期一, 28 七月 2025 10:15:13 +0800 Subject: [PATCH] update --- src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue | 181 +++++++++++++++++++-------------------------- 1 files changed, 77 insertions(+), 104 deletions(-) diff --git a/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue b/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue index 07795c1..d52b8d6 100644 --- a/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue +++ b/src/views/mdc/base/modules/DeviceBaseInfo/EquipmentList.vue @@ -1,127 +1,72 @@ <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="24">--> - <!--<a-col :md="7" :sm="7">--> - <!--<a-form-item label="璁惧鍚嶇О">--> - <!--<a-input placeholder="杈撳叆璁惧鍚嶇О鏌ヨ" v-model="queryParam.equipmentName"></a-input>--> - <!--</a-form-item>--> - <!--</a-col>--> - <!--<a-col :md="7" :sm="7">--> - <!--<a-form-item label="鐘舵��">--> - <!--<a-select v-model="queryParam.status" placeholder="璇烽�夋嫨">--> - <!--<a-select-option value="">璇烽�夋嫨</a-select-option>--> - <!--<a-select-option value="0">鍏虫満</a-select-option>--> - <!--<a-select-option value="2">寰呮満</a-select-option>--> - <!--<a-select-option value="3">杩愯</a-select-option>--> - <!--<a-select-option value="22">鎶ヨ</a-select-option>--> - <!--</a-select>--> - <!--</a-form-item>--> - <!--</a-col>--> - <!--<a-col :md="3" :sm="3">--> - <!--<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">--> - <!--<a @click="handleToggleSearch" style="margin-left: 8px">--> - <!--{{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }}--> - <!--<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>--> - <!--</a>--> - <!--</span>--> - <!--</a-col>--> - <!--</a-row>--> - <!--<a-row :gutter="24">--> - <!--<template v-if="toggleSearchStatus">--> - <!--<a-col :md="12" :sm="12">--> - <!--<a-form-item label="閲囬泦鏃堕棿">--> - <!--<a-range-picker @change="dateParamChange" v-model="dates"/>--> - <!--</a-form-item>--> - <!--</a-col>--> - <!--</template>--> - - <!--</a-row>--> - <!--</a-form>--> - <!--</div>--> - <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> - <!--<div class="table-operator" style="border-top: 5px">--> - <!--<a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button>--> - <!--<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button>--> - <!--</div>--> + <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"> - <!--<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">--> - <!--<i class="anticon anticon-info-circle ant-alert-icon"></i>宸查�夋嫨 <a style="font-weight: 600">{{--> - <!--selectedRowKeys.length }}</a>椤� --> - <!--<a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a>--> - <!--</div>--> - - <a-table ref="table" bordered size="middle" rowKey="equipmentId" :columns="columns" :dataSource="dataSource" - :pagination="false" :loading="loading" :scroll="{x:'max-content',y:scrollY}"> - <template slot="equipmentId" slot-scope="text, record"> - <div :style="{color:record.equipmentStatus!==0?'#f00':null}">{{text}}</div> - </template> - <template slot="equipmentName" slot-scope="text, record"> - <div :style="{color:record.equipmentStatus!==0?'#f00':null}">{{text}}</div> - </template> - <template slot="oporationDict" slot-scope="text, record"> - <div :style="{color:record.equipmentStatus!==0?'#f00':null}">{{text}}</div> - </template> - <template slot="equipmentStatus" slot-scope="text"> - <div :style="{color:text!==0?'#f00':null}">{{text===0?'姝e父':'寮傚父'}}</div> - </template> - <template slot="collecttime" slot-scope="text, record"> - <div :style="{color:record.equipmentStatus!==0?'#f00':null}">{{text}}</div> - </template> - <template slot="action" slot-scope="text, record"> - <a-popconfirm title="纭畾鍙嶉鍚�?" @confirm="$emit('editEquipmentStatus',record)" v-has="'deiveBaseInfo:responseStatus'"> - <a>鐘舵�佸弽棣�</a> - </a-popconfirm> - </template> - </a-table> - + <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 } from '@/api/manage' + import { postAction, getAction } from '@/api/manage' + import { filterObj } from '@/utils/util' export default { name: 'EquipmentLayout', components: { }, data() { return { + localDataSource: [...this.dataSource], loading:false, - url: { - - }, + queryParam: {}, columns: [ { - title: '璁惧ID', + title: '璁惧缂栧彿', align: "center", dataIndex: 'equipmentId', - scopedSlots: {customRender: 'equipmentId'}, width:210 }, { - title: '璁惧鍚嶇О', + title: '瀹夎浣嶇疆', align: "center", dataIndex: 'equipmentName', - scopedSlots: {customRender: 'equipmentName'}, width:300 }, { title: '鐘舵��', align: "center", dataIndex: 'oporationDict', - scopedSlots: {customRender: 'oporationDict'}, - width:200 - }, - { - title: '璁惧寮傚父', - align: "center", - dataIndex: 'equipmentStatus', - scopedSlots: {customRender: 'equipmentStatus'}, width:200 }, { @@ -130,34 +75,62 @@ dataIndex: 'collecttime', defaultSortOrder:'descend', sorter: (a, b) => {return a.collecttime>b.collecttime?1:-1}, - scopedSlots: {customRender: 'collecttime'}, width:350 - }, - { - title: '鎿嶄綔', - dataIndex: 'action', - scopedSlots: {customRender: 'action'}, - align: "center", - width: 150, - fixed:'right' } ], scrollY:465, + url: { + list: '/mdc/mdcEquipment/queryEquipmentMonitorList', + } } }, - props: { dataSource: { + 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) -- Gitblit v1.9.3