| | |
| | | <div class="panel-content flex-c"> |
| | | <div class="search"> |
| | | <div class="s-item"> |
| | | <div class="label">设备名称</div> |
| | | <div class="label">操作类型</div> |
| | | <div class="value"> |
| | | <el-select |
| | | v-model="devType" |
| | | v-model="cmdType" |
| | | class="dark" |
| | | size="mini" |
| | | @change="getList" |
| | | filterable |
| | | placeholder="请选择" |
| | | > |
| | | <el-option label="全部" value=""></el-option> |
| | | <el-option |
| | | v-for="(item, idx) in devtypes" |
| | | :key="'type_' + idx" |
| | | :label="item" |
| | | :value="idx" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <div class="s-item"> |
| | | <div class="label">参数类型</div> |
| | | <div class="value"> |
| | | <el-select |
| | | v-model="almLevel" |
| | | class="dark" |
| | | size="mini" |
| | | @change="getList" |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="(item, idx) in almLevels" |
| | | v-for="(item, idx) in opInfo" |
| | | :key="'level_' + idx" |
| | | :label="item" |
| | | :value="idx" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <div class="s-item"> |
| | | <div class="label">参数名称</div> |
| | | <div class="value"> |
| | | <el-select |
| | | v-model="almLevel" |
| | | class="dark" |
| | | size="mini" |
| | | @change="getList" |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="(item, idx) in almLevels" |
| | | :key="'level_' + idx" |
| | | :label="item" |
| | | :value="idx" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | |
| | | show-overflow-tooltip |
| | | align="center" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | <!-- <el-table-column |
| | | prop="cztime" |
| | | fixed="right" |
| | | width="240px" |
| | |
| | | @click="details(scope.row)" |
| | | >详情</el-button |
| | | > |
| | | <!-- <el-button class="l-green" disabled="" size="mini" |
| | | >告警详情</el-button |
| | | > --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table-column> --> |
| | | </el-table> |
| | | </div> |
| | | <!-- 底部分页 --> |
| | |
| | | import Panel from "@/components/panel.vue"; |
| | | import gradientBtn from "@/components/gradientBtn.vue"; |
| | | |
| | | import createWs from "@/assets/js/websocket/plus"; |
| | | const WSMixin = createWs("ckPowerDevAlarmHisCount"); |
| | | |
| | | import { getList } from "./js/apis"; |
| | | import { getBattSetLog, getOpInfo } from "./js/apis"; |
| | | export default { |
| | | name: "", |
| | | |
| | | mixins: [WSMixin], |
| | | components: { |
| | | Panel, |
| | | gradientBtn, |
| | | }, |
| | | data() { |
| | | return { |
| | | almCount: {}, |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | devType: 0, |
| | | almLevel: 0, |
| | | date1: "", |
| | | date2: "", |
| | | devtypes: ["全部", "交流配电柜", "直流配电柜", "高频开关电源柜"], |
| | | almLevels: ["全部", "一般", "重大", "紧急"], |
| | | cmdType: "", |
| | | opInfo: [], |
| | | total: 0, |
| | | table: { |
| | | headers: [ |
| | | // { |
| | | // prop: "devName", |
| | | // label: "设备名称", |
| | | // minWidth: 180, |
| | | // }, |
| | | { |
| | | prop: "devName", |
| | | label: "设备名称", |
| | | prop: "cmdName", |
| | | label: "操作类型", |
| | | width: 180, |
| | | }, |
| | | { |
| | | prop: "paramCn", |
| | | label: "参数名称", |
| | | minWidth: 180, |
| | | }, |
| | | { |
| | | prop: "almName", |
| | | label: "参数类型", |
| | | prop: "value", |
| | | label: "设置值", |
| | | minWidth: 180, |
| | | }, |
| | | { |
| | | prop: "createTime", |
| | | label: "测控时间", |
| | | width: 180, |
| | | }, |
| | | { |
| | | prop: "almLevelStr", |
| | | label: "参数名称", |
| | | width: 120, |
| | | }, |
| | | { |
| | | prop: "almLevelStr", |
| | | label: "测控日期", |
| | | width: 120, |
| | | }, |
| | | { |
| | | prop: "almStartTime", |
| | | label: "测控次数", |
| | | width: 180, |
| | | }, |
| | | { |
| | | prop: "almConfirmedTime", |
| | | label: "最后一次测控时间", |
| | | width: 180, |
| | | }, |
| | | // { |
| | | // prop: "almStartTime", |
| | | // label: "测控次数", |
| | | // width: 180, |
| | | // }, |
| | | // { |
| | | // prop: "almConfirmedTime", |
| | | // label: "最后一次测控时间", |
| | | // width: 180, |
| | | // }, |
| | | ], |
| | | datas: [ |
| | | { |
| | | devName: 1, |
| | | }, |
| | | ], |
| | | datas: [], |
| | | }, |
| | | }; |
| | | }, |
| | | methods: { |
| | | details() { |
| | | this.$router.push("/data-record/power-details"); |
| | | }, |
| | | onWSMessage1(res) { |
| | | let { |
| | | data: { list, total }, |
| | | } = JSON.parse(res.data); |
| | | this.table.datas = list.map((v) => { |
| | | v.devName = ["", "交流配电柜", "直流配电柜", "高频开关电源柜"][ |
| | | v.devType |
| | | ]; |
| | | v.almLevelStr = ["", "一般", "重大", "紧急"][v.almLevel]; |
| | | return v; |
| | | }); |
| | | this.total = total; |
| | | }, |
| | | onWSMessage1(res) { |
| | | let { data } = JSON.parse(res.data); |
| | | this.almCount = data; |
| | | }, |
| | | // details() { |
| | | // this.$router.push("/data-record/power-details"); |
| | | // }, |
| | | getList() { |
| | | let params = { |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize, |
| | | devType: this.devType, |
| | | almStartTime: this.date1 |
| | | cmdType: this.cmdType, |
| | | createTime: this.date1 |
| | | ? this.date1 + " 00:00:00" |
| | | : "2023-01-01 00:00:00", |
| | | almStartTime1: this.date2 |
| | | createTime1: this.date2 |
| | | ? this.date2 + " 23:59:59" |
| | | : new Date().format("yyyy-MM-dd hh:mm:ss"), |
| | | almLevel: this.almLevel, |
| | | }; |
| | | console.log("=====9=", params, JSON.stringify(params)); |
| | | // this.SOCKET1.send(JSON.stringify(params)); |
| | | getList(params) |
| | | getBattSetLog(params) |
| | | .then((res) => { |
| | | let { |
| | | code, |
| | | data: { list, total }, |
| | | data, |
| | | data2: { list, total }, |
| | | } = res.data; |
| | | let list1 = []; |
| | | let total1 = 0; |
| | | if (code) { |
| | | if (code && data) { |
| | | list1 = list.map((v) => { |
| | | v.devName = ["", "交流配电柜", "直流配电柜", "高频开关电源柜"][ |
| | | v.devType |
| | | ]; |
| | | v.almLevelStr = ["", "一般", "重大", "紧急"][v.almLevel]; |
| | | v.value = v.value || '--'; |
| | | v.paramCn = v.paramCn || '--'; |
| | | return v; |
| | | }); |
| | | total1 = total; |
| | | } |
| | | this.table.datas = list1; |
| | | this.total = total1; |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | | }); |
| | | }, |
| | | getOpInfo() { |
| | | getOpInfo() |
| | | .then((res) => { |
| | | let { code, data, data2 } = res.data; |
| | | let list = []; |
| | | if (code && data) { |
| | | list = Object.keys(data2).map((v) => ({ |
| | | label: data2[v], |
| | | value: v, |
| | | })); |
| | | } |
| | | console.log(list,'list'); |
| | | this.opInfo = list; |
| | | }) |
| | | .catch((err) => { |
| | | console.log(err); |
| | |
| | | }, |
| | | }, |
| | | |
| | | mounted() {}, |
| | | mounted() { |
| | | this.getOpInfo(); |
| | | this.getList(); |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | |
| | | font-weight: bold; |
| | | padding: 0 6px; |
| | | border: 0 none; |
| | | /deep/ span { |
| | | :deep(span) { |
| | | display: flex; |
| | | color: inherit; |
| | | justify-content: space-between; |
| | |
| | | .p-content { |
| | | flex: 1; |
| | | margin-top: 4px; |
| | | /deep/ .content { |
| | | :deep(.content) { |
| | | background: #011f39; |
| | | } |
| | | .panel-content { |
| | |
| | | } |
| | | .search { |
| | | display: flex; |
| | | justify-content: space-around; |
| | | justify-content: space-between; |
| | | padding: 0.4em; |
| | | .s-item { |
| | | display: flex; |
| | | align-items: center; |
| | |
| | | } |
| | | } |
| | | |
| | | /deep/ .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner { |
| | | :deep(.el-checkbox__input.is-disabled.is-checked) .el-checkbox__inner { |
| | | background-color: #2155ff; |
| | | } |
| | | } |
| | | </style> |
| | | </style> |