高雄 há 1 ano atrás
pai
commit
bbe727bf51
2 ficheiros alterados com 76 adições e 118 exclusões
  1. 7 0
      src/api/iot/alarmRule.js
  2. 69 118
      src/views/warn/index.vue

+ 7 - 0
src/api/iot/alarmRule.js

@@ -74,5 +74,12 @@ export function saveDevice(data) {
     data: data
   })
 }
+export function alarmList(query) {
+  return request({
+    url: '/iot/iot_alarm_data/list',
+    method: "get",
+    params: query,
+  });
+}
 
 

+ 69 - 118
src/views/warn/index.vue

@@ -21,50 +21,38 @@
                   ref="orgTree"
                 ></org-tree>
               </el-form-item>
-              <el-form-item label="设备类型" prop="taskName">
+              <el-form-item label="设备名称" prop="deviceName">
+                <el-input v-model="queryParams.deviceName"
+                          clearable
+                          maxlength="50"
+                          placeholder="请输入设备名称"
+                          style="width: 100%"
+                />
+              </el-form-item>
+              <el-form-item label="设备类型" prop="deviceType">
                 <el-select
-                  v-model="queryParams.taskName"
+                  v-model="queryParams.deviceType"
                   clearable
                   label="设备类型"
                   placeholder="请选择设备类型"
-                  prop="orgType"
-                  @change="cleanExecOrgList"
+                  prop="deviceType"
                 >
                   <el-option
-                    v-for="item in dict.type.sys_org_type"
+                    v-for="item in deviceTypes"
                     :key="item.value"
                     :label="item.label"
-                    :value="item.value"
-                  >
+                    :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
-              <el-form-item label="资产类别" prop="taskName">
-                <el-select
-                  v-model="queryParams.taskName"
-                  clearable
-                  label="资产类别"
-                  placeholder="请选择资产类别"
-                  prop="orgType"
-                  @change="cleanExecOrgList"
-                >
-                  <el-option
-                    v-for="item in dict.type.sys_org_type"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="告警时间" prop="planStartTime">
+              <el-form-item label="告警时间" prop="time">
                 <DataRangePicker
                   type="daterange"
                   value-format="yyyy-MM-dd HH:mm:ss"
                   :default-time="['00:00:00', '23:59:59']"
                   start-placeholder="开始日期"
                   end-placeholder="结束日期"
-                  v-model="queryParams.dateRange"
+                  v-model="queryParams.alarmTime"
                   :picker-options="pickerOptions"
                 >
                 </DataRangePicker>
@@ -76,12 +64,12 @@
                   :default-time="['00:00:00', '23:59:59']"
                   start-placeholder="开始日期"
                   end-placeholder="结束日期"
-                  v-model="queryParams.dateRange"
+                  v-model="queryParams.alarmEndTime"
                   :picker-options="pickerOptions"
                 >
                 </DataRangePicker>
               </el-form-item>
-              <el-form-item label="是否处理" prop="taskName">
+<!--              <el-form-item label="是否处理" prop="taskName">
                 <el-select
                   v-model="queryParams.taskName"
                   clearable
@@ -96,7 +84,7 @@
                   >
                   </el-option>
                 </el-select>
-              </el-form-item>
+              </el-form-item>-->
             </el-form>
 
             <el-row :gutter="10">
@@ -119,7 +107,7 @@
                 </el-button>
               </el-col>
 
-              <el-col :span="1.5">
+<!--              <el-col :span="1.5">
                 <el-button
                   type="primary"
                   icon="el-icon-download"
@@ -128,7 +116,7 @@
                   v-hasPermi="['core:task:export']"
                   >导出</el-button
                 >
-              </el-col>
+              </el-col>-->
 
               <right-toolbar
                 :showSearch.sync="showSearch"
@@ -139,7 +127,7 @@
 
           <el-table
             v-loading="loading"
-            :data="taskList"
+            :data="alarmList"
             border
             height="600"
             size="small"
@@ -159,64 +147,47 @@
               </template>
             </el-table-column>
             <el-table-column
-              label="组织机构"
+              label="地区"
               align="center"
-              prop="taskName"
-              width="220"
+              prop="city"
+              width="100"
             />
             <el-table-column
-              label="设备名称"
+              label="行社"
               align="center"
-              prop="sbmc"
-              width="220"
-              show-overflow-tooltip="true"
+              prop="bank"
+              width="130"
             />
-
             <el-table-column
-              label="资产类别"
+              label="组织机构"
               align="center"
-              prop="pp"
-              width="220"
+              prop="orgName"
+              width="150"
+            />
+            <el-table-column
+              label="设备名称"
+              align="center"
+              prop="deviceName"
+              width="150"
+              show-overflow-tooltip="true"
             />
             <el-table-column
               label="设备类型"
               align="center"
