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/cameraAccess/components/SceneRule.vue |   65 +++++++++++++++++++++++---------
 1 files changed, 46 insertions(+), 19 deletions(-)

diff --git a/src/pages/cameraAccess/components/SceneRule.vue b/src/pages/cameraAccess/components/SceneRule.vue
index 8bfea00..fba6762 100644
--- a/src/pages/cameraAccess/components/SceneRule.vue
+++ b/src/pages/cameraAccess/components/SceneRule.vue
@@ -12,12 +12,14 @@
           <el-form-item label="鍥炬爣">
             <!-- 鍥剧墖棰勮 -->
             <div class="icon-preview-container">
-              <el-image v-if="sceneForm.iconUrl" :src="sceneForm.iconUrl" fit="cover" />
-              <!-- <el-image v-else src="@/assets/img/瀹瑰櫒@1x.png" fit="cover" /> -->
-              <img style="width: 60px;" v-else src="@/assets/img/瀹瑰櫒@1x.png" />
+              <el-image v-if="sceneForm.iconUrl"
+                :src="sceneForm.iconUrl + '?t=' + timestamp"></el-image>
+              <!-- <el-image :src="sceneForm.iconUrl?'http://192.168.1.235:7009'+sceneForm.iconUrl + '?t=' + timestamp:'http://192.168.1.235:7009/opt/smart/icon/task_icon.png'" fit="cover" /> -->
+              <img v-else src="@/assets/img/绌虹櫧.png" fit="cover" />
+              <!-- <img style="width: 60px;" v-else src="@/assets/img/瀹瑰櫒@1x.png" /> -->
             </div>
           </el-form-item>
-          <el-form-item label="浜嬩欢绛夌骇">
+          <el-form-item label="浜嬩欢绛夌骇" required>
             <el-select v-model="sceneForm.alarm_level" placeholder="璇烽�夋嫨" size="mini" style="width: 250px">
               <el-option label="涓�绾�" :value="1"></el-option>
               <el-option label="浜岀骇" :value="2"></el-option>
@@ -26,7 +28,7 @@
               <el-option label="浜旂骇" :value="5"></el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="鏃堕棿娈�">
+          <el-form-item label="鏃堕棿娈�" required>
             <el-select v-model="sceneForm.workTimeId" placeholder="璇烽�夋嫨" size="mini">
               <el-option v-for="item in VideoManageData.TimeRules" :key="item.id" :label="item.name"
                 :value="item.id"></el-option>
@@ -44,11 +46,11 @@
         </div>
         <div class="right">
 
-          <el-form-item label="浠诲姟鍚嶇О">
-            <el-input v-model="sceneForm.scene_name" size="mini" maxlength="15"></el-input>
+          <el-form-item label="浠诲姟鍚嶇О" required>
+            <el-input v-model="sceneForm.scene_name" placeholder="璇疯緭鍏ヤ换鍔″悕绉�" size="mini" maxlength="15"></el-input>
           </el-form-item>
           <!-- 棰勮瑙勫垯 -->
-          <el-form-item label="浠诲姟鎻忚堪">
+          <el-form-item label="浠诲姟鎻忚堪" required>
             <!-- <el-select v-model="sceneForm.warningRules" placeholder="璇烽�夋嫨" size="mini" multiple>
               <el-option v-for="item in VideoManageData.ruleOptions" :key="item.ruleId" :label="item.fileName"
                 :value="item.ruleId"></el-option>
@@ -58,8 +60,7 @@
                 :value="item.ruleId"></el-option>
             </el-select> -->
             <ruleSelect :initial-rules="VideoManageData.ruleOptions" :selected-rule="currentRule"
-             @rule-selected="handleRuleSelect"
-              @rule-created="handleRuleCreate" />
+              @rule-selected="handleRuleSelect" @rule-created="handleRuleCreate" />
           </el-form-item>
           <!-- 鐭ヨ瘑搴� -->
           <el-form-item label="鍏宠仈鐭ヨ瘑搴�" size="mini">
@@ -249,6 +250,14 @@
       this.editScene = false;
     },
   },
