| | |
| | | <script setup name="alarmHis"> |
| | | import { ref, reactive } from "vue"; |
| | | import { ref, reactive, onMounted } from "vue"; |
| | | import { getHisAlarms, getAllAlmName } from "./api"; |
| | | import { getAllDevs } from "@/views/user/api.js"; |
| | | |
| | | const headers = [ |
| | | { |
| | | prop: "uname", |
| | | prop: "devId", |
| | | label: "设备ID", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "uname", |
| | | prop: "devIdcode", |
| | | label: "设备编号", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "uname", |
| | | prop: "devTypeStr", |
| | | label: "设备类型", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "uname", |
| | | label: "测试类型", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "canDownload", |
| | | prop: "almName", |
| | | label: "告警名称", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "canDownload", |
| | | prop: "almStarttime", |
| | | label: "告警开始时间", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "canDownload", |
| | | prop: "confirmedTime", |
| | | label: "告警确认时间", |
| | | width: "", |
| | | }, |
| | | { |
| | | prop: "canDownload", |
| | | prop: "confirmedUname", |
| | | label: "确认人", |
| | | width: "", |
| | | }, |
| | | ]; |
| | | const pageCurr = ref(1); |
| | | const pageSize = ref(10); |
| | | const devId = ref(0); |
| | | const devType = ref(0); |
| | | const startTime = ref(); |
| | | const endTime = ref(); |
| | | const total = ref(0); |
| | | const datas = reactive({ |
| | | tableData: [], |
| | | userInfo: {}, |
| | | }); |
| | | const devType = ref(); |
| | | const testType = ref(); |
| | | const alarmId = ref(); |
| | | const alarmList = reactive([]); |
| | | |
| | | const devList = ref([]); |
| | | const testType = ref(); |
| | | const almId = ref(0); |
| | | const alarmList = ref([]); |
| | | |
| | | // 展示数据数量 |
| | | function handleSizeChange(val) { |
| | |
| | | getList(); |
| | | } |
| | | |
| | | function getList(params) {} |
| | | function getList() { |
| | | getHisAlarms({ |
| | | almId: almId.value ? almId.value : undefined, |
| | | devId: devId.value ? devId.value : undefined, |
| | | devType: devType.value ? devType.value : undefined, |
| | | endTime: endTime.value ? endTime.value + " 23:59:59" : undefined, |
| | | pageNum: pageCurr.value, |
| | | pageSize: pageSize.value, |
| | | startTime: startTime.value ? startTime.value + " 00:00:00" : undefined, |
| | | }) |
| | | .then((res) => { |
| | | let { code, data, data2 } = res.data; |
| | | let _total = 0; |
| | | let _list = []; |
| | | if (code && data) { |
| | | console.log(data); |
| | | const { total: total0, list } = data2; |
| | | _total = total0; |
| | | _list = list.map((v) => { |
| | | v.devIdcode = v.devInf.devIdcode; |
| | | v.devTypeStr = ["", "充放电测试仪", "均衡测试仪"][v.devInf.devType]; |
| | | return v; |
| | | }); |
| | | } |
| | | datas.tableData = _list; |
| | | total.value = _total; |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | | }); |
| | | } |
| | | function getAlarmNames() { |
| | | getAllAlmName() |
| | | .then((res) => { |
| | | let { code, data, data2 } = res.data; |
| | | let _list = []; |
| | | if (code && data) { |
| | | Object.keys(data2).forEach((v) => { |
| | | _list.push({ |
| | | id: v, |
| | | name: data2[v], |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | alarmList.value = _list; |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | | }); |
| | | } |
| | | |
| | | function getDevs(params) { |
| | | getAllDevs() |
| | | .then((res) => { |
| | | let { code, data, data2 } = res.data; |
| | | let _list = []; |
| | | if (code && data) { |
| | | _list = data2.map((v) => ({ |
| | | label: `${v.devIdcode} (${v.devIp})`, |
| | | key: v.devId, |
| | | })); |
| | | } |
| | | devList.value = _list; |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | | }); |
| | | } |
| | | onMounted(() => { |
| | | getAlarmNames(); |
| | | getDevs(); |
| | | getList(); |
| | | }); |
| | | </script> |
| | | |
| | | <template> |
| | |
| | | <div class="label">设备类型</div> |
| | | <div class="content select-wrap"> |
| | | <el-select v-model="devType" class="yc-select" placeholder="Select"> |
| | | <el-option label="全部" value="" /> |
| | | <el-option label="充放电一体机" value="0" /> |
| | | <el-option label="均衡测试仪" value="1" /> |
| | | <el-option label="全部" :value="0" /> |
| | | <el-option label="充放电测试仪" :value="1" /> |
| | | <el-option label="均衡测试仪" :value="2" /> |
| | | </el-select> |
| | | </div> |
| | | <div class="label">测试类型</div> |
| | | <div class="label">设备名称</div> |
| | | <div class="content select-wrap"> |
| | | <el-select v-model="testType" class="yc-select" placeholder="Select"> |
| | | <el-option label="全部" value="" /> |
| | | <el-option label="充电" value="0" /> |
| | | <el-option label="放电" value="1" /> |
| | | <el-select v-model="devId" class="yc-select" placeholder="Select"> |
| | | <el-option label="全部" :value="0" /> |
| | | <el-option |
| | | v-for="dev in devList" |
| | | :key="dev.key" |
| | | :label="dev.label" |
| | | :value="dev.key" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <div class="label">告警名称</div> |
| | | <div class="content select-wrap"> |
| | | <el-select v-model="alarmId" class="yc-select" placeholder="Select"> |
| | | <el-select v-model="almId" class="yc-select" placeholder="Select"> |
| | | <el-option label="全部" :value="0" /> |
| | | <el-option |
| | | v-for="item in alarmList" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | |
| | | <div class="content"> |
| | | <el-date-picker |
| | | class="yc-datepicker" |
| | | v-model="dateStart" |
| | | v-model="startTime" |
| | | value-format="YYYY-MM-DD" |
| | | type="date" |
| | | placeholder="请选择" |
| | | /> |
| | | 至 |
| | | <el-date-picker |
| | | class="yc-datepicker" |
| | | v-model="dateEnd" |
| | | value-format="YYYY-MM-DD" |
| | | v-model="endTime" |
| | | type="date" |
| | | placeholder="请选择" |
| | | /> |
| | | </div> |
| | | <div class="btn-search">查询</div> |
| | | <div class="btn-search" @click="getList">查询</div> |
| | | </div> |
| | | <div class="p-content"> |
| | | <!-- 用户列表 --> |
| | |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | | </style> |