From 10b92700323bccebb3e6902f2bb4c70e8166a2a4 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 02 十月 2023 12:59:56 +0800 Subject: [PATCH] 修改 --- src/views/smoke/realTime/index.vue | 76 ++++++++++++++ src/views/smoke/realTime/components/header/index.vue | 183 ++++++++++++++++++++++++++++++++++++ src/api/smoke/realTime.js | 16 +++ 3 files changed, 272 insertions(+), 3 deletions(-) diff --git a/src/api/smoke/realTime.js b/src/api/smoke/realTime.js new file mode 100644 index 0000000..9849483 --- /dev/null +++ b/src/api/smoke/realTime.js @@ -0,0 +1,16 @@ +import http from '@/http' + +export default { + // 鑾峰彇鎵�灞炲崟浣� + findCustomerList: (params) => { + return http.get('/sccg/smoke/customer/list', params); + }, + // 鏌ヨ瀹炴椂鏁版嵁 + findInTimeList: (params) => { + return http.get('/sccg/smoke/inTime/list', params); + }, + // 鑾峰彇璁惧鍦ㄧ嚎鎯呭喌 + getInTimeCount: () => { + return http.get('/sccg/smoke/inTime/count'); + }, +} \ No newline at end of file diff --git a/src/views/smoke/realTime/components/header/index.vue b/src/views/smoke/realTime/components/header/index.vue new file mode 100644 index 0000000..89c38c6 --- /dev/null +++ b/src/views/smoke/realTime/components/header/index.vue @@ -0,0 +1,183 @@ +<template> + <div class="header"> + <el-form :inline="true" :model="seachData" class="demo-form-inline"> + <el-form-item label=""> + <el-select + style="width: 140px" + v-model="seachData.ownerIndex" + placeholder="鎵�灞炲崟浣�" + > + <el-option + v-for="(item, index) in ownerOptions" + :key="item.Id" + :label="item.Name" + :value="index" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label=""> + <el-select + style="width: 120px" + v-model="seachData.status" + placeholder="鎺掓斁鐘舵��" + > + <el-option + v-for="item in statusOptions" + :key="item.label" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label=""> + <el-select + style="width: 120px" + v-model="seachData.onlineStatus" + placeholder="鏁翠綋鐘舵��" + > + <el-option + v-for="item in onlineStatusOptions" + :key="item.label" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + + <el-form-item> + <el-radio v-model="seachData.type" label="1">鐩戞帶璁惧</el-radio> + <el-radio v-model="seachData.type" label="2">鐩戞祴璁惧</el-radio> + </el-form-item> + <el-form-item label=""> + <el-date-picker + v-model="seachData.alarmTime" + type="daterange" + align="right" + unlink-panels + range-separator="鑷�" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + :picker-options="pickerOptions" + > + </el-date-picker> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="getUserList">鍒锋柊</el-button> + + <el-button type="primary" @click="resetAll">瀵煎嚭</el-button> + </el-form-item> + </el-form> + </div> +</template> + +<script> +import realTimeApi from "@/api/smoke/realTime"; + +export default { + data() { + return { + onlineStatusOptions: [ + { + label: "姝e父", + value: "NORMAL", + }, + { + label: "棰勮", + value: "ALARM", + }, + { + label: "瓒呮爣", + value: "EXCESS", + }, + { + label: "绂荤嚎", + value: "DOWN", + }, + { + label: "寮傚父绂荤嚎", + value: "OFF", + }, + ], + statusOptions: [ + { + label: "姝e父", + value: 1, + }, + { + label: "绂荤嚎", + value: 2, + }, + { + label: "寮傚父绂荤嚎", + value: 3, + }, + ], + ownerOptions: [], + seachData: {}, + pickerOptions: { + shortcuts: [ + { + text: "鏈�杩戜竴鍛�", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); + picker.$emit("pick", [start, end]); + }, + }, + { + text: "鏈�杩戜竴涓湀", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); + picker.$emit("pick", [start, end]); + }, + }, + { + text: "鏈�杩戜笁涓湀", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); + picker.$emit("pick", [start, end]); + }, + }, + ], + }, + }; + }, + created() {}, + mounted() { + this.getOwnerOptions(); + }, + methods: { + // 鑾峰彇鎵�灞炲崟浣� + getOwnerOptions() { + const param = { pageSize: 100, pageNum: 1 }; + realTimeApi + .findCustomerList(param) + .then((res) => { + this.ownerOptions = res.list; + }) + .catch((err) => this.$message.error(err)); + }, + + getUserList() { + const ownerItem = this.ownerOptions[this.seachData.ownerIndex]; + this.seachData.owner = ownerItem.Pid + ownerItem.Id; + console.log(this.seachData); + this.$emit("getList", { seachData: this.seachData }); + }, + }, +}; +</script> + +<style lang="scss" scoped> +.header { + line-height: normal; +} +</style> diff --git a/src/views/smoke/realTime/index.vue b/src/views/smoke/realTime/index.vue index 2f1c154..7165c60 100644 --- a/src/views/smoke/realTime/index.vue +++ b/src/views/smoke/realTime/index.vue @@ -1,13 +1,83 @@ <template> - <div>瀹炴椂绠$悊</div> + <MyHeader @getList="getRealTimeList"></MyHeader> </template> <script> +import MyHeader from "./components/header"; +import realTimeApi from "@/api/smoke/realTime"; export default { + data() { + return { + tableData: [], + totalNum: 0, + pageSize: 10, + currentPage: 1, + }; + }, + components: { MyHeader }, + created() { + this.getRealTimeList(); + }, + methods: { + getRealTimeList(seachData) { + let params; + if (seachData) { + params = { + pageNum: this.currentPage, + pageSize: this.pageSize, + resource: + seachData.seachData.resource == undefined + ? null + : seachData.seachData.resource, + region: + seachData.seachData.region == undefined + ? null + : seachData.seachData.region, + type: this.statusArr[1] ?? null, + code: + seachData.seachData.code == undefined + ? null + : seachData.seachData.code, + categoryBig: + seachData.seachData.categoryBig == undefined + ? null + : seachData.seachData.categoryBig, + categorySmall: + seachData.seachData.categorySmall == undefined + ? null + : seachData.seachData.categorySmall, + site: + seachData.seachData.site == undefined + ? null + : seachData.seachData.site, + street: + seachData.seachData.street == undefined + ? null + : seachData.seachData.street, + alarmTime: + seachData.seachData.alarmTime == undefined + ? null + : seachData.seachData.alarmTime, + }; + } else { + params = { + pageNum: this.currentPage, + pageSize: this.pageSize, + }; + } -} + realTimeApi + .findInTimeList(params) + .then(({ records, total }) => { + debugger; + this.tableData = records; + this.totalNum = total; + }) + .catch((err) => this.$message.error(err)); + }, + }, +}; </script> <style> - </style> \ No newline at end of file -- Gitblit v1.8.0