From 568a2bbecb28ba56554eae5f5e034f1d80b56b2b Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期四, 12 六月 2025 16:06:37 +0800
Subject: [PATCH] gx

---
 src/views/deviceWindoes2.vue |   39 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/src/views/deviceWindoes2.vue b/src/views/deviceWindoes2.vue
index d789940..0ea9ec0 100644
--- a/src/views/deviceWindoes2.vue
+++ b/src/views/deviceWindoes2.vue
@@ -1531,6 +1531,7 @@
       <template #footer>
         <div class="dialog-footer">
           <el-button @click="centerDialogVisible = false">取消</el-button>
+          <el-button @click="test">测试播报</el-button>
           <el-button type="primary" @click="saveSet"> 确认 </el-button>
           <el-button type="success" @click="shuaxin"> 刷新 </el-button>
         </div>
@@ -1949,6 +1950,7 @@
     if (res.data === "OK") {
       倒计时.value = minutes * 60;
       centerDialogVisible2.value = false;
+      倒计时告警文本.value = alertText
     } else {
       ElMessage.warning(res.message);
     }
@@ -2109,7 +2111,7 @@
   return `${pad(hours)}:${pad(minutes)}:${pad(seconds)}`;
 };
 
-const 倒计时 = ref(0);
+const 倒计时 = ref(-100);
 const 倒计时显示 = ref("00:00:00");
 const 倒计时告警文本 = ref("");
 // 定时器回调函数
@@ -2117,7 +2119,16 @@
   if (倒计时.value > 0) {
     倒计时显示.value = formatSecondsToTime(倒计时.value);
     倒计时.value--;
-  } else {
+  } else if(倒计时.value!==-100) {
+    倒计时显示.value = "";
+    // 只有没触发的时候才触发他
+    if(centerDialogVisible3.value===false){
+      centerDialogVisible3.value = true;
+      关闭弹框警告();
+      播报警告文本(倒计时告警文本.value);
+    }
+  
+  }else{
     倒计时显示.value = "";
   }
 };
@@ -2254,7 +2265,7 @@
           if (dataBody.倒计时?.提醒文本) {
             倒计时.value = dataBody.倒计时?.设定提醒倒计时;
             console.log("设置了倒计时值", 倒计时.value);
-            if (倒计时.value <= 0 && 倒计时.value >= -60) {
+            if (倒计时.value <= 0 && 倒计时.value >= -60&& centerDialogVisible3.value===false) {
               centerDialogVisible3.value = true;
               倒计时告警文本.value = dataBody.倒计时?.提醒文本;
               关闭弹框警告();
@@ -2323,10 +2334,12 @@
   setTimeout(function () {
     console.log("30秒已过,关闭报警设置弹框。");
     centerDialogVisible3.value = false;
+    倒计时.value=-100
   }, 30000); // 30000 毫秒 = 30 秒
 };
 const 播报警告文本 = (tex) => {
   if (centerDialogVisible3.value) {
+    console.log(centerDialogVisible3.value,'播报')
     speech.value
       .speak({
         text: tex,
@@ -2350,6 +2363,26 @@
       });
   }
 };
+const test=()=>{
+  speech.value
+      .speak({
+        text: '你好,我现在在测试播报内容',
+        listeners: {
+          //开始播放
+          onstart: () => {
+            console.log("开始播报");
+          },
+          //判断播放是否完毕
+          onend: () => {
+            console.log("播报完成");
+          },
+          //恢复播放
+          onresume: () => {
+            console.log("Resume utterance");
+          },
+        },
+      })
+}
 //初始化
 const sourceInit = () => {
   console.log("初始化see");

--
Gitblit v1.8.0