From 4b65f439152d211d30e2d7f449552d73ae738cd1 Mon Sep 17 00:00:00 2001
From: sd <shidong@jhsoft.cc>
Date: 星期三, 13 八月 2025 17:06:05 +0800
Subject: [PATCH] 摄像机配置-必填项样式调整;任务名称去掉默认值增加提示词;图表功能优化。 预警规则-新增功能调整 添加默认图标。 数据推送-调整页面文案显示;修复任务配置bug(选择是否预警后 摄像机名称显示且无法多选)

---
 src/pages/datapush/index/RightEvent copy.vue |  265 +++++++++++++++--------------------------------------
 1 files changed, 75 insertions(+), 190 deletions(-)

diff --git a/src/pages/datapush/index/RightEvent copy.vue b/src/pages/datapush/index/RightEvent copy.vue
index baeaaf5..d4b1d9f 100644
--- a/src/pages/datapush/index/RightEvent copy.vue
+++ b/src/pages/datapush/index/RightEvent copy.vue
@@ -3,25 +3,13 @@
     <div class="s-right-config">
       <el-form>
         <el-form-item label="鍚嶇О">
-          <el-input
-            v-model="taskEditData.name"
-            placeholder="璇疯緭鍏ュ悕绉�"
-            size="small"
-            style="width: 400px"
-          ></el-input>
+          <el-input v-model="taskEditData.name" placeholder="璇疯緭鍏ュ悕绉�" size="small" style="width: 400px"></el-input>
         </el-form-item>
 
         <el-form-item label="鏃堕棿">
-          <el-date-picker
-            v-model="taskEditData.time"
-            format="yyyy-MM-dd HH:mm:ss"
-            value-format="yyyy-MM-dd HH:mm:ss"
-            type="datetimerange"
-            range-separator="鑷�"
-            start-placeholder="寮�濮嬫棩鏈�"
-            end-placeholder="缁撴潫鏃ユ湡"
-            size="small"
-          ></el-date-picker>
+          <el-date-picker v-model="taskEditData.time" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
+            type="datetimerange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡"
+            size="small"></el-date-picker>
         </el-form-item>
 
         <span style="line-height: 38px">鎺ㄩ�佹湇鍔″櫒</span>
@@ -29,54 +17,30 @@
           <i class="el-icon-circle-plus-outline"></i>
           <span>&nbsp;娣诲姞鎺ュ彛鍦板潃</span>
         </div>
-        <div
-          v-for="(item, index) in urls"
-          :key="item.hash"
-          class="flex-box server-url"
-        >
+        <div v-for="(item, index) in urls" :key="item.hash" class="flex-box server-url">
           <div>
             <el-checkbox v-model="item.enable"></el-checkbox>
             <span class="ml20">{{ "URL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" }}</span>
-            <el-input
-              v-model="item.url"
-              style="width: 360px; margin-left: 0px"
-              size="small"
-              placeholder="http://10.10.10.10:8000/dataApi"
-            ></el-input>
+            <el-input v-model="item.url" style="width: 360px; margin-left: 0px" size="small"
+              placeholder="http://10.10.10.10:8000/dataApi"></el-input>
           </div>
           <div class="server-add">
-            <i
-              class="el-icon-remove-outline"
-              @click="delUrl(index)"
-              style="color: red; margin-right: 10px"
-            />
+            <i class="el-icon-remove-outline" @click="delUrl(index)" style="color: red; margin-right: 10px" />
             <i class="el-icon-circle-plus-outline" @click="addUrl()"></i>
           </div>
         </div>
 
         <el-form-item label="鑱斿姩鏂瑰紡" style="margin-top: 20px; width: 100">
-          <el-select
-            v-model="taskEditData.lineWay"
-            placeholder="璇烽�夋嫨"
-            size="small"
-          >
+          <el-select v-model="taskEditData.lineWay" placeholder="璇烽�夋嫨" size="small">
             <el-option label="璇烽�夋嫨" value=""></el-option>
-            <el-option
-              v-for="item in taskEditData.lineOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            ></el-option>
+            <el-option v-for="item in taskEditData.lineOptions" :key="item.value" :label="item.label"
+              :value="item.value"></el-option>
           </el-select>
         </el-form-item>
 
         <el-form-item label="鏍囩">
-          <el-radio v-model="taskEditData.radioValue" label="1"
-            >婊¤冻鍏ㄩ儴</el-radio
-          >
-          <el-radio v-model="taskEditData.radioValue" label="2"
-            >婊¤冻浠绘剰涓�涓�</el-radio
-          >
+          <el-radio v-model="taskEditData.radioValue" label="1">婊¤冻鍏ㄩ儴</el-radio>
+          <el-radio v-model="taskEditData.radioValue" label="2">婊¤冻浠绘剰涓�涓�</el-radio>
         </el-form-item>
       </el-form>
     </div>
@@ -94,116 +58,58 @@
         </div>
       </div>
 
-      <div
-        v-for="(rule, index) in dataList"
-        :key="index"
-        style="margin-top: 10px"
-      >
+      <div v-for="(rule, index) in dataList" :key="index" style="margin-top: 10px">
         <el-row :gutter="20">
           <!-- 涓婚 -->
           <el-col :span="4">
-            <el-select
-              v-model="rule.topic_type"
-              placeholder="璇烽�夋嫨"
-              @change="selectTopic(rule, true)"
-              size="small"
-            >
-              <el-option
-                v-for="item in rule.topicTypeOptions"
-                :key="item.id"
-                :label="item.name"
-                :value="item.value"
-              ></el-option>
+            <el-select v-model="rule.topic_type" placeholder="璇烽�夋嫨" @change="selectTopic(rule, true)" size="small">
+              <el-option v-for="item in rule.topicTypeOptions" :key="item.id" :label="item.name"
+                :value="item.value"></el-option>
             </el-select>
           </el-col>
 
           <!-- 杩囨护鍊� -->
           <el-col :span="4">
-            <el-select
-              v-model="rule.topic_arg"
-              placeholder="璇烽�夋嫨"
-              @change="selectArg(rule, true)"
-              size="small"
-            >
-              <el-option
-                v-for="item in rule.topicArgOptions"
-                :key="item.id"
-                :label="item.name"
-                :value="item.value"
-              ></el-option>
+            <el-select v-model="rule.topic_arg" placeholder="璇烽�夋嫨" @change="selectArg(rule, true)" size="small">
+              <el-option v-for="item in rule.topicArgOptions" :key="item.id" :label="item.name"
+                :value="item.value"></el-option>
             </el-select>
           </el-col>
 
           <!-- 鎿嶄綔绗� -->
           <el-col :span="4">
-            <el-select
-              v-model="rule.operator"
-              placeholder="璇烽�夋嫨"
-              size="small"
-            >
+            <el-select v-model="rule.operator" placeholder="璇烽�夋嫨" size="small">
               <el-option label="==" value="="></el-option>
             </el-select>
           </el-col>
 
           <!-- 鍊肩被鍨� -->
           <el-col :span="4">
-            <el-select
-              v-model="rule.operator_type"
-              placeholder="璇烽�夋嫨"
-              @change="selectOperator(rule, true)"
-              size="small"
-            >
-              <el-option
-                v-for="item in rule.operatorTypeOpionts"
-                :key="item.id"
-                :label="item.name"
-                :value="item.value"
-              ></el-option>
+            <el-select v-model="rule.operator_type" placeholder="璇烽�夋嫨" @change="selectOperator(rule, true)" size="small">
+              <el-option v-for="item in rule.operatorTypeOpionts" :key="item.id" :label="item.name"
+                :value="item.value"></el-option>
             </el-select>
           </el-col>
 
           <!-- 杩囨护鍊� -->
           <el-col :span="4">
             <div v-if="rule.operator_type === 'custom'">
-              <el-input
-                v-model="rule.rule_value"
-                placeholder="璇疯緭鍏ュ唴瀹�"
-                size="small"
-              ></el-input>
+              <el-input v-model="rule.rule_value" placeholder="璇疯緭鍏ュ唴瀹�" size="small"></el-input>
             </div>
             <div v-else>
-              <el-select
-                v-model="rule.rule_values"
-                multiple
-                collapse-tags
-                placeholder="璇烽�夋嫨"
-                size="small"
-                @change="selectValue(rule, $event)"
-              >
-                <el-option
-                  v-for="item in rule.ruleValueOptions"
-                  :key="item.id"
-                  :label="item.name"
-                  :disabled="item.disabled"
-                  :value="item.value"
-                ></el-option>
+              <el-select v-model="rule.rule_values" multiple collapse-tags placeholder="璇烽�夋嫨" size="small"
+                @change="selectValue(rule, $event)">
+                <el-option v-for="item in rule.ruleValueOptions" :key="item.id" :label="item.name"
+                  :disabled="item.disabled" :value="item.value"></el-option>
               </el-select>
             </div>
           </el-col>
           <el-col :span="4">
             <div class="rule-edit-btn">
-              <i
-                v-show="dataList.length > 1"
-                class="el-icon-remove-outline"
-                @click="delRule(index)"
-                style="color: red; margin-right: 10px"
-              />
-              <i
-                v-show="index === dataList.length - 1"
-                class="el-icon-circle-plus-outline"
-                @click="addRule()"
-                style="color: #3d68e1"
-              ></i>
+              <i v-show="dataList.length > 1" class="el-icon-remove-outline" @click="delRule(index)"
+                style="color: red; margin-right: 10px" />
+              <i v-show="index === dataList.length - 1" class="el-icon-circle-plus-outline" @click="addRule()"
+                style="color: #3d68e1"></i>
             </div>
           </el-col>
         </el-row>
@@ -216,87 +122,43 @@
       </div>
       <div class="config-item">
         <b>鎺ㄩ�佸瓧娈�</b>
-        <el-button type="primary" size="mini" @click="openPushSetDialog"
-          >璁剧疆</el-button
-        >
+        <el-button type="primary" size="mini" @click="openPushSetDialog">璁剧疆</el-button>
       </div>
       <div class="save-btn">
-        <el-button
-          type="info"
-          size="small"
-          @click="onCancle"
-          style="color: #222"
-          >鍙栨秷</el-button
-        >
-        <el-button type="primary" @click="eventPushsSave" size="small"
-          >淇濆瓨</el-button
-        >
+        <el-button type="info" size="small" @click="onCancle" style="color: #222">鍙栨秷</el-button>
+        <el-button type="primary" @click="eventPushsSave" size="small">淇濆瓨</el-button>
       </div>
     </div>
-    <el-dialog
-      :visible="pushFieldDialog"
-      :append-to-body="false"
-      :close-on-click-modal="false"
-      class="dialog-push-field"
-      @close="pushFieldDialog = false"
-    >
+    <el-dialog :visible="pushFieldDialog" :append-to-body="false" :close-on-click-modal="false"
+      class="dialog-push-field" @close="pushFieldDialog = false">
       <div slot="title" class="slot-title">
         <p>璇烽�夋嫨鎯宠鎺ㄩ�佺殑瀛楁</p>
         <div class="right">
-          <el-checkbox
-            v-model="allFieldChecked"
-            @change="allCheckChange"
-          ></el-checkbox>
+          <el-checkbox v-model="allFieldChecked" @change="allCheckChange"></el-checkbox>
         </div>
       </div>
-      <div
-        class="check-area"
-        v-for="configObj in tempPushSet"
-        :key="configObj.id"
-      >
+      <div class="check-area" v-for="configObj in tempPushSet" :key="configObj.id">
         <div class="header">
           <div class="title">{{ configObj.name }}</div>
           <div class="right">
-            <el-checkbox
-              v-model="configObj.checked"
-              @change="toggleConfigCheck(configObj)"
-              >鍏ㄩ��</el-checkbox
-            >
+            <el-checkbox v-model="configObj.checked" @change="toggleConfigCheck(configObj)">鍏ㄩ��</el-checkbox>
           </div>
         </div>
         <div class="flex-box flex-wrap">
-          <div
-            class="param flex-box"
-            v-for="param in configObj.children"
-            :key="param.id"
-          >
-            <el-checkbox
-              v-model="param.checked"
-              @change="checkChildren"
-            ></el-checkbox>
+          <div class="param flex-box" v-for="param in configObj.children" :key="param.id">
+            <el-checkbox v-model="param.checked" @change="checkChildren"></el-checkbox>
             <span class="param-name">{{ param.name }}</span>
-            <el-input
-              v-model="param.alias"
-              size="mini"
-              :ref="`input_${param.id}`"
-              @input="varifyField(param)"
-              :style="{
-                color: param.error ? 'red' : '',
-                borderColor: param.error ? 'red' : '',
-              }"
-            ></el-input>
+            <el-input v-model="param.alias" size="mini" :ref="`input_${param.id}`" @input="varifyField(param)" :style="{
+              color: param.error ? 'red' : '',
+              borderColor: param.error ? 'red' : '',
+            }"></el-input>
           </div>
         </div>
       </div>
       <div slot="footer" class="text-center">
         <el-button size="small" @click="canclePushFieldSet">鍙栨秷</el-button>
-        <el-button
-          size="small"
-          type="primary"
-          :disabled="disabledPushFieldSet"
-          @click="submitPushFieldSet"
-          >淇濆瓨</el-button
-        >
+        <el-button size="small" type="primary" :disabled="disabledPushFieldSet"
+          @click="submitPushFieldSet">淇濆瓨</el-button>
       </div>
     </el-dialog>
   </div>
@@ -855,9 +717,11 @@
 .s-event-push-right {
   text-align: left;
   font-size: 14px;
+
   i {
     cursor: pointer;
   }
+
   .s-right-config {
     padding: 10px 40px;
   }
@@ -876,9 +740,11 @@
   .s-right-rule {
     padding: 20px 40px;
     margin-top: 17px;
+
     .rule-title {
       border-bottom: 1px solid #e0e0e0;
     }
+
     .rule-title2 {
       margin-top: 20px;
     }
@@ -903,12 +769,15 @@
       margin-left: 895px;
     }
   }
+
   .config-item {
     margin: 20px 0;
+
     b {
       margin-right: 10px;
     }
   }
+
   .el-button--text {
     text-decoration: unset;
   }
@@ -919,9 +788,11 @@
       position: relative;
       top: 2px;
     }
+
     span {
       font-size: 14px;
     }
+
     display: inline;
     color: #3d68e1;
     line-height: 38px;
@@ -932,71 +803,88 @@
   .server-url {
     padding-top: 25px;
   }
+
   .server-add {
     font-size: 18px;
     margin-left: 8px;
     color: #3d68e1;
     line-height: 39px;
   }
+
   .dialog-push-field {
+
     .el-button--primary.is-disabled,
     .el-button--primary.is-disabled:hover {
       background-color: #9eb4f0 !important;
       border-color: #9eb4f0 !important;
     }
+
     .el-dialog {
       width: 910px;
       height: 700px;
+
       .el-dialog__body {
         padding-top: 14px;
         height: 540px;
         overflow-y: auto;
       }
     }
+
     .text-center {
       text-align: center;
     }
+
     .slot-title {
       position: relative;
+
       .right {
         position: absolute;
         top: 0;
         right: 30px;
       }
     }
+
     .check-area {
       padding-bottom: 10px;
+
       .header {
         position: relative;
         background: #efefef;
         line-height: 30px;
         margin-bottom: 14px;
         font-weight: bold;
+
         .title {
           border-left: 3px solid #2481fa;
           padding-left: 10px;
         }
+
         .right {
           position: absolute;
           top: 0;
           right: 30px;
         }
       }
+
       .flex-box.flex-wrap {
         flex-wrap: wrap;
       }
+
       .param.flex-box {
         word-break: keep-all;
         align-items: center;
         margin: 0 10px;
         min-width: 260px;
         margin-bottom: 10px;
+
         .param-name {
           margin: 0 5px;
         }
+
         .el-input {
           border-color: #dcdfe6;
           color: #606266;
+
           .el-input__inner {
             color: inherit;
             border-color: inherit;
@@ -1007,6 +895,3 @@
   }
 }
 </style>
-
-
-

--
Gitblit v1.8.0