-              prop="ip"
+              prop="sourceTypeDes"
               width="160"
             />
-            <el-table-column label="告警时间" align="center" prop="wlzt">
-              <!-- <template slot-scope="scope">
-                <span>
-                  <dict-tag
-                    :options="dict.type.retrieval_task_status"
-                    :value="scope.row.status"
-                  />
-                </span>
-              </template> -->
+            <el-table-column label="告警时间" align="center" width="180" prop="time">
             </el-table-column>
-            <el-table-column label="恢复时间" align="center" prop="wlzt">
-              <!-- <template slot-scope="scope">
-                <span>
-                  <dict-tag
-                    :options="dict.type.retrieval_task_status"
-                    :value="scope.row.status"
-                  />
-                </span>
-              </template> -->
-            </el-table-column>
-            <el-table-column label="告警模板" align="center" prop="ypzs">
-              <!-- <template slot-scope="scope">
-                {{ scope.row.planStartTime }}~{{ scope.row.planEndTime }}
-              </template> -->
+            <el-table-column label="恢复时间" align="center" width="180" prop="endTime">
             </el-table-column>
 
             <el-table-column
               label="告警内容"
               align="center"
-              prop="exceptionCount"
-              width="150"
+              prop="content"
             />
-            <el-table-column
+<!--            <el-table-column
               label="处理状态"
               align="center"
               prop="sykj"
@@ -227,7 +198,7 @@
               align="center"
               prop="reslut"
               width="160"
-            />
+            />-->
             <!-- <el-table-column
               label="操作"
               fixed="right"
@@ -261,20 +232,37 @@
 </template>
 
 <script>
-import { listTask } from "@/api/core/task";
 import OrgTree from "@/components/orgTree/orgQuerySelector.vue";
-
-import { listPlanRole } from "@/api/core/edu/plan";
-import { formatTime } from "@/utils/ruoyi";
 import DataRangePicker from "@/components/dateTime/daterange.picker.vue";
 import dayjs from "dayjs";
-import { mapGetters } from "vuex";
+import {mapGetters} from "vuex";
+import {alarmList} from "@/api/iot/alarmRule";
+
 export default {
   components: { OrgTree, DataRangePicker },
-  name: "Task",
+  name: "AlarmData",
   dicts: ["sys_access_cycle"],
   data() {
     return {
+      deviceTypes: [{
+        value: '4184',
+        label: '水浸'
+      }, {
+        value: '4183',
+        label: '温湿度'
+      }, {
+        value: '4182',
+        label: '烟感'
+      }, {
+        value: '4181',
+        label: '红外'
+      }, {
+        value: '41885',
+        label: '燃气报警器'
+      }, {
+        value: '4188',
+        label: '门磁'
+      }],
       // 遮罩层
       loading: false,
       // 选中数组
@@ -288,18 +276,7 @@ export default {
       // 总条数
       total: 0,
       // 监控调阅任务表格数据
-      taskList: [
-        {
-          taskName: "长乐农商行",
-          sbmc: "三楼海康",
-          pp: "海康视频存储设备",
-          ip: "10.87.10.166",
-          wlzt: "正常",
-          ypzs: "50",
-          exceptionCount: "2",
-          sykj: "995G/7449G",
-        },
-      ],
+      alarmList: [],
       // 弹出层标题
       title: "",
       // 是否显示弹出层
@@ -335,34 +312,8 @@ export default {
   methods: {
     /** 查询监控调阅任务列表 */
     getList() {
-      this.taskList = [
-        {
-          taskName: "长乐农商行",
-          sbmc: "长乐农商行1楼-02主机",
-          pp: "报警主机传感器",
-          ip: "水浸传感器",
-          wlzt: "2024-01-01",
-          ypzs: "上班一键巡检",
-          exceptionCount: "水浸传感器异常",
-          sykj: "已处理",
-          reslut: "已处理",
-        },
-        {
-          taskName: "闽侯县联社",
-          sbmc: "闽侯县联社大厅-01主机",
-          pp: "物联采集类",
-          ip: "温湿度传感器",
-          wlzt: "2024-01-02",
-          ypzs: "上班一键巡检",
-          exceptionCount: "温湿度传感器异常",
-          sykj: "未处理",
-          reslut: "暂未处理",
-        },
-      ];
-      return;
-      this.loading = true;
-      listTask(this.queryParams).then((response) => {
-        this.taskList = response.rows;
+      alarmList(this.queryParams).then((response) => {
+        this.alarmList = response.rows;
         this.total = response.total;
         this.loading = false;
       });