Selaa lähdekoodia

Merge branch 'dev' of http://git.trops-global.com/linxuxiang/tropsCode into dev

linxuxiang 3 kuukautta sitten
vanhempi
commit
84d8437ce7

BIN
public/static/audio/longRun.mp3


+ 1 - 1
src/components/MultipleItem/index.vue

@@ -234,7 +234,7 @@ const getFaceConfirmOnly = (data?: any) => {
  * 重新识别
 */
 const getRetestFace = () => {
-  if (props.examState == 42) {
+  if (props.examState == 42 || examState.value == 0) {
     return false;
   }
   proxy?.$modal.confirm("确定重新识别吗?").then(() => {

+ 2 - 1
src/utils/speech.ts

@@ -97,7 +97,8 @@ export const speckText = (text: any) => {
     { lable: '3', value: '3.mp3' },
     { lable: '2', value: '2.mp3' },
     { lable: '1', value: '1.mp3' },
-    { lable: '各就位,预备!', value: 'runNew.mp3' },
+    { lable: '各就位,预备!', value: 'runNew.mp3' },//短跑口令
+    { lable: '各就位!', value: 'longRun.mp3' },//长跑口令
     { lable: '跑', value: 'run.mp3' },
     { lable: '哨声', value: 'shaosheng.mp3' },
     { lable: '哨声2', value: 'shaosheng2.mp3' }

+ 6 - 4
src/views/sunshineRun/index.vue

@@ -272,10 +272,11 @@ const initSunshineRun = () => {
       let myIndex = testList.value.findIndex((item: any) => {
         return item.student_id == e.data.student_id;
       })
-      if (myIndex != undefined) {
-        testList.value.splice(myIndex, 1);
+      if (myIndex != -1) {
+        //如果已经存在就删除
+        testList.value.splice(myIndex, 1);//删除数据
       }
-      testList.value.unshift(e.data);
+      testList.value.unshift(e.data);//插入数据
     }
   });
 };
@@ -686,10 +687,11 @@ onBeforeUnmount(() => {
                 font-family: 'Saira-ExtraBold';
                 // font-size: 1.4vw;
                 font-size: 1.8vw;
+                font-style: italic;
 
                 .score {
                   color: #ffffff;
-                  font-style: italic;
+                  
                   display: inline-block;
                 }
 

+ 4 - 8
src/views/train/multiple.vue

@@ -475,14 +475,10 @@ const returnData = (data: any) => {
     let flag = false;
     //只监听人脸识别的区
     let newList = testList.value;
-    for (let i = 0; i < newList.length; i++) {
-      if (newList[i] && newList[i].examState == 0) {
-        flag = true;
-      } else {
-        return false;
-      }
-    }
-    if (flag) {
+    let myList = newList.filter((item: any) => {
+      return item.examState == 0;
+    })
+    if (myList.length == newList.length) {
       examState.value = 0;
       getExit();
     }

+ 17 - 8
src/views/train/run.vue

@@ -20,7 +20,8 @@
                     <div class="left">
                       <div class="track">{{ (index + 1) + (8 * indexs) }}</div>
                       <div class="userInfo" @click="getChooseStudent(item.track)">
-                        <div class="pic pic2" v-if="item.student_id"> <img :src="item.face_pic || item.logo_url" /></div>
+                        <div class="pic pic2" v-if="item.student_id"> <img :src="item.face_pic || item.logo_url" />
+                        </div>
                         <div class="pic" v-else>
                           <img src="@/assets/images/test/profilePicture.png" />
                         </div>
@@ -79,7 +80,7 @@
                     {{ item.timeStr || "-" }}
                   </div>
                   <div v-if="isBackRun && item.student_id" class="turns">往返次数:<span><i>{{ item.turns || "0"
-                  }}</i></span>
+                        }}</i></span>
                   </div>
                 </div>
                 <div class="menuBtn" v-if="(examState == 41 || examState == 43) && !item.student_id"
@@ -394,12 +395,20 @@ const getStartOneTest = () => {
   //停止播报;
   speckCancel()
   //和工作站搭配时差版
-  //提前发送开始的时间
-  let advanceTime = 1000;
-  //各就位+枪声是7秒左右,5.26秒是播枪声
-  let myTime = 7010;
-  //播放音频和遮罩
-  let myText = "各就位,预备!";
+  let advanceTime = 0; //提前发送开始的时间
+  let myTime = 0; //枪声时间
+  let myText = ""; //提示框内容
+  if (isLongRun.value) {
+    //音频时长5180毫秒,4120毫秒是播枪声
+    advanceTime = 0;
+    myTime = 4120;
+    myText = "各就位!";
+  } else {
+    //音频时长7010毫秒,5260毫秒是播枪声
+    advanceTime = 1000;
+    myTime = 5260;
+    myText = "各就位,预备!";
+  }
   let loading = ElLoading.service({ text: myText, background: 'rgba(0, 0, 0, 0.8)', customClass: `sports ${parameter.value.project}` });
   speckText(myText);
   setTimeout(() => {