Quellcode durchsuchen

1.同一类型的报警显示次数;
2.保持力异常报警阈值优化。

git-svn-id: https://202.107.226.68:8443/svn/Services/ResistanceMonitor@84 a05970a1-87b9-9d4f-9ee5-fa77e2ec115b

yinwei vor 1 Jahr
Ursprung
Commit
a8861e9a80

+ 25 - 2
2.Web/src/components/Layout.vue

@@ -165,6 +165,9 @@
          >查看数据</el-link
         >
        </p>
+       <template v-if="item.alarm_count > 1">
+        <el-badge title="同类型报警次数" class="alarm_count" :value="item.alarm_count" />
+       </template>
       </div>
      </div>
     </template>
@@ -333,7 +336,7 @@ export default {
     offset: 'r',
     scrollbar: false,
     closeBtn: 0,
-    area: ['350px', '600px'],
+    area: ['356px', '600px'],
     content: $('#global_alarm_push'),
     cancel: () => {
      this.layer_isOpen = false
@@ -469,7 +472,27 @@ export default {
      //   let hh = this.$dayjs(re_msg.occur_time).format('HH')
      //   if (hh_keys.includes(hh)) return
      //  }
-     this.new_alarm_list.unshift(re_msg)
+     //  this.new_alarm_list.unshift(re_msg)
+     let new_re_msg = _.cloneDeep(re_msg)
+     new_re_msg.alarm_count = 1
+     let target_data = this.new_alarm_list.find(item => {
+      return item.up == re_msg.up && item.tag == re_msg.tag && item.type == re_msg.type
+     })
+     if (target_data) {
+      target_data.alarm_count += 1
+      let target_data_unix = this.$dayjs(target_data.occur_time).valueOf()
+      let re_msg_unix = this.$dayjs(re_msg.occur_time).valueOf()
+      // 同类型报警,取最新一条报警的内容展示
+      if (target_data_unix < re_msg_unix) {
+       for (let key in re_msg) {
+        if (key != 'alarm_count') {
+         target_data[key] = re_msg[key]
+        }
+       }
+      }
+     } else {
+      this.new_alarm_list.unshift(new_re_msg)
+     }
      if ('sunroof' in re_msg) {
       if (re_msg.sunroof == 1) return
      }

+ 1 - 0
2.Web/src/views/Force.vue

@@ -854,6 +854,7 @@ export default {
       dw_alarm_low_drop = null
      } else {
       dw_alarm_low_drop = Number(this.dw_alarm_low_drop)
+      if (dw_alarm_low_drop < 3000) return this.$message.warning('最低报警值需≥3000')
      }
      if (isNaN(this.alarm_low_percent) || !this.alarm_low_percent) {
       alarm_low_percent = null

+ 1 - 0
2.Web/src/views/SystemSetting.vue

@@ -666,6 +666,7 @@ export default {
       dw_alarm_low_drop = null
      } else {
       dw_alarm_low_drop = Number(this.dw_alarm_low_drop)
+      if (dw_alarm_low_drop < 3000) return this.$message.warning('最低报警值需≥3000')
      }
      if (isNaN(this.alarm_low_percent) || !this.alarm_low_percent) {
       alarm_low_percent = null

+ 18 - 3
2.Web/static/css/global-alarm-push.scss

@@ -46,9 +46,23 @@ $bgColor: #232526;
    top: 25px;
    height: 570px;
    max-height: 570px;
+   padding: 0 3px;
    overflow-y: auto;
    .alarm_content {
-    padding: 5px 10px;
+    padding: 5px;
+    margin: 5px 0;
+    border-radius: 3px;
+    border: 1px solid rgba(96, 98, 102, 0.5);
+    box-shadow: 0 2px 12px 0 rgba(255, 255, 255, 0.1);
+    position: relative;
+    .alarm_count {
+     position: absolute;
+     top: 3px;
+     right: 3px;
+     /deep/ .el-badge__content{
+        background-color: red;
+     }
+    }
     p {
      margin: 4px 0;
      color: #909399;
@@ -67,8 +81,9 @@ $bgColor: #232526;
     }
    }
 
-   .alarm_content:not(:last-child) {
-    border-bottom: 1px solid #606266;
+   .alarm_content:hover {
+    border: 1px solid #606266;
+    box-shadow: 0 2px 12px 0 rgba(255, 255, 255, 0.5);
    }
   }
  }