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