+  created() {
+    this.userInfo = sessionStorage.getItem("userInfo") && JSON.parse(sessionStorage.getItem("userInfo"))
+  },
+  computed: {
+    isGb28182() {
+      return this.TreeDataPool.selectedNode.cameraType === 1
+    }
+  },
   mounted() {
     // window.addEventListener('resize', this.windowSizeChange)
     this.getSounds();
@@ -258,7 +267,9 @@
   },
   data() {
     return {
-      currentRule:null,// 鍒濆鏃犻�変腑瑙勫垯
+      timestamp: Date.now(),  // 鏃堕棿鎴崇敤浜庡己鍒跺埛鏂板浘鐗�
+      userInfo: {},
+      currentRule: null,// 鍒濆鏃犻�変腑瑙勫垯
       knowledgeProps: {
         multiple: true, // 鏀寔澶氶��
         value: 'id',    // 鎸囧畾閫夐」鍊煎瓧娈�
@@ -290,14 +301,27 @@
       // console.log('閫変腑瑙勫垯:', rule);
       this.sceneForm.warningRules = [rule.ruleId]
       this.sceneForm.ruleName = null
+      this.sceneForm.iconUrl = rule.iconUrl
+      // 鏇存柊鏃堕棿鎴冲己鍒跺埛鏂板浘鐗�
+      this.timestamp = Date.now();
+      console.info("iconUrl:" + this.sceneForm.iconUrl)
       // 鎵ц棰勮鍒ゆ柇閫昏緫
     },
     handleRuleCreate(newRule) {
-      // console.log('鍒涘缓鏂拌鍒�:', newRule);
-      this.sceneForm.ruleName = newRule.fileName
-      this.sceneForm.warningRules = []
-      this.sceneForm.rules = []
-      // 灏嗘柊瑙勫垯淇濆瓨鍒板悗绔�
+      if (newRule) {
+        // console.log('鍒涘缓鏂拌鍒�:', newRule);
+        this.sceneForm.ruleName = newRule.fileName
+        this.sceneForm.warningRules = []
+        this.sceneForm.rules = []
+        this.sceneForm.iconUrl = newRule.iconUrl
+        console.log(this.sceneForm)
+        // 灏嗘柊瑙勫垯淇濆瓨鍒板悗绔�
+      } else {
+        this.sceneForm.ruleName = null
+        this.sceneForm.warningRules = []
+        this.sceneForm.rules = []
+        this.sceneForm.iconUrl = null
+      }
     },
     getSoundById(id) {
       if (id) {
@@ -380,6 +404,7 @@
         time_rule_id: "",
         voice: {},
         voiceId: "",
+        iconUrl: ""
       };
       // this.$refs.sceneEditor.cleanRule();
       // this.$refs.sceneEditor.getSdkConnection();
@@ -427,7 +452,7 @@
           ? this.bubbleSort(tempArr)[tempArr.length - 1] + 1
           : 1;
 
-      this.sceneForm.scene_name = "鍦烘櫙" + latest;
+      // this.sceneForm.scene_name = "鍦烘櫙" + latest;//鍘绘帀鍒濆鍖栧悕绉�
       //鍒濆鍖栨椂闂存
       this.sceneForm.time_rule_id = this.VideoManageData.TimeRules[0].id;
     },
@@ -509,6 +534,7 @@
       return true;
     },
     saveSceneRule() {
+      console.log(this.Camera)
       if (!this.validateForm()) {
         return;
       }
@@ -544,9 +570,10 @@
       // this.sceneForm.workTimes = workTimes
       this.sceneForm.taskDescription = this.sceneForm.desc
       this.sceneForm.knows = fileIds,
-      
+        this.sceneForm.createUser = this.userInfo.id
+      this.sceneForm.type = this.isGb28182 ? 1 : 0
       // console.info(this.sceneForm)
-        this.onSaveScene(this.sceneForm);
+      this.onSaveScene(this.sceneForm);
     },
 
     handleDelScene(groupRule) {

--
Gitblit v1.8.0