From 1995e710dcf70e635c4edaa8173f8b66cd67d499 Mon Sep 17 00:00:00 2001
From: 黄何裕 <1053952480@qq.com>
Date: 星期二, 30 七月 2024 14:05:06 +0800
Subject: [PATCH] 样式优化

---
 src/views/system/work-order/threshold/index.vue |  915 ++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 584 insertions(+), 331 deletions(-)

diff --git a/src/views/system/work-order/threshold/index.vue b/src/views/system/work-order/threshold/index.vue
index ddbbc4e..848a2b4 100644
--- a/src/views/system/work-order/threshold/index.vue
+++ b/src/views/system/work-order/threshold/index.vue
@@ -1,174 +1,313 @@
 <template>
   <div class="app-container">
-<!--    <el-row :gutter="10" class="mb8">-->
-<!--      <el-col :span="1.5">-->
-<!--        <el-button-->
-<!--          type="primary"-->
-<!--          plain-->
-<!--          icon="el-icon-plus"-->
-<!--          size="mini"-->
-<!--          @click="handleAdd"-->
-<!--          v-hasPermi="['ycl:threshold:add']"-->
-<!--        >鏂板-->
-<!--        </el-button>-->
-<!--      </el-col>-->
-<!--    </el-row>-->
-
-    <el-table v-loading="loading" :data="thresholdList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center"/>
-      <el-table-column label="璁惧绫诲瀷" align="center" prop="monitorType">
-        <template slot-scope="scope">
-          <span v-show="scope.row['monitorType'] === 'face'">浜鸿劯</span>
-          <span v-show="scope.row['monitorType'] === 'car'">杞﹁締</span>
-          <span v-show="scope.row['monitorType'] === 'video'">瑙嗛</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="宸ュ崟闃堝��" align="center" prop="indicator">
-        <template slot-scope="scope">
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">鍥惧儚璐ㄩ噺</div>
-            <div class="table-row-item">{{ scope.row.imageQuality }}</div>
+    <!--    <el-row :gutter="10" class="mb8">-->
+    <!--      <el-col :span="1.5">-->
+    <!--        <el-button-->
+    <!--          type="primary"-->
+    <!--          plain-->
+    <!--          icon="el-icon-plus"-->
+    <!--          size="mini"-->
+    <!--          @click="handleAdd"-->
+    <!--          v-hasPermi="['ycl:threshold:add']"-->
+    <!--        >鏂板-->
+    <!--        </el-button>-->
+    <!--      </el-col>-->
+    <!--    </el-row>-->
+    <el-row>
+      <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="8">
+        <el-card style="margin-bottom: 20px; height: 450px; margin-right: 20px">
+          <div style="display: flex; justify-content: space-between">
+            <div class="header鈥攖ext">瑙嗛</div>
+            <div>
+              <el-button
+                size="mini"
+                type="text"
+                icon="el-icon-edit"
+                v-hasPermi="['ycl:threshold:edit']"
+                @click="showEdit('video')"
+                v-if="!ifEditVideo"
+                >淇敼
+              </el-button>
+              <el-button
+                size="mini"
+                type="primary"
+                @click="saveEdit('video')"
+                v-if="ifEditVideo"
+                >淇濆瓨
+              </el-button>
+            </div>
           </div>
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">瑙嗛璐ㄩ噺</div>
-            <div class="table-row-item">{{ scope.row.videoQuality }}</div>
+          <div
+            style="
+              margin: 20px;
+              display: flex;
+              width: 400px;
+              justify-content: space-between;
+            "
+          >
+            <div>
+              <div
+                style="
+                  font-size: small;
+                  display: flex;
+                  flex-direction: row-reverse;
+                  width: 192px;
+                "
+              >
+                宸ュ崟闃堝��
+              </div>
+              <div>
+                <el-form label-width="140px">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.video"
+                    :label="item.name + '锛�'"
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="videoList[index].value"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditVideo"
+                    ></el-input>
+                    <span v-else>{{ item.value }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </div>
+            <div>
+              <span style="font-size: small">涓嬪彂闃堝��</span>
+              <div>
+                <el-form ref="form">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.video"
+                    label=""
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="videoList[index].valueAuto"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditVideo"
+                    ></el-input>
+                    <span v-else>{{ item.valueAuto }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </div>
           </div>
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">鏍囨敞鍑嗙‘鐜�</div>
-            <div class="table-row-item">{{ scope.row.annotationAccuracy }}</div>
+        </el-card>
+      </el-col>
+      <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="8">
+        <el-card style="margin-bottom: 20px; height: 450px; margin-right: 20px">
+          <div style="display: flex; justify-content: space-between">
+            <div class="header鈥攖ext">浜鸿劯</div>
+            <div>
+              <el-button
+                size="mini"
+                type="text"
+                icon="el-icon-edit"
+                v-hasPermi="['ycl:threshold:edit']"
+                @click="showEdit('face')"
+                v-if="!ifEditFace"
+                >淇敼
+              </el-button>
+              <el-button
+                size="mini"
+                type="primary"
+                @click="saveEdit('face')"
+                v-if="ifEditFace"
+                >淇濆瓨
+              </el-button>
+            </div>
           </div>
-        </template>
-      </el-table-column>
-      <el-table-column label="涓嬪彂闃堝��" align="center" prop="indicator">
-        <template slot-scope="scope">
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">鍥惧儚璐ㄩ噺</div>
-            <div class="table-row-item">{{ scope.row.imageQualityAuto }}</div>
+          <div
+            style="
+              margin: 20px;
+              display: flex;
+              width: 400px;
+              justify-content: space-between;
+            "
+          >
+            <div>
+              <div
+                style="
+                  font-size: small;
+                  display: flex;
+                  flex-direction: row-reverse;
+                  width: 190px;
+                "
+              >
+                宸ュ崟闃堝��
+              </div>
+              <div>
+                <el-form label-width="140px">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.face"
+                    :label="item.name + '锛�'"
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="faceList[index].value"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditFace"
+                    ></el-input>
+                    <span v-else>{{ item.value }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </div>
+            <div>
+              <span style="font-size: small">涓嬪彂闃堝��</span>
+              <div>
+                <el-form ref="form">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.face"
+                    label=""
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="faceList[index].valueAuto"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditFace"
+                    ></el-input>
+                    <span v-else>{{ item.valueAuto }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                    </el-form-item
+                  >
+                </el-form>
+              </div>
+            </div>
           </div>
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">瑙嗛璐ㄩ噺</div>
-            <div class="table-row-item">{{ scope.row.videoQualityAuto }}</div>
+        </el-card></el-col
+      >
+      <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="8">
+        <el-card style="margin-bottom: 20px; height: 450px; margin-right: 20px">
+          <div style="display: flex; justify-content: space-between">
+            <div class="header鈥攖ext">杞﹁締</div>
+            <div>
+              <el-button
+                size="mini"
+                type="text"
+                icon="el-icon-edit"
+                v-hasPermi="['ycl:threshold:edit']"
+                @click="showEdit('car')"
+                v-if="!ifEditCar"
+                >淇敼
+              </el-button>
+              <el-button
+                size="mini"
+                type="primary"
+                @click="saveEdit('car')"
+                v-if="ifEditCar"
+                >淇濆瓨
+              </el-button>
+            </div>
           </div>
-          <div class="table-row" style="display: flex;flex-direction: row">
-            <div class="table-row-item">鏍囨敞鍑嗙‘鐜�</div>
-            <div class="table-row-item">{{ scope.row.annotationAccuracyAuto }}</div>
+          <div
+            style="
+              margin: 20px;
+              display: flex;
+              width: 400px;
+              justify-content: space-between;
+            "
+          >
+            <div>
+              <div
+                style="
+                  font-size: small;
+                  display: flex;
+                  flex-direction: row-reverse;
+                  width: 232px;
+                "
+              >
+                宸ュ崟闃堝��
+              </div>
+              <div>
+                <el-form ref="form" label-width="180px">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.car"
+                    :label="item.name + '锛�'"
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="carList[index].value"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditCar"
+                    ></el-input>
+                    <span v-else>{{ item.value }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </div>
+            <div>
+              <span style="font-size: small">涓嬪彂闃堝��</span>
+              <div>
+                <el-form ref="form">
+                  <el-form-item
+                    v-for="(item, index) in thresholdList.car"
+                    label=""
+                    :key="item.id"
+                  >
+                    <el-input
+                      v-model="carList[index].valueAuto"
+                      size="mini"
+                      style="width: 100px"
+                      :type="item.countType=='int'?'number':''"
+                      v-if="ifEditCar"
+                    ></el-input>
+                    <span v-else>{{ item.valueAuto }}</span>
+                    <span v-if="item.countType=='percent'">%</span>
+                    <span v-if="item.countType=='second'">绉�</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </div>
           </div>
-        </template>
-      </el-table-column>
-      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            v-hasPermi="['ycl:threshold:edit']"
-            @click="updateWho(scope.row)"
-          >淇敼
-          </el-button>
-<!--          <el-button-->
-<!--            size="mini"-->
-<!--            type="text"-->
-<!--            icon="el-icon-delete"-->
-<!--            @click="handleDelete(scope.row)"-->
-<!--            v-hasPermi="['ycl:threshold:remove']"-->
-<!--          >鍒犻櫎-->
-<!--          </el-button>-->
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
-
-    <!-- 浜鸿劯闃堝�� -->
-    <el-dialog title="淇敼浜鸿劯宸ュ崟闃堝��" :visible.sync="faceOpen" width="400px" append-to-body>
-      <el-form ref="faceForm" :model="faceForm" :rules="rules" label-width="150px">
-        <el-form-item label="璁惧绫诲瀷" prop="monitorType">
-          <el-select v-model="faceForm.monitorType" placeholder="璇烽�夋嫨璁惧绫诲瀷" @change="handleModeNameChange">
-            <el-option label="浜鸿劯" value="face"/>
-            <el-option label="杞﹁締" value="car"/>
-            <el-option label="瑙嗛" value="video"/>
-          </el-select>
-        </el-form-item>
-
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="editFace">纭� 瀹�</el-button>
-        <el-button @click="cancelFace">鍙� 娑�</el-button>
-      </div>
-    </el-dialog>
-
-    <!-- 杞﹁締闃堝�� -->
-    <el-dialog title="淇敼杞﹁締宸ュ崟闃堝��" :visible.sync="faceOpen" width="400px" append-to-body>
-      <el-form ref="faceForm" :model="faceForm" :rules="rules" label-width="150px">
-        <el-form-item label="璁惧绫诲瀷" prop="monitorType">
-          <el-select v-model="faceForm.monitorType" placeholder="璇烽�夋嫨璁惧绫诲瀷" @change="handleModeNameChange">
-            <el-option label="浜鸿劯" value="face"/>
-            <el-option label="杞﹁締" value="car"/>
-            <el-option label="瑙嗛" value="video"/>
-          </el-select>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="editCar">纭� 瀹�</el-button>
-        <el-button @click="cancelCar">鍙� 娑�</el-button>
-      </div>
-    </el-dialog>
-
-    <!-- 瑙嗛闃堝�� -->
-    <el-dialog title="淇敼瑙嗛宸ュ崟闃堝��" :visible.sync="videoOpen" width="500px" append-to-body>
-      <el-form ref="videoForm" :model="videoForm" :rules="rules" label-width="100px">
-        <el-form-item label="璁惧绫诲瀷" prop="monitorType">
-          <el-select v-model="videoForm.monitorType" disabled placeholder="璇烽�夋嫨璁惧绫诲瀷" @change="handleModeNameChange">
-            <el-option label="浜鸿劯" value="face"/>
-            <el-option label="杞﹁締" value="car"/>
-            <el-option label="瑙嗛" value="video"/>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="鍥惧儚璐ㄩ噺" prop="imageQuality" label-width="100px">
-          <el-select v-model="videoForm.imageQuality" placeholder="宸ュ崟闃堝��" @change="handleModeNameChange">
-            <el-option :key="dict.value" :label="dict.value" v-for="dict in dict.type.image_qualify"/>
-          </el-select>
-          <el-select v-model="videoForm.imageQualityAuto" placeholder="涓嬪彂闃堝��" @change="handleModeNameChange">
-            <el-option :key="dict.value" :label="dict.value" v-for="dict in dict.type.image_qualify"/>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="瑙嗛璐ㄩ噺" prop="videoQuality" label-width="100px">
-          <el-select v-model="videoForm.videoQuality" placeholder="宸ュ崟闃堝��" @change="handleModeNameChange">
-            <el-option :key="dict.value" :label="dict.value" v-for="dict in dict.type.video_qualify"/>
-          </el-select>
-          <el-select v-model="videoForm.videoQualityAuto" placeholder="涓嬪彂闃堝��" @change="handleModeNameChange">
-            <el-option :key="dict.value" :label="dict.value" v-for="dict in dict.type.video_qualify"/>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="鏍囨敞鍑嗙‘鐜�" prop="annotationAccuracy" label-width="100px">
-          <el-input v-model="videoForm.annotationAccuracy" type="number" size="small" placeholder="宸ュ崟闃堝��"></el-input>
-          <el-input v-model="videoForm.annotationAccuracy" type="number" size="small" placeholder="涓嬪彂闃堝��"></el-input>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="editVideo">纭� 瀹�</el-button>
-        <el-button @click="cancelVideo">鍙� 娑�</el-button>
-      </div>
-    </el-dialog>
-
+        </el-card></el-col
+      >
+    </el-row>
   </div>
 </template>
 
 <script>
-import { listThreshold, getThreshold, editVideo } from '@/api/platform/threshold'
-import { editCar, editFace, getCar, getFace, getVideo } from '../../../../api/platform/threshold'
+import {
+  listThreshold,
+  getThreshold,
+  updateThreshold,
+} from "@/api/platform/threshold";
+import {
+  editCar,
+  editFace,
+  getCar,
+  getFace,
+  getVideo,
+} from "../../../../api/platform/threshold";
 
 export default {
-  dicts: ['image_qualify', 'video_qualify'],
-  name: 'Threshold',
+  dicts: ["image_qualify", "video_qualify"],
+  name: "Threshold",
   data() {
     return {
+      ifEditVideo: false,
+      ifEditFace: false,
+      ifEditCar: false,
       indicators: [],
       // 閬僵灞�
       loading: true,
@@ -183,106 +322,203 @@
       // 鎬绘潯鏁�
       total: 0,
       // 杩愮淮闃堝�艰〃鏍兼暟鎹�
-      thresholdList: [],
+      thresholdList: {},
+      videoList: [],
+      faceList: [],
+      carList: [],
       // 寮瑰嚭灞傛爣棰�
-      title: '',
+      title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
       videoOpen: false,
       faceOpen: false,
+      carOpen: false,
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
         pageSize: 10,
-        monitorType: null
+        monitorType: null,
       },
       // 琛ㄥ崟鍙傛暟
       videoForm: {},
       carForm: {},
       faceForm: {},
       // 琛ㄥ崟鏍¢獙
+      faceRules: {
+        monitorType: [
+          { required: true, message: "璁惧绫诲瀷涓嶈兘涓虹┖", trigger: "change" },
+        ],
+        captureNum: [
+          { required: true, message: "璇峰~鍐欐姄鎷嶉噺", trigger: "blur" },
+        ],
+        timelyRate: [
+          { required: true, message: "璇峰~鍐欏強鏃剁巼", trigger: "blur" },
+        ],
+        delayAmount: [
+          { required: true, message: "璇峰~鍐欏欢杩熼噺", trigger: "blur" },
+        ],
+        deviceActiveRate: [
+          { required: true, message: "璇峰~鍐欒澶囨椿璺冪巼", trigger: "blur" },
+        ],
+        timeAccuracy: [
+          { required: true, message: "璇峰~鍐欐椂閽熷噯纭巼", trigger: "blur" },
+        ],
+        timelyCapture: [
+          { required: true, message: "璇峰~鍐欐姄鎷嶅強鏃剁巼", trigger: "blur" },
+        ],
+      },
+      carRules: {
+        monitorType: [
+          { required: true, message: "璁惧绫诲瀷涓嶈兘涓虹┖", trigger: "change" },
+        ],
+        passCarNum: [
+          { required: true, message: "璇峰~鍐欒繃杞︽暟鎹噺", trigger: "blur" },
+        ],
+        passCarMissRate: [
+          { required: true, message: "璇峰~鍐欒繃杞︾己澶辩巼", trigger: "blur" },
+        ],
+        passCarEffectiveNum: [
+          { required: true, message: "璇峰~鍐欐湁鏁堣繃杞︽暟鎹噺", trigger: "blur" },
+        ],
+        timelyCapture: [
+          { required: true, message: "璇峰~鍐欐姄鎷嶅強鏃剁巼", trigger: "blur" },
+        ],
+        deviceActiveRate: [
+          { required: true, message: "璇峰~鍐欒澶囨椿璺冪巼", trigger: "blur" },
+        ],
+        timeAccuracy: [
+          { required: true, message: "璇峰~鍐欐椂閽熷噯纭巼", trigger: "blur" },
+        ],
+      },
       rules: {
         monitorType: [
-          { required: true, message: '璁惧绫诲瀷锛�1浜鸿劯 2杞﹁締 3瑙嗛涓嶈兘涓虹┖', trigger: 'change' }
+          {
+            required: true,
+            message: "璁惧绫诲瀷锛�1浜鸿劯 2杞﹁締 3瑙嗛涓嶈兘涓虹┖",
+            trigger: "change",
+          },
         ],
         videoQuality: [
-          { required: true, message: '璇烽�夋嫨瑙嗛璐ㄩ噺闃堝��', trigger: 'change' }
+          { required: true, message: "璇烽�夋嫨瑙嗛璐ㄩ噺闃堝��", trigger: "change" },
         ],
         imageQuality: [
-          { required: true, message: '璇烽�夋嫨鍥惧儚璐ㄩ噺闃堝��', trigger: 'change' }
+          { required: true, message: "璇烽�夋嫨鍥惧儚璐ㄩ噺闃堝��", trigger: "change" },
         ],
         annotationAccuracy: [
-          { required: true, message: '璇峰~鍐欐爣娉ㄥ噯纭巼闃堝��', trigger: 'blur' }
+          { required: true, message: "璇峰~鍐欐爣娉ㄥ噯纭巼闃堝��", trigger: "blur" },
         ],
-      }
-    }
+      },
+    };
   },
   created() {
-    this.getList()
+    this.getList();
   },
   methods: {
+    showEdit(value) {
+      if (value == "video") {
+        this.videoList = JSON.parse(JSON.stringify(this.thresholdList.video));
+        this.ifEditVideo = true;
+      }
+      if (value == "face") {
+        this.faceList = JSON.parse(JSON.stringify(this.thresholdList.face));
+        this.ifEditFace = true;
+      }
+      if (value == "car") {
+        this.carList = JSON.parse(JSON.stringify(this.thresholdList.car));
+        this.ifEditCar = true;
+      }
+    },
+    saveEdit(value) {
+      let data = []
+      if (value == "video") {
+        data = this.videoList;
+        this.ifEditVideo = false;
+      }
+      if (value == "face") {
+        data = this.faceList;
+        this.ifEditFace = false;
+      }
+      if (value == "car") {
+        data = this.carList;
+        this.ifEditCar = false;
+      }
+      updateThreshold(data).then((response) => {
+        this.$modal.msgSuccess("淇敼鎴愬姛");
+        this.getList();
+      });
+    },
+    showContent(row) {
+      if (row.monitorType === "car") {
+      }
+    },
     editVideo() {
-      this.$refs['videoForm'].validate(validate => {
-        if (validate) {
-          editVideo(this.videoForm).then(res => {
-            if (res.code === 200) {
-              this.$message.success("淇敼鎴愬姛")
-              this.getList();
-            } else {
-              this.$message.success("淇敼澶辫触")
-            }
-          })
+      // this.$refs['videoForm'].validate(validate => {
+      //   if (validate) {
+      editVideo(this.videoForm).then((res) => {
+        if (res.code === 200) {
+          this.$message.success("淇敼鎴愬姛");
+          this.videoOpen = false;
+          this.getList();
+        } else {
+          this.$message.success("淇敼澶辫触");
         }
-      })
+        //   })
+        // }
+      });
     },
     editFace() {
-      this.$refs['faceForm'].validate(validate => {
-        if (validate) {
-          editFace(this.videoForm).then(res => {
-            if (res.code === 200) {
-              this.$message.success("淇敼鎴愬姛")
-              this.getList();
-            } else {
-              this.$message.success("淇敼澶辫触")
-            }
-          })
+      // this.$refs['faceForm'].validate(validate => {
+      //   if (validate) {
+      editFace(this.videoForm).then((res) => {
+        if (res.code === 200) {
+          this.$message.success("淇敼鎴愬姛");
+          this.faceOpen = false;
+          this.getList();
+        } else {
+          this.$message.success("淇敼澶辫触");
         }
-      })
+        //   })
+        // }
+      });
     },
     editCar() {
-      this.$refs['carForm'].validate(validate => {
-        if (validate) {
-          editCar(this.carForm).then(res => {
-            if (res.code === 200) {
-              this.$message.success("淇敼鎴愬姛")
-              this.getList();
-            } else {
-              this.$message.success("淇敼澶辫触")
-            }
-          })
+      // this.$refs['carForm'].validate(validate => {
+      //   if (validate) {
+      editCar(this.carForm).then((res) => {
+        if (res.code === 200) {
+          this.$message.success("淇敼鎴愬姛");
+          this.carOpen = false;
+          this.getList();
+        } else {
+          this.$message.success("淇敼澶辫触");
         }
-      })
+        //   })
+        // }
+      });
     },
     /** 鏌ヨ杩愮淮闃堝�煎垪琛� */
     getList() {
-      this.loading = true
-      listThreshold(this.queryParams).then(response => {
-        this.thresholdList = response.rows
-        this.total = response.total
-        this.loading = false
-      })
+      this.loading = true;
+      listThreshold(this.queryParams).then((response) => {
+        this.thresholdList = response.data;
+        this.videoList = JSON.parse(JSON.stringify(this.thresholdList.video));
+        this.faceList = JSON.parse(JSON.stringify(this.thresholdList.face));
+        this.carList = JSON.parse(JSON.stringify(this.thresholdList.car));
+        this.total = response.total;
+        this.loading = false;
+      });
     },
     // 鍙栨秷鎸夐挳
     cancelFace() {
-      this.faceOpen = false
-      this.resetFace()
+      this.faceOpen = false;
+      this.resetFace();
     },
     cancelCar() {
-      this.carOpen = false
-      this.resetCar()
+      this.carOpen = false;
+      this.resetCar();
     },
     cancelVideo() {
-      this.videoOpen = false
-      this.resetVideo()
+      this.videoOpen = false;
+      this.resetVideo();
     },
     // 琛ㄥ崟閲嶇疆
     reset() {
@@ -293,9 +529,9 @@
         indicator: null,
         createTime: null,
         updateTime: null,
-        deleted: null
-      }
-      this.resetForm('form')
+        deleted: null,
+      };
+      this.resetForm("form");
     },
     resetVideo() {
       this.videoForm = {
@@ -307,8 +543,8 @@
         videoQualityAuto: "",
         annotationAccuracy: null,
         annotationAccuracyAuto: null,
-      }
-      this.resetForm('videoForm')
+      };
+      this.resetForm("videoForm");
     },
     resetFace() {
       this.faceForm = {
@@ -320,8 +556,8 @@
         videoQualityAuto: "",
         annotationAccuracy: null,
         annotationAccuracyAuto: null,
-      }
-      this.resetForm('faceForm')
+      };
+      this.resetForm("faceForm");
     },
     resetCar() {
       this.carForm = {
@@ -333,196 +569,213 @@
         videoQualityAuto: "",
         annotationAccuracy: null,
         annotationAccuracyAuto: null,
-      }
-      this.resetForm('carForm')
+      };
+      this.resetForm("carForm");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
-    handleQuery() {
-      this.queryParams.pageNum = 1
-      this.getList()
-    },
+    // handleQuery() {
+    //   this.queryParams.pageNum = 1;
+    //   this.getList();
+    // },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
-    resetQuery() {
-      this.resetForm('queryForm')
-      this.handleQuery()
-    },
+    // resetQuery() {
+    //   this.resetForm("queryForm");
+    //   this.handleQuery();
+    // },
     // 澶氶�夋閫変腑鏁版嵁
-    handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length !== 1
-      this.multiple = !selection.length
-    },
+    // handleSelectionChange(selection) {
+    //   this.ids = selection.map((item) => item.id);
+    //   this.single = selection.length !== 1;
+    //   this.multiple = !selection.length;
+    // },
     /** 鏂板鎸夐挳鎿嶄綔 */
-    handleAdd() {
-      this.reset()
-      this.open = true
-      this.title = '娣诲姞杩愮淮闃堝��'
-      this.handleModeNameChange()
-    },
+    // handleAdd() {
+    //   this.reset();
+    //   this.open = true;
+    //   this.title = "娣诲姞杩愮淮闃堝��";
+    //   this.handleModeNameChange();
+    // },
     /** 淇敼鎸夐挳鎿嶄綔 */
     updateWho(row) {
-      if (row.monitorType === 'face') {
-        getFace(row.id).then(response => {
-          this.faceForm = response.data
+      if (row.monitorType === "face") {
+        getFace(row.id).then((response) => {
+          this.faceForm = response.data;
           this.faceOpen = true;
-        })
-      } else if (row.monitorType === 'car') {
-        getCar(row.id).then(response => {
-          this.carForm = response.data
+        });
+      } else if (row.monitorType === "car") {
+        getCar(row.id).then((response) => {
+          this.carForm = response.data;
           this.carOpen = true;
-        })
+        });
       } else {
-        getVideo(row.id).then(response => {
-          this.videoForm = response.data
+        getVideo(row.id).then((response) => {
+          this.videoForm = response.data;
           this.videoOpen = true;
-        })
+        });
       }
     },
     handleUpdate(row) {
-      this.reset()
-      const id = row.id || this.ids
-      getThreshold(id).then(response => {
-        this.form = response.data
-        this.indicators = JSON.parse(this.form.indicator)
-        this.videoOpen = true
-        this.title = '淇敼杩愮淮闃堝��'
-      })
+      this.reset();
+      const id = row.id || this.ids;
+      getThreshold(id).then((response) => {
+        this.form = response.data;
+        this.indicators = JSON.parse(this.form.indicator);
+        this.videoOpen = true;
+        this.title = "淇敼杩愮淮闃堝��";
+      });
     },
     /** 鎻愪氦鎸夐挳 */
     submitForm() {
-      this.$refs['form'].validate(valid => {
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           // 灏唅ndicators杞负json璧嬪�煎埌form
-          this.form.indicator = JSON.stringify(this.indicators)
+          this.form.indicator = JSON.stringify(this.indicators);
           if (this.form.id != null) {
-            updateThreshold(this.form).then(response => {
-              this.$modal.msgSuccess('淇敼鎴愬姛')
-              this.open = false
-              this.getList()
-            })
+            updateThreshold(this.form).then((response) => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
           } else {
-            addThreshold(this.form).then(response => {
-              this.$modal.msgSuccess('鏂板鎴愬姛')
-              this.open = false
-              this.getList()
-            })
+            addThreshold(this.form).then((response) => {
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
           }
         }
-      })
+      });
     },
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
-      const ids = row.id || this.ids
-      this.$modal.confirm('鏄惁纭鍒犻櫎杩愮淮闃堝�肩紪鍙蜂负"' + ids + '"鐨勬暟鎹」锛�').then(function() {
-        return delThreshold(ids)
-      }).then(() => {
-        this.getList()
-        this.$modal.msgSuccess('鍒犻櫎鎴愬姛')
-      }).catch(() => {
-      })
+      const ids = row.id || this.ids;
+      this.$modal
+        .confirm('鏄惁纭鍒犻櫎杩愮淮闃堝�肩紪鍙蜂负"' + ids + '"鐨勬暟鎹」锛�')
+        .then(function () {
+          return delThreshold(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        })
+        .catch(() => {});
     },
     /** 鍒囨崲涓嶅悓鎸囨爣 */
     handleModeNameChange() {
-      if (this.form.monitorType === '1' || this.form.monitorType === null) {
+      if (this.form.monitorType === "1" || this.form.monitorType === null) {
         this.indicators = [
           {
-            label: '鎶撴媿閲�',
-            value: null
+            label: "鎶撴媿閲�",
+            value: null,
           },
           {
-            label: '鍙婃椂鐜�',
-            value: null
+            label: "鍙婃椂鐜�",
+            value: null,
           },
           {
-            label: '寤惰繜閲�',
-            value: null
+            label: "寤惰繜閲�",
+            value: null,
           },
           {
-            label: '鎶芥閲�',
-            value: null
+            label: "鎶芥閲�",
+            value: null,
           },
           {
-            label: '璁惧娲昏穬鐜�',
-            value: null
+            label: "璁惧娲昏穬鐜�",
+            value: null,
           },
           {
-            label: '鎶撴媿鍙婃椂鐜�',
-            value: null
+            label: "鎶撴媿鍙婃椂鐜�",
+            value: null,
           },
           {
-            label: '鏃堕挓鍑嗙‘鐜�',
-            value: null
+            label: "鏃堕挓鍑嗙‘鐜�",
+            value: null,
           },
           {
-            label: '鏃堕挓涓嶅噯纭巼',
-            value: null
-          }
-        ]
-      } else if (this.form.monitorType === 'car') {
+            label: "鏃堕挓涓嶅噯纭巼",
+            value: null,
+          },
+        ];
+      } else if (this.form.monitorType === "car") {
         this.indicators = [
           {
-            label: '杩囪溅鏁版嵁閲�',
-            value: null
+            label: "杩囪溅鏁版嵁閲�",
+            value: null,
           },
           {
-            label: '杩囪溅缂哄け鐜�',
-            value: null
+            label: "杩囪溅缂哄け鐜�",
+            value: null,
           },
           {
-            label: '鏈夋晥杩囪溅鏁版嵁閲�',
-            value: null
+            label: "鏈夋晥杩囪溅鏁版嵁閲�",
+            value: null,
           },
           {
-            label: '鎶芥閲�',
-            value: null
+            label: "鎶芥閲�",
+            value: null,
           },
           {
-            label: '璁惧娲昏穬鐜�',
-            value: null
+            label: "璁惧娲昏穬鐜�",
+            value: null,
           },
           {
-            label: '鎶撴媿鍙婃椂鐜�',
-            value: null
+            label: "鎶撴媿鍙婃椂鐜�",
+            value: null,
           },
           {
-            label: '鏃堕挓鍑嗙‘鐜�',
-            value: null
+            label: "鏃堕挓鍑嗙‘鐜�",
+            value: null,
           },
           {
-            label: '鏃堕挓涓嶅噯纭巼',
-            value: null
-          }
-        ]
-      } else if (this.form.monitorType === 'video') {
+            label: "鏃堕挓涓嶅噯纭巼",
+            value: null,
+          },
+        ];
+      } else if (this.form.monitorType === "video") {
         this.indicators = [
           {
-            label: '褰曞儚璐ㄩ噺',
-            value: null
+            label: "褰曞儚璐ㄩ噺",
+            value: null,
           },
           {
-            label: '鏍囨敞鍑嗙‘鐜�',
-            value: null
+            label: "鏍囨敞鍑嗙‘鐜�",
+            value: null,
           },
           {
-            label: '鍥惧儚璐ㄩ噺',
-            value: null
+            label: "鍥惧儚璐ㄩ噺",
+            value: null,
           },
-        ]
+        ];
       }
-    }
-  }
-}
+    },
+  },
+};
 </script>
-<style>
-.el-input-half-width {
+<style scoped>
+::v-deep .el-input-half-width {
   width: calc(50% - 6px); /* 鍑忓幓涓�浜涢棿闅� */
 }
-.table-row {
+::v-deep .table-row {
   display: flex;
   flex-direction: row;
 }
-.table-row-item {
+::v-deep .table-row-item {
   width: 120px;
   text-align: center;
 }
+.fixedWidth {
+  width: 200px;
+}
+.threshold {
+  display: flex;
+  flex-direction: row;
+}
+
+.header鈥攖ext {
+  font-weight: bold;
+}
+::v-deep .el-form-item {
+  margin-bottom: 0px; /* 鏍规嵁闇�姹傝皟鏁磋繖涓�� */
+}
 </style>

--
Gitblit v1.8.0