Ver Fonte

日常开发

林旭祥 há 1 mês atrás
pai
commit
d2951dc469
2 ficheiros alterados com 102 adições e 238 exclusões
  1. 0 8
      src/assets/styles/func.scss
  2. 102 230
      src/views/set/deploy.vue

+ 0 - 8
src/assets/styles/func.scss

@@ -1,8 +0,0 @@
-// px数值转vh
-@function getvh($num) {
-  @return ($num / 1080 * 100vh);
-}
-// px数值转vw
-@function getvw($num) {
-  @return ($num / 1920 * 100vw);
-}

+ 102 - 230
src/views/set/deploy.vue

@@ -8,7 +8,7 @@
       height="60%"
       destroy-on-close
       fullscreen
-      :visible.sync="showPlayer"
+      :visible="showPlayer"
       :modal="false"
       :before-close="handlBeforeClose"
       custom-class="el-dialog-body"
@@ -39,7 +39,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog :key="snapTime" :title="picTitle" center fullscreen destroy-on-close :visible.sync="showSnapPics">
+    <el-dialog :key="snapTime" :title="picTitle" center fullscreen destroy-on-close :visible="showSnapPics">
       <p>
         布点图最后更新:<b> {{ snapTime }}</b>
         <!--  布点文件最后更新:<b>{{anchorUptime[camIndex+'_error'] || anchorUptime[camIndex]}}</b> -->
@@ -47,7 +47,7 @@
       </p>
       <div style="display:flex; margin-top:5px;">
         <el-image id="snapPic" :src="snapPic" style="width:100%;" class="sanPicShowDia" lazy>
-          <div slot="error" class="image-slot">
+          <div class="image-slot">
             <i class="el-icon-picture-outline" />
             <p>抱歉,布点文件生成失败,请稍后点击右侧刷新按钮重试。</p>
           </div>
@@ -64,10 +64,9 @@
     <el-container style="background: #ecf3f9;">
       <el-header class="navbar">
         <div class="nav1">
-          <div style="font-size: 20px; bold; font-weight: bold;">
-            <div @click="$router.go(-1)">返回</div>
-
-          </div>
+           <el-icon style="cursor: pointer;" :size="20" @click="$router.go(-1)">
+    <ArrowLeftBold />
+  </el-icon>
           <h3 style="font-weight:bold;">{{ examCN }}</h3>
           <div>
             <el-button type="primary" size="small" @click="submitForm('ruleForm', 0)">保存</el-button>
@@ -87,17 +86,13 @@
             size="small"
           >
             <el-collapse v-model="activeNames">
-              <el-collapse-item style="margin-left:-4px; color:#0067E1; font-size: 14px; " name="1">
-                <template slot="title">
-                  基础设置
-                  <!-- <i class="header-icon el-icon-info"></i> -->
-                </template>
+              <el-collapse-item title="基础设置" name="1">
                 <template v-for="value, item in ruleForm">
                   <template v-if="item in examFormConf['required']">
                     <template v-if="item === 'cam_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -141,18 +136,18 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
 
                         <el-input v-model="ruleForm.cam_path" clearable style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px;font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -219,8 +214,8 @@
 
                     <template v-if="item == 'cam_0_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -255,17 +250,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_0_path" style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -299,8 +294,8 @@
 
                     <template v-if="item == 'cam_face_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -335,17 +330,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_face_path" style="width:45% ;margin-right:5px;" clearable />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_face_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -414,17 +409,13 @@
                   </template>
                 </template>
               </el-collapse-item>
-              <el-collapse-item style="margin-left:-4px; color:#0067E1; font-size: 14px;">
-                <template slot="title">
-                  高级设置
-                  <!-- <i class="header-icon el-icon-info"></i> -->
-                </template>
+              <el-collapse-item title="高级设置">
                 <template v-for="value, item in ruleForm">
                   <template v-if="item in examFormConf['advanced']">
                     <template v-if="item === 'cam_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -458,18 +449,18 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
 
                         <el-input v-model="ruleForm.cam_path" clearable style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px;font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -550,8 +541,8 @@
 
                     <template v-if="item == 'cam_0_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -586,17 +577,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_0_path" style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -629,8 +620,8 @@
 
                     <template v-if="item == 'cam_face_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -665,17 +656,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_face_path" style="width:45% ;margin-right:5px;" clearable />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_face_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -743,17 +734,13 @@
                   </template>
                 </template>
               </el-collapse-item>
-              <el-collapse-item style="margin-left:-4px; color:#0067E1; font-size: 14px; ">
-                <template slot="title">
-                  保留参数
-                  <!-- <i class="header-icon el-icon-info"></i> -->
-                </template>
+              <el-collapse-item title="保留参数">
                 <template v-for="value, item in ruleForm">
                   <template v-if="item in examFormConf['reserved']">
                     <template v-if="item === 'cam_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -787,18 +774,18 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
 
                         <el-input v-model="ruleForm.cam_path" clearable style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px;font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(1, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -878,8 +865,8 @@
 
                     <template v-if="item == 'cam_0_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -914,17 +901,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_0_path" style="width:45%; margin-right:5px;" />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(2, 0, ruleForm.cam_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -957,8 +944,8 @@
 
                     <template v-if="item == 'cam_face_path'">
                       <el-form-item :key="item" :prop="item" :label="anchorLabelObj[item]">
-                        <span slot="label">
-                          {{ anchorLabelObj[item] }}
+                        <span>
+                          <!-- {{ anchorLabelObj[item] }} -->
                           <el-popover placement="right" width="width:30%" trigger="hover">
                             <div style="height:100px; font-size:12px; margin-bottom: 20px;line-height:20px;">
                               <p style="font-size:10px;">
@@ -993,17 +980,17 @@
                                 >
                               </p>
                             </div>
-                            <i slot="reference" class="el-icon-question" />
+                            <i class="el-icon-question" />
                           </el-popover>
                         </span>
                         <el-input v-model="ruleForm.cam_face_path" style="width:45% ;margin-right:5px;" clearable />
                         <span style="margin-right:4px; font-size:10px;">帧率</span>
                         <el-input v-model.number="ruleForm.cam_face_fps" style="width:9.66%;margin-right:5px;" />
-                        <el-button icon="el-icon-video-camera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
+                        <el-button icon="VideoCamera" type="primary" size="small" @click.prevent="viewCam(0, 0, ruleForm.cam_face_fps, 1)"
                           >远程布点</el-button
                         >
                         <el-button
-                          icon="el-icon-video-camera"
+                          icon="VideoCamera"
                           type="primary"
                           size="small"
                           style="margin-left:5px;"
@@ -1496,14 +1483,11 @@ export default {
         if (res.status == 200) {
           if (res.data) {
             if (res.data >= '0') {
-              // if (this.ruleForm.)
-              // this.$message.error(
-              //   '布点结束,如您已完成布点,请点刷新按钮')
-              this.$message.warning('推流结束,如您已布点成功且未检测到布点文件请点击刷新按钮');
+              this.$modal.msgWarning('推流结束,如您已布点成功且未检测到布点文件请点击刷新按钮');
               clearInterval(this.achorUrlChkId);
             }
           } else {
-            this.$message.info('正在推流,请继续布点');
+            this.$modal.msgWarning('正在推流,请继续布点');
           }
         } else {
           clearInterval(this.achorUrlChkId);
@@ -1517,14 +1501,11 @@ export default {
         if (res.status == 200) {
           if (res.data) {
             if (res.data >= '0') {
-              // if (this.ruleForm.)
-              // this.$message.error(
-              //   '布点结束,如您已完成布点,请点刷新按钮')
-              this.$message.warning('推流结束,如您矫正成功且未检测到矫正文件请点击刷新按钮');
+              this.$modal.msgWarning('推流结束,如您矫正成功且未检测到矫正文件请点击刷新按钮');
               clearInterval(this.checkCBFD);
             }
           } else {
-            this.$message.info('正在推流,请继续矫正');
+            this.$modal.msgWarning('正在推流,请继续矫正');
           }
         } else {
           clearInterval(this.checkCBFD);
@@ -1565,10 +1546,7 @@ export default {
           } else if (camIndex == 2 && !this.ruleForm.anchor_0_path) {
             this.ruleForm.anchor_0_path = anchorPath;
           }
-          this.$message({
-            message: '检测到云文件,读取成功',
-            type: 'success'
-          });
+          this.$modal.msgSuccess('检测到云文件,读取成功');
           if (this.achorUrlChkId) {
             clearInterval(this.achorUrlChkId);
           }
@@ -1580,19 +1558,13 @@ export default {
               this.checkStreamClosed();
             } else {
               clearInterval(this.achorUrlChkId);
-              this.$message({
-                message: '未检测到云文件,读取失败',
-                type: 'error'
-              });
+              this.$modal.msgError('未检测到云文件,读取失败');
             }
           } else {
             if (chType) {
               this.checkCaliClosed();
             } else {
-              this.$message({
-                message: '矫正未完成,读取失败',
-                type: 'error'
-              });
+              this.$modal.msgError('矫正未完成,读取失败');
             }
           }
         });
@@ -1600,10 +1572,7 @@ export default {
 
     async viewCam(cindex, cali = 0, cam_fps = 0, webrtc = 0) {
       if (!cam_fps) {
-        this.$message({
-          message: '请输入摄像头帧率',
-          type: 'error'
-        });
+        this.$modal.msgError('请输入摄像头帧率');
         return;
       }
       if (cindex == 0) {
@@ -1614,27 +1583,18 @@ export default {
         this.viewCamurl = this.ruleForm.cam_0_path;
       }
       if (!this.viewCamurl) {
-        this.$message({
-          message: '请输入摄像头地址',
-          type: 'error'
-        });
+        this.$modal.msgError('请输入摄像头地址');
         return;
       }
       if (webrtc == 2 && !this.validateIP(this.playHost)) {
-        this.$message({
-          message: '请输入正确局域网srs IP',
-          type: 'error'
-        });
+        this.$modal.msgError('请输入正确局域网srs IP');
         return;
       }
       this.camIndex = cindex;
       let src_uri = this.viewCamurl;
       if (cali == 1) {
         if (!this.ruleForm.cam_param_path) {
-          this.$message({
-            message: '请先生成矫正文件',
-            type: 'error'
-          });
+          this.$modal.msgError('请先生成矫正文件');
           return;
         }
       }
@@ -1681,7 +1641,7 @@ export default {
       let params = { exam_id: this.examId, src_uri: src_uri, dest_uri: dest_uri, school_id: this.schoolId, cam_fps, cali };
       if (this.ruleForm.flag_calibrate && this.camIndex == 1 && cali != 2) {
         if (!this.ruleForm.cam_param_path) {
-          this.$message.warning('您已开启矫正,请配置矫正文件');
+          this.$modal.msgWarning('您已开启矫正,请配置矫正文件');
           return;
         }
         params['cam_param_path'] = this.ruleForm.cam_param_path;
@@ -1795,20 +1755,14 @@ export default {
         console.log(res, res.data, 'checkCaliRes');
         if (res.data.error_message) {
           if (res.data.error_code == '0') {
-            this.$message({
-              message: '矫正已完成',
-              type: 'success'
-            });
+            this.$modal.msgSuccess('矫正已完成');
             // this.ruleForm.cam_param_path = "settings/cam_param_files/"+this.examId+"_"+this.camIndex+".yml"
             if (!this.ruleForm.cam_param_path) {
               this.ruleForm.cam_param_path = res.data.cam_param_path;
             }
             this.caliFlag = false;
           } else {
-            this.$message({
-              message: '矫正失败,原因:' + res.data.error_message,
-              type: 'error'
-            });
+            this.$modal.msgError(`矫正失败,原因:${res.data.error_message}`);
           }
           if (isLocal >= 1) {
             clearInterval(this.checkCBFD);
@@ -1818,14 +1772,11 @@ export default {
           // }
         } else {
           if (isLocal == 1) {
-            this.$message.info('矫正未完成,检测中');
+            this.$modal.msgWarning('矫正未完成,检测中');
           } else if (isLocal == 2) {
-            this.$message.info('未找到矫正记录');
+            this.$modal.msgWarning('未找到矫正记录');
           } else {
-            this.$message({
-              message: '请将棋盘放到摄像头前进行矫正',
-              type: 'info'
-            });
+            this.$modal.msgWarning('请将棋盘放到摄像头前进行矫正');
           }
         }
       });
@@ -1838,23 +1789,14 @@ export default {
         .then((res) => {
           console.log('ressts', res);
           if (res == -1) {
-            this.$message({
-              message: '开启推流中,请稍等',
-              type: 'info'
-            });
+            this.$modal.msgWarning('开启推流中,请稍等');
           } else if (res == '推流成功') {
-            this.$message({
-              message: '推流成功',
-              type: 'success'
-            });
+            this.$modal.msgSuccess('推流成功');
             if (this.checkPSTO) {
               clearInterval(this.checkPSTO);
             }
           } else {
-            this.$message({
-              message: '推流失败,原因:' + res,
-              type: 'error'
-            });
+            this.$modal.msgError(`推流失败,原因:${res}`);
           }
         });
     },
@@ -1958,7 +1900,7 @@ export default {
         params['anchor_path'] = this.ruleForm.anchor_0_path;
       }
       // if (!params['cam_path'] || !params['anchor_path']) {
-      //   this.$message.error("请先配置摄像头地址和布点文件")
+      //   this.$modal.msgError("请先配置摄像头地址和布点文件");
       //   return
       // }
       this.$http.deploy.getExamSnapShot(params).then((res) => {
@@ -1987,18 +1929,18 @@ export default {
       if (camIndex == 0) {
         this.picTitle = this.examCN + '人脸区布点图';
         if (!this.ruleForm.cam_face_path || !this.ruleForm.anchor_face_path) {
-          this.$message.error('请配置人脸摄像头和人脸布点文件');
+          this.$modal.msgError('请配置人脸摄像头和人脸布点文件');
           return;
         }
       } else if (camIndex == 1) {
         if (!this.ruleForm.cam_path || !this.ruleForm.anchor_path) {
-          this.$message.error('请配置测试摄像头和测试布点文件');
+          this.$modal.msgError('请配置测试摄像头和测试布点文件');
           return;
         }
         this.picTitle = this.examCN + '测试区布点图';
       } else if (camIndex == 2) {
         if (!this.ruleForm.cam_0_path || !this.ruleForm.anchor_0_path) {
-          this.$message.error('请配置辅助摄像头和辅助布点文件');
+          this.$modal.msgError('请配置辅助摄像头和辅助布点文件');
           return;
         }
         this.picTitle = this.examCN + '辅助区布点图';
@@ -2030,7 +1972,7 @@ export default {
       setTimeout(() => {
         iframe.remove();
       }, 5000);
-      // this.$message.success('文件下载成功')
+      // this.$modal.msgSuccess('文件下载成功');
     },
 
     checkPermission(fileUrl, fname) {
@@ -2073,8 +2015,7 @@ export default {
             uri,
             filePath,
             function (entry) {
-              // alert('Successfully downloaded file, full path is ' + entry.fullPath)
-              this.$message.success('文件存储于:' + entry.fullPath);
+              this.$modal.msgSuccess(`文件存储于:${entry.fullPath}`);
             },
             function (error) {
               alert('error' + error.code);
@@ -2181,10 +2122,7 @@ export default {
       let rawImg = this.rawImags[row];
       let jFile = this.jFiles[row];
       if (!jFile) {
-        this.$message({
-          message: '链接获取失败,建议在预览页面查看矫正文件是否上传',
-          type: 'error'
-        });
+        this.$modal.msgError('链接获取失败,建议在预览页面查看矫正文件是否上传');
         return;
       }
       let files = [
@@ -2207,16 +2145,10 @@ export default {
     downCamParamFile() {
       let jfile = this.jFiles[1];
       if (!jfile) {
-        this.$message({
-          message: '请先预览布点文件再下载',
-          type: 'error'
-        });
+        this.$modal.msgError('请先预览布点文件再下载');
         return;
       } else if (!this.camparamUptime[1]) {
-        this.$message({
-          message: '该摄像头未矫正',
-          type: 'error'
-        });
+        this.$modal.msgError('该摄像头未矫正');
         return;
       }
       let cpfile = jfile.substring(0, jfile.length - 4) + 'yml';
@@ -2248,7 +2180,7 @@ export default {
           if (up_type == 'json') {
             let ach_err = res.data.anchor_uptime[cindex + '_error'];
             if (ach_err == '文件校验中,请稍等') {
-              this.$message.info(ach_err);
+              this.$modal.msgWarning(ach_err);
             } else {
               if (loading) {
                 setTimeout(() => {
@@ -2258,16 +2190,16 @@ export default {
               }
               if (this.checkUpFID) clearInterval(this.checkUpFID);
               if (ach_err) {
-                this.$message.error('布点文件校验失败,原因:' + ach_err);
+                this.$modal.msgError(`布点文件校验失败,原因:${ach_err}`);
               } else {
-                this.$message.success('布点文件上传成功!');
+                this.$modal.msgSuccess('布点文件上传成功!');
                 this.setFormPath(cindex, up_type);
               }
             }
           } else if (up_type == 'yml') {
             let camP_err = res.data.camparam_uptime[cindex + '_error'];
             if (camP_err == '上传文件校验中,请稍等') {
-              this.$message.info(ach_err);
+              this.$modal.msgWarning(ach_err);
             } else {
               if (loading) {
                 setTimeout(() => {
@@ -2277,10 +2209,10 @@ export default {
               }
               if (this.checkUpFID) clearInterval(this.checkUpFID);
               if (camP_err) {
-                this.$message.error('矫正文件校验失败,原因:' + camP_err);
+                this.$modal.msgError(`矫正文件校验失败,原因:${camP_err}`);
               } else {
                 clearInterval(this.checkUpFID);
-                this.$message.success('矫正文件上传成功!');
+                this.$modal.msgSuccess('矫正文件上传成功!');
                 this.setFormPath(cindex, up_type);
               }
             }
@@ -2324,10 +2256,7 @@ export default {
       await this.$http.deploy.getExamSettings({ school_id: this.schoolId, exam_id: this.examId }).then((res) => {
         // this.ruleForm = Object.assign({}, res.data)
         if (res.status != 200) {
-          this.$message({
-            message: res.message,
-            type: 'error'
-          });
+          this.$modal.msgError(res.message);
           return;
         }
         this.uutoken = res.uutoken;
@@ -2374,15 +2303,9 @@ export default {
           this.$http.deploy.upExamSettings({ school_id: this.schoolId, exam_id: this.examId, js_data: tmpFdata, restart }).then((res) => {
             this.rawFormData = tmpFdata;
             if (res.message == 'ok') {
-              this.$message({
-                message: '更新成功',
-                type: 'success'
-              });
+              this.$modal.msgSuccess('更新成功');
             } else {
-              this.$message({
-                message: res.message,
-                type: 'error'
-              });
+              this.$modal.msgError(res.message);
             }
             console.log(res);
           });
@@ -2443,7 +2366,7 @@ export default {
 
     saveAnchor() {
       if (!this.names) {
-        this.$message({ message: '请进入布点或加载布点文件', type: 'error' });
+        this.$modal.msgError('请进入布点或加载布点文件');
         return;
       }
       let keypoints = [];
@@ -2494,10 +2417,7 @@ export default {
 
     downAnchorFile(url, _type = 'load', upType = 'anchor_config', cindex = 1) {
       this.upSnapShotInfos(0, upType);
-      this.$message({
-        message: '正在获取文件,请稍等',
-        type: 'warning'
-      });
+      this.$modal.msgWarning('正在获取文件,请稍等');
       setTimeout(() => {
         axios
           .get(url)
@@ -2512,10 +2432,7 @@ export default {
             this.btnDis = false;
             if (anchorErr) {
               clearInterval(this.lstAnchorIvalId);
-              this.$message({
-                message: anchorErr + ',无法获取文件',
-                type: 'error'
-              });
+              this.$modal.msgError(`${anchorErr},无法获取文件`);
               return;
             }
             if (this.lstAnchorIvalId) {
@@ -2523,10 +2440,7 @@ export default {
             }
             if (_type == 'load') {
               this.stdAnchObj = response.data;
-              this.$message({
-                message: '上次布点加载成功。',
-                type: 'success'
-              });
+              this.$modal.msgSuccess('上次布点加载成功。');
               this.runStartAnchor(this.stdAnchObj.names, this.stdAnchObj.connects, this.stdAnchObj.keypoints, this.stdAnchObj.imagesize);
             } else if (_type == 'down') {
               this.downloadFile(url);
@@ -2542,10 +2456,7 @@ export default {
                   clearInterval(this.lstAnchorIvalId);
                   this.btnDis = false;
                 }
-                this.$message({
-                  message: anchorErr + ',无法获取上次布点',
-                  type: 'error'
-                });
+                this.$modal.msgError(`${anchorErr},无法获取上次布点`);
                 return;
               }
               // this.lstAnchorIvalId = setInterval(
@@ -2553,10 +2464,7 @@ export default {
             } else {
               let anchorErr = this.camparamUptime['error'] || this.camparamUptime[this.camIndex + '_error'];
               if (anchorErr) {
-                this.$message({
-                  message: anchorErr + ',无法获取矫正文件',
-                  type: 'error'
-                });
+                this.$modal.msgError(`${anchorErr},无法获取矫正文件`);
                 return;
               }
             }
@@ -2844,17 +2752,11 @@ export default {
       this.$copyText(content).then(
         (e) => {
           this.ruleForm[item] = content;
-          this.$message({
-            message: '复制成功',
-            type: 'success'
-          });
+          this.$modal.msgSuccess('复制成功');
           // this.showCamUrl = false
         },
         function (e) {
-          this.$message({
-            message: '复制失败,请手动复制',
-            type: 'error'
-          });
+          this.$modal.msgError('复制失败,请手动复制');
         }
       );
     },
@@ -3063,37 +2965,8 @@ export default {
 };
 </script>
 
-<style type="text/css">
-.el-dialog__body {
-  padding: 20px !important;
-  max-height: 99vh;
-}
-.el-form-item__label {
-  font-size: 12px;
-}
-
-.el-form-item--small.el-form-item {
-  margin-bottom: 12px;
-}
-.el-collapse {
-  border-top: 1px solid #ebeef5;
-  border-bottom: 0;
-}
-</style>
 <style lang="scss" scoped>
-@import '@/assets/styles/func.scss';
 
-.dashboard {
-  &-container {
-    min-height: calc(100vh - 80px);
-    padding: 24px;
-    background: #f3f6fa;
-  }
-  &-text {
-    font-size: 30px;
-    line-height: 46px;
-  }
-}
 .input45 {
   width: 40%;
   margin-right: 5px;
@@ -3124,14 +2997,13 @@ export default {
 }
 
 .el-header {
-  // height: getvh(80);
-  margin-bottom: 5px;
+
 }
 
 .nav1 {
   display: flex;
   justify-content: space-between;
-  padding: 15px 0;
+  align-items: center;
 }
 
 .navbar {