From ce59cac766bd4f0fb70555bff1c08875181e03bf Mon Sep 17 00:00:00 2001
From: 黄何裕 <1053952480@qq.com>
Date: 星期一, 22 七月 2024 09:14:42 +0800
Subject: [PATCH] 处理冲突
---
src/views/system/monitor/recovery/index.vue | 15
src/views/system/work-order/distribute/index.vue | 18
src/views/system/monitor/video/index.vue | 19
src/views/system/work-order/threshold/index.vue | 709 +++++++-----------------------------
src/views/system/data-manage/data-detail/index.vue | 2
src/views/system/data-manage/equipment/index.vue | 2
src/views/system/monitor/face/index.vue | 15
src/views/system/data-manage/vehicle-data-monitor/index.vue | 2
src/views/system/monitor/car/index.vue | 15
src/views/system/contract/contract/index.vue | 315 +++++++++++----
src/views/system/monitor/platform/index.vue | 15
11 files changed, 419 insertions(+), 708 deletions(-)
diff --git a/src/views/system/contract/contract/index.vue b/src/views/system/contract/contract/index.vue
index 1c095bd..8f7e39d 100644
--- a/src/views/system/contract/contract/index.vue
+++ b/src/views/system/contract/contract/index.vue
@@ -1,61 +1,123 @@
<template>
<div class="app-container">
-
+ <el-row :gutter="10" class="mb8" style="margin-top: 10px">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ v-hasPermi="['system:contract:import']"
+ @click="handleImport"
+ >鏂板</el-button
+ >
+ </el-col>
+ </el-row>
<el-row v-loading="loading">
- <el-col :span="8" v-for="(item, index) in contractList" :key="index" style="margin: 10px;width: 30%;">
+ <el-col
+ :span="8"
+ v-for="(item, index) in contractList"
+ :key="index"
+ style="margin: 10px; width: 30%"
+ >
<el-card :body-style="{ padding: '0px' }">
- <ImagePreview style="width: 100%;height: 187px;"
- fit="cover" :src="item.attachment"
- class="image" />
- <div style="padding: 14px;">
+ <ImagePreview
+ style="width: 100%; height: 187px"
+ fit="cover"
+ :src="item.attachment"
+ class="image"
+ />
+ <div style="padding: 14px">
<span>{{ item.name }}</span>
- <span class="time" style="margin-left: 10px;">{{ item.unitName }}</span>
+ <span class="time" style="margin-left: 10px">{{
+ item.unitName
+ }}</span>
<div class="bottom clearfix">
- <time class="time">{{ item.startTime }} 鈥� {{ item.endTime }}</time>
- <el-button type="text" class="button" @click="handleDetail(item)">鏌ョ湅璇︽儏</el-button>
+ <time class="time"
+ >{{ item.startTime }} 鈥� {{ item.endTime }}</time
+ >
+ <el-button type="text" class="button" @click="handleDetail(item)"
+ >鏌ョ湅璇︽儏</el-button
+ >
</div>
</div>
</el-card>
</el-col>
</el-row>
- <el-row :gutter="10" class="mb8" style="margin-top: 40px;">
- <el-col :span="1.5">
- <el-button type="primary" plain icon="el-icon-plus" size="mini" v-hasPermi="['system:contract:import']"
- @click="handleImport">鏂板</el-button>
- </el-col>
- </el-row>
-
<!-- 鍚堝悓璇︽儏 -->
- <el-dialog :title="detailName" :visible.sync="detail" width="800px" append-to-body>
+ <el-dialog
+ :title="detailName"
+ :visible.sync="detail"
+ width="800px"
+ append-to-body
+ >
<el-form label-position="left" inline class="table-expand">
<el-collapse v-model="activeNames">
- <el-collapse-item v-for="(item, index) in ruleData" :key="index" :title="item.ruleName" :name="index">
- <div class="inline-input-container" v-for="(item, index) in item.children" :key="index">
- <b>{{ item.ruleDesc }}</b> <br v-if="item.ruleDesc"/>
- <el-tooltip class="item" v-for="(item, index) in item.children" :key="index" effect="dark" :content="item.deductCategory == '鍒嗘暟涔樹互鏁伴噺' ? '鎵�' + item.calcFraction + '鍒�*鏁伴噺 ' : item.deductCategory == '闄や互鏁伴噺鍚庝箻浠ュ垎鏁�' ? '鎵�' + item.calcFraction + '鍒�/' + item.calcUnit + '灏忔椂' : '鎵�' + item.calcFraction + '鍒�'" placement="top">
- <span>{{ item.ruleCondition }}<br/></span>
+ <el-collapse-item
+ v-for="(item, index) in ruleData"
+ :key="index"
+ :title="item.ruleName"
+ :name="index"
+ >
+ <div
+ class="inline-input-container"
+ v-for="(item, index) in item.children"
+ :key="index"
+ >
+ <b>{{ item.ruleDesc }}</b> <br v-if="item.ruleDesc" />
+ <el-tooltip
+ class="item"
+ v-for="(item, index) in item.children"
+ :key="index"
+ effect="dark"
+ :content="
+ item.deductCategory == '鍒嗘暟涔樹互鏁伴噺'
+ ? '鎵�' + item.calcFraction + '鍒�*鏁伴噺 '
+ : item.deductCategory == '闄や互鏁伴噺鍚庝箻浠ュ垎鏁�'
+ ? '鎵�' + item.calcFraction + '鍒�/' + item.calcUnit + '灏忔椂'
+ : '鎵�' + item.calcFraction + '鍒�'
+ "
+ placement="top"
+ >
+ <span>{{ item.ruleCondition }}<br /></span>
<!-- {{ item.deductCategory }} {{ item.calcFraction }}{{ item.calcUnit ? "/" + item.calcUnit : '' }} -->
- </el-tooltip>
+ </el-tooltip>
</div>
</el-collapse-item>
<el-collapse-item title="鑰冩牳缁撴灉搴旂敤瑙勫垯" :name="ruleData.length">
<div class="inline-input-container">
- <span v-for="(item, index) in moneyRules" :key="index">
- <div>
- <span>{{ item.scoreCondition }}</span>
- <el-tooltip class="item" effect="dark" :content="item.description" placement="top">
- <span style="margin-left: 20px;">{{ item.description }}</span>
- </el-tooltip>
- </div>
- </span>
+ <span v-for="(item, index) in moneyRules" :key="index">
+ <div>
+ <span>{{ item.scoreCondition }}</span>
+ <el-tooltip
+ class="item"
+ effect="dark"
+ :content="item.description"
+ placement="top"
+ >
+ <span style="margin-left: 20px">{{
+ item.description
+ }}</span>
+ </el-tooltip>
+ </div>
+ </span>
</div>
</el-collapse-item>
<el-form-item label="鍚堝悓闄勪欢" prop="attachment" class="top">
- <file-upload v-model="form.attachment"/>
+ <file-upload v-model="form.attachment" />
</el-form-item>
- <el-link class="top" v-for="item in contractInfo.attachment != null ? contractInfo.attachment.split(',') : contractInfo.attachment" :underline="false" :key="item" @click="handleDownload(item)">{{ item.substring(item.lastIndexOf("/") + 1) }}</el-link>
- <div style="text-align: right; margin-top: 10px;">
+ <el-link
+ class="top"
+ v-for="item in contractInfo.attachment != null
+ ? contractInfo.attachment.split(',')
+ : contractInfo.attachment"
+ :underline="false"
+ :key="item"
+ @click="handleDownload(item)"
+ >{{ item.substring(item.lastIndexOf("/") + 1) }}</el-link
+ >
+ <div style="text-align: right; margin-top: 10px">
<el-button type="primary" @click="submitForm">鎻愪氦</el-button>
</div>
</el-collapse>
@@ -63,7 +125,12 @@
</el-dialog>
<!-- 鍚堝悓瀵煎叆瀵硅瘽妗� -->
- <el-dialog :title="upload.title" :visible.sync="upload.open" width="1000px" append-to-body>
+ <el-dialog
+ :title="upload.title"
+ :visible.sync="upload.open"
+ width="1000px"
+ append-to-body
+ >
<el-form ref="form" :model="upload" :rules="rules" label-width="80px">
<el-divider content-position="left">鍚堝悓淇℃伅</el-divider>
<div class="row-warp">
@@ -75,31 +142,61 @@
</el-form-item>
<el-form-item label="鍏徃鍚嶇О" prop="unitId">
<el-select v-model="upload.unitId" placeholder="璇烽�夋嫨">
- <el-option v-for="item in unitList" :key="item.id" :label="item.value" :value="item.id">
+ <el-option
+ v-for="item in unitList"
+ :key="item.id"
+ :label="item.value"
+ :value="item.id"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="鍚堝悓鏃堕棿" prop="timezone">
- <el-date-picker :disabled="title === '淇敼鍚堝悓鏃堕棿'" @change="dateChange" v-model="upload.timezone"
- value-format="yyyy-MM-dd HH:mm:ss" type="datetimerange" align="right" unlink-panels range-separator="鑷�"
- start-placeholder="寮�濮嬫椂闂�" end-placeholder="缁撴潫鏃堕棿">
+ <el-date-picker
+ :disabled="title === '淇敼鍚堝悓鏃堕棿'"
+ @change="dateChange"
+ v-model="upload.timezone"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ type="datetimerange"
+ align="right"
+ unlink-panels
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫椂闂�"
+ end-placeholder="缁撴潫鏃堕棿"
+ >
</el-date-picker>
</el-form-item>
</div>
</div>
- <div class="row-right" style="margin-left: 80px;">
+ <div class="row-right" style="margin-left: 80px">
<div class="margin-5">
- <el-upload ref="upload" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+ <el-upload
+ ref="upload"
+ :limit="1"
+ accept=".xlsx, .xls"
+ :headers="upload.headers"
:action="upload.url"
- :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess"
+ :disabled="upload.isUploading"
+ :on-progress="handleFileUploadProgress"
+ :on-success="handleFileSuccess"
:data="upload"
- :auto-upload="false" drag style="text-align: center;">
+ :auto-upload="false"
+ drag
+ style="text-align: center"
+ >
<i class="el-icon-upload"></i>
- <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div>
+ <div class="el-upload__text">
+ 灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em>
+ </div>
<div class="el-upload__tip text-center" slot="tip">
<span>浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢銆�</span>
- <el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;"
- @click="importTemplate">涓嬭浇妯℃澘</el-link>
+ <el-link
+ type="primary"
+ :underline="false"
+ style="font-size: 12px; vertical-align: baseline"
+ @click="importTemplate"
+ >涓嬭浇妯℃澘</el-link
+ >
</div>
</el-upload>
</div>
@@ -108,38 +205,64 @@
</div>
<el-divider content-position="left">鑰冩牳缁撴灉搴旂敤瑙勫垯</el-divider>
<div class="row-warp">
- <div class="row" v-for="(item, index) in upload.ruleList" :key="index">
- <div class="row-left" style="flex: 0.7;">
+ <div
+ class="row"
+ v-for="(item, index) in upload.ruleList"
+ :key="index"
+ >
+ <div class="row-left" style="flex: 0.7">
<div class="block">
<el-form-item label="鑰冩牳鏉′欢" prop="ruleList">
- <el-input v-model="item.scoreCondition" style="width: 250px;" />
+ <el-input
+ v-model="item.scoreCondition"
+ style="width: 250px"
+ />
</el-form-item>
</div>
</div>
<div class="row-right">
<div class="margin-5">
<el-form-item label="瑙勫垯鎻忚堪" prop="ruleList">
- <el-input type="textarea" v-model="item.description" style="width: 300px;" />
- <el-button style="margin-left: 50px;" type="danger" icon="el-icon-delete" circle @click="deleteRule(index)"></el-button>
+ <el-input
+ type="textarea"
+ v-model="item.description"
+ style="width: 300px"
+ />
+ <el-button
+ style="margin-left: 50px"
+ type="danger"
+ icon="el-icon-delete"
+ circle
+ @click="deleteRule(index)"
+ ></el-button>
</el-form-item>
</div>
</div>
</div>
</div>
- <el-button style="margin-left: 50px;" type="success" icon="el-icon-plus" circle @click="addRule"></el-button>
- </el-form>
+ <el-button
+ style="margin-left: 50px"
+ type="success"
+ icon="el-icon-plus"
+ circle
+ @click="addRule"
+ ></el-button>
+ </el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm">纭� 瀹�</el-button>
<el-button @click="upload.open = false">鍙� 娑�</el-button>
</div>
</el-dialog>
-
</div>
</template>
<script>
-import { listContract, getContract, updateContract } from "@/api/platform/contract";
+import {
+ listContract,
+ getContract,
+ updateContract,
+} from "@/api/platform/contract";
import { getRuleListByContractId } from "../../../../api/platform/calculate-rule";
import { getMoneyRulesByContractId } from "../../../../api/platform/calculate-money-rule";
import { unitSelect } from "../../../../api/platform/unit";
@@ -167,21 +290,19 @@
// 涓婁紶鐨勫湴鍧�
url: process.env.VUE_APP_BASE_API + "/system/contract/importData",
ruleList: [],
- unitId: '',
- startTime: '',
- endTime: ''
+ unitId: "",
+ startTime: "",
+ endTime: "",
},
- dialogImageUrl: '',
+ dialogImageUrl: "",
dialogVisible: false,
disabled: false,
props: {
- row: {
-
- }
+ row: {},
},
unitList: [],
deptList: [],
- activeNames: ['1'],
+ activeNames: ["1"],
// 閬僵灞�
loading: true,
// 閫変腑鏁扮粍
@@ -207,23 +328,32 @@
ruleData: [],
moneyRules: [],
// 琛ㄥ崟鍙傛暟
- form: {
- },
+ form: {},
// 琛ㄥ崟鏍¢獙
rules: {
name: [
- { required: true, message: "鍚堝悓鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
+ { required: true, message: "鍚堝悓鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
],
unitId: [
- { required: true, message: "杩愮淮鍗曚綅涓嶈兘涓虹┖", trigger: "change" }
+ { required: true, message: "杩愮淮鍗曚綅涓嶈兘涓虹┖", trigger: "change" },
],
timezone: [
- { type: "array", required: true, message: "鍚堝悓鏃堕棿涓嶈兘涓虹┖", trigger: "change" }
+ {
+ type: "array",
+ required: true,
+ message: "鍚堝悓鏃堕棿涓嶈兘涓虹┖",
+ trigger: "change",
+ },
],
ruleList: [
- { type: "array", required: true, message: "鑰冩牳缁撴灉搴旂敤瑙勫垯涓嶈兘涓虹┖", trigger: "submit" }
- ]
- }
+ {
+ type: "array",
+ required: true,
+ message: "鑰冩牳缁撴灉搴旂敤瑙勫垯涓嶈兘涓虹┖",
+ trigger: "submit",
+ },
+ ],
+ },
};
},
created() {
@@ -234,15 +364,15 @@
methods: {
addRule() {
this.upload.ruleList.push({
- scoreCondition: '',
- description: ''
+ scoreCondition: "",
+ description: "",
});
},
deleteRule(index) {
this.upload.ruleList.splice(index, 1);
},
submitForm() {
- updateContract(this.form).then(response => {
+ updateContract(this.form).then((response) => {
this.detail = false;
if (response.code != 200) {
this.$message.error("鎿嶄綔澶辫触");
@@ -258,8 +388,7 @@
},
/** 涓嬭浇妯℃澘鎿嶄綔 */
importTemplate() {
- this.download('system/contract/importTemplate', {
- }, `鍚堝悓瀵煎叆妯℃澘.xlsx`)
+ this.download("system/contract/importTemplate", {}, `鍚堝悓瀵煎叆妯℃澘.xlsx`);
},
// 鏂囦欢涓婁紶涓鐞�
handleFileUploadProgress(event, file, fileList) {
@@ -280,7 +409,7 @@
// 鎻愪氦涓婁紶鏂囦欢
submitFileForm() {
let that = this;
- this.$refs["form"].validate(valid => {
+ this.$refs["form"].validate((valid) => {
if (valid) {
that.upload.ruleList = JSON.stringify(this.upload.ruleList);
that.loading = true;
@@ -290,7 +419,7 @@
that.reset();
});
}
- })
+ });
},
// 鏃堕棿閫夋嫨鍙戠敓鍙樺寲
dateChange() {
@@ -306,20 +435,20 @@
},
// 杩愮淮鍏徃涓嬫媺鏁版嵁
selectUnit() {
- unitSelect().then(res => {
+ unitSelect().then((res) => {
this.unitList = res.data;
- })
+ });
},
// 鍏畨閮ㄩ棬涓嬫媺鏁版嵁
selectDept() {
- deptSelect().then(res => {
+ deptSelect().then((res) => {
this.deptList = res.data;
- })
+ });
},
/** 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛� */
getList() {
this.loading = true;
- listContract(this.queryParams).then(response => {
+ listContract(this.queryParams).then((response) => {
this.contractList = response;
this.total = response.total;
this.loading = false;
@@ -327,12 +456,12 @@
},
/** 鑾峰彇鍚堝悓瑙勫垯 */
getRuleList(item) {
- getRuleListByContractId(item.id).then(response => {
+ getRuleListByContractId(item.id).then((response) => {
this.ruleData = response.data;
this.form.id = item.id;
this.contractInfo = item;
});
- getMoneyRulesByContractId(item.id).then(response => {
+ getMoneyRulesByContractId(item.id).then((response) => {
this.moneyRules = response.data;
});
},
@@ -351,28 +480,28 @@
/** 淇敼鎸夐挳鎿嶄綔 */
handleUpdate(row) {
this.reset();
- const id = row.id || this.ids
- getContract(id).then(response => {
+ const id = row.id || this.ids;
+ getContract(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = "淇敼鍚堝悓";
});
},
/** 涓嬭浇鎸夐挳鎿嶄綔 */
- handleDownload (data) {
+ handleDownload(data) {
this.$download.resource(data);
},
- reset () {
+ reset() {
this.upload = {
open: false,
name: undefined,
unitId: undefined,
timezone: undefined,
- ruleList: []
+ ruleList: [],
};
this.resetForm("form");
- }
- }
+ },
+ },
};
</script>
@@ -421,7 +550,7 @@
}
.clearfix:after {
- clear: both
+ clear: both;
}
.top {
diff --git a/src/views/system/data-manage/data-detail/index.vue b/src/views/system/data-manage/data-detail/index.vue
index 08d602a..944c30f 100644
--- a/src/views/system/data-manage/data-detail/index.vue
+++ b/src/views/system/data-manage/data-detail/index.vue
@@ -309,7 +309,7 @@
width: 20%;
height: 80px;
margin-left: 5%;
- background-color: #5599F7;
+ background-color: #1890FF;
font-size: 50px;
color: #FFF;
width: 85px;
diff --git a/src/views/system/data-manage/equipment/index.vue b/src/views/system/data-manage/equipment/index.vue
index 1b6dd83..d39b2f0 100644
--- a/src/views/system/data-manage/equipment/index.vue
+++ b/src/views/system/data-manage/equipment/index.vue
@@ -5,7 +5,7 @@
<el-card class="box-card" >
<el-row type="flex" align="middle" justify="space-between">
<el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-wallet"></i>
</div>
</el-col>
diff --git a/src/views/system/data-manage/vehicle-data-monitor/index.vue b/src/views/system/data-manage/vehicle-data-monitor/index.vue
index 75bddb3..377323f 100644
--- a/src/views/system/data-manage/vehicle-data-monitor/index.vue
+++ b/src/views/system/data-manage/vehicle-data-monitor/index.vue
@@ -299,7 +299,7 @@
width: 20%;
height: 80px;
margin-left: 5%;
- background-color: #5599F7;
+ background-color: #1890FF;
font-size: 50px;
color: #FFF;
width: 85px;
diff --git a/src/views/system/monitor/car/index.vue b/src/views/system/monitor/car/index.vue
index 596da1f..ae62114 100644
--- a/src/views/system/monitor/car/index.vue
+++ b/src/views/system/monitor/car/index.vue
@@ -2,12 +2,12 @@
<div class="app-container">
<el-card class="box-card" >
<el-row type="flex" align="middle" justify="space-between">
- <el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <el-col :span="4">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-truck"></i>
</div>
</el-col>
- <el-col :xl="14" :lg="14" :md="12" :sm="14" :xs="16">
+ <el-col :span="20">
<div class="dashboard">
<div class="dashboard-item">
<h3 style="color: #5C9BF8">{{ count.totalPosts }}</h3>
@@ -394,7 +394,7 @@
<style lang="scss" scoped>
.box-card {
- background-color: #F5F9FE;
+ background-color: #ffffff;
width: 100%;
margin-bottom: 20px;
height: 120px
@@ -404,7 +404,7 @@
justify-content: center;
align-items: center;
border-radius: 20px;
- width: 20%;
+ width: 130px;
height: 80px;
margin-left: 5%;
}
@@ -415,9 +415,10 @@
.dashboard {
display: flex;
- gap: 10%;
+ gap: 5%;
align-items: center;
- margin-left: -50%;
+ justify-content: space-between;
+ margin-right: 20px;
}
.dashboard-item {
diff --git a/src/views/system/monitor/face/index.vue b/src/views/system/monitor/face/index.vue
index 6e99e50..1e6aaf9 100644
--- a/src/views/system/monitor/face/index.vue
+++ b/src/views/system/monitor/face/index.vue
@@ -2,12 +2,12 @@
<div class="app-container">
<el-card class="box-card" >
<el-row type="flex" align="middle" justify="space-between">
- <el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <el-col :span="4">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-user"></i>
</div>
</el-col>
- <el-col :xl="14" :lg="14" :md="12" :sm="14" :xs="16">
+ <el-col :span="20">
<div class="dashboard">
<div class="dashboard-item">
<h3 style="color: #5C9BF8">{{ count.totalPosts }}</h3>
@@ -434,7 +434,7 @@
<style lang="scss" scoped>
.box-card {
- background-color: #F5F9FE;
+ background-color: #ffffff;
width: 100%;
margin-bottom: 20px;
height: 120px
@@ -444,7 +444,7 @@
justify-content: center;
align-items: center;
border-radius: 20px;
- width: 20%;
+ width: 130px;
height: 80px;
margin-left: 5%;
}
@@ -455,9 +455,10 @@
.dashboard {
display: flex;
- gap: 10%;
+ gap: 5%;
align-items: center;
- margin-left: -50%;
+ justify-content: space-between;
+ margin-right: 20px;
}
.dashboard-item {
diff --git a/src/views/system/monitor/platform/index.vue b/src/views/system/monitor/platform/index.vue
index 3bbe042..6609341 100644
--- a/src/views/system/monitor/platform/index.vue
+++ b/src/views/system/monitor/platform/index.vue
@@ -2,12 +2,12 @@
<div class="app-container">
<el-card class="box-card" >
<el-row type="flex" align="middle" justify="space-between">
- <el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <el-col :span="4">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-connection"></i>
</div>
</el-col>
- <el-col :xl="14" :lg="14" :md="12" :sm="14" :xs="16">
+ <el-col :span="20">
<div class="dashboard">
<div class="dashboard-item">
<h3 style="color: #5C9BF8">{{ count.totalPosts }}</h3>
@@ -357,7 +357,7 @@
<style lang="scss" scoped>
.box-card {
- background-color: #F5F9FE;
+ background-color: #ffffff;
width: 100%;
margin-bottom: 20px;
height: 120px
@@ -367,7 +367,7 @@
justify-content: center;
align-items: center;
border-radius: 20px;
- width: 20%;
+ width: 130px;
height: 80px;
margin-left: 5%;
}
@@ -378,9 +378,10 @@
.dashboard {
display: flex;
- gap: 10%;
+ gap: 5%;
align-items: center;
- margin-left: -50%;
+ justify-content: space-between;
+ margin-right: 20px;
}
.dashboard-item {
diff --git a/src/views/system/monitor/recovery/index.vue b/src/views/system/monitor/recovery/index.vue
index 29912d5..93d6d78 100644
--- a/src/views/system/monitor/recovery/index.vue
+++ b/src/views/system/monitor/recovery/index.vue
@@ -2,12 +2,12 @@
<div class="app-container">
<el-card class="box-card" >
<el-row type="flex" align="middle" justify="space-between">
- <el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <el-col :span="4">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-refresh-left"></i>
</div>
</el-col>
- <el-col :xl="14" :lg="14" :md="12" :sm="14" :xs="16">
+ <el-col :span="20">
<div class="dashboard">
<div class="dashboard-item">
<h3 style="color: #5C9BF8">{{ count.totalPosts }}</h3>
@@ -365,7 +365,7 @@
<style lang="scss" scoped>
.box-card {
- background-color: #F5F9FE;
+ background-color: #ffffff;
width: 100%;
margin-bottom: 20px;
height: 120px
@@ -375,7 +375,7 @@
justify-content: center;
align-items: center;
border-radius: 20px;
- width: 20%;
+ width: 130px;
height: 80px;
margin-left: 5%;
}
@@ -386,9 +386,10 @@
.dashboard {
display: flex;
- gap: 10%;
+ gap: 5%;
align-items: center;
- margin-left: -50%;
+ justify-content: space-between;
+ margin-right: 20px;
}
.dashboard-item {
diff --git a/src/views/system/monitor/video/index.vue b/src/views/system/monitor/video/index.vue
index 030708c..b90d25c 100644
--- a/src/views/system/monitor/video/index.vue
+++ b/src/views/system/monitor/video/index.vue
@@ -3,13 +3,13 @@
<div class="app-container">
<el-card class="box-card" >
- <el-row type="flex" align="middle" justify="space-between">
- <el-col :xl="8" :lg="8" :md="10" :sm="8" :xs="6">
- <div class="icon-container" style="background-color: #5599F7">
+ <el-row type="flex" align="middle" justify="space-between" style="width: 100%;">
+ <el-col :span="4">
+ <div class="icon-container" style="background-color: #1890FF">
<i class="el-icon-video-camera"></i>
</div>
</el-col>
- <el-col :xl="14" :lg="14" :md="12" :sm="14" :xs="16">
+ <el-col :span="20">
<div class="dashboard">
<div class="dashboard-item">
<h3 style="color: #5C9BF8">{{ count.totalPosts }}</h3>
@@ -434,17 +434,17 @@
<style lang="scss" scoped>
.box-card {
- background-color: #F5F9FE;
+ background-color: hsl(0, 0%, 100%);
width: 100%;
margin-bottom: 20px;
- height: 120px
+ height: 120px;
}
.icon-container {
display: flex;
justify-content: center;
align-items: center;
border-radius: 20px;
- width: 20%;
+ width: 130px;
height: 80px;
margin-left: 5%;
}
@@ -455,9 +455,10 @@
.dashboard {
display: flex;
- gap: 10%;
+ gap: 5%;
align-items: center;
- margin-left: -50%;
+ justify-content: space-between;
+ margin-right: 20px;
}
.dashboard-item {
diff --git a/src/views/system/work-order/distribute/index.vue b/src/views/system/work-order/distribute/index.vue
index 89e48d7..4113958 100644
--- a/src/views/system/work-order/distribute/index.vue
+++ b/src/views/system/work-order/distribute/index.vue
@@ -15,12 +15,12 @@
<el-row class="op-warp" type="flex" justify="left" >
<el-col :span="24">
- <el-button size="small" type="info" @click="selectedDistribute" class="op">涓嬪彂閫変腑宸ュ崟</el-button>
+ <el-button size="mini" type="primary" @click="selectedDistribute" class="op">涓嬪彂閫変腑宸ュ崟</el-button>
<el-popconfirm
@confirm="allDistribute"
title="纭畾瑕佷笅鍙戞墍鏈夊伐鍗曞悧锛�"
>
- <el-button size="small" type="danger" class="op" slot="reference">鍏ㄩ儴涓嬪彂</el-button>
+ <el-button size="mini" type="primary" class="op" slot="reference">鍏ㄩ儴涓嬪彂</el-button>
</el-popconfirm>
<el-popover
@@ -56,15 +56,21 @@
</el-select>
</el-form-item>
<el-form-item label="鏁伴噺闄愬埗" prop="fastNumLimit">
- <el-input v-model="fastDistributeForm.fastNumLimit" size="small" type="number" placeholder="姝ゆ宸ュ崟涓嬪彂鏈�澶ф暟閲�"></el-input>
+ <el-input v-model="fastDistributeForm.fastNumLimit" size="mini" type="number" placeholder="姝ゆ宸ュ崟涓嬪彂鏈�澶ф暟閲�"></el-input>
</el-form-item>
<el-form-item>
- <el-button type="primary" size="small" @click="fastDistribute">绔嬪嵆涓嬪彂</el-button>
+ <el-button type="primary" size="mini" @click="fastDistribute">绔嬪嵆涓嬪彂</el-button>
</el-form-item>
</el-form>
- <el-button slot="reference" type="primary" size="small">蹇嵎涓嬪彂</el-button>
+ <el-button slot="reference" type="primary" size="mini">蹇嵎涓嬪彂</el-button>
</el-popover>
- <el-button size="small" type="success" @click="handleAdd">鎵嬪姩鏂板宸ュ崟</el-button>
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ >鎵嬪姩鏂板宸ュ崟</el-button>
<el-button icon="el-icon-refresh" circle @click="page"></el-button>
</el-col>
</el-row>
diff --git a/src/views/system/work-order/threshold/index.vue b/src/views/system/work-order/threshold/index.vue
index 7053ad8..345e441 100644
--- a/src/views/system/work-order/threshold/index.vue
+++ b/src/views/system/work-order/threshold/index.vue
@@ -24,11 +24,15 @@
type="text"
icon="el-icon-edit"
v-hasPermi="['ycl:threshold:edit']"
- @click="a()"
- v-if="!ifEdit"
+ @click="showEdit('video')"
+ v-if="!ifEditVideo"
>淇敼
</el-button>
- <el-button size="mini" type="primary" @click="a()" v-if="ifEdit"
+ <el-button
+ size="mini"
+ type="primary"
+ @click="saveEdit('video')"
+ v-if="ifEditVideo"
>淇濆瓨
</el-button>
</div>
@@ -47,83 +51,28 @@
font-size: small;
display: flex;
flex-direction: row-reverse;
- width: 172px;
+ width: 192px;
"
- >宸ュ崟闃堝��</div
>
+ 宸ュ崟闃堝��
+ </div>
<div>
- <el-form label-width="120px">
- <el-form-item label="妯$硦鍒嗗�硷細">
+ <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.blur"
+ v-model="videoList[index].value"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditVideo"
></el-input>
- <span v-else>{{ thresholdList[0].blur }}</span>
- </el-form-item>
- <el-form-item label="棰滆壊鍒嗗�硷細">
- <el-input
- v-model="videoList.color"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].color }}</span>
- </el-form-item>
- <el-form-item label="浜害鍒嗗�硷細">
- <el-input
- v-model="videoList.light"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].light }}</span>
- </el-form-item>
- <el-form-item label="閬尅鍒嗗�硷細">
- <el-input
- v-model="videoList.shade"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].shade }}</span>
- </el-form-item>
- <el-form-item label="闆姳鍒嗗�硷細">
- <el-input
- v-model="videoList.snow"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].snow }}</span>
- </el-form-item>
- <el-form-item label="鏉$汗鍒嗗�硷細">
- <el-input
- v-model="videoList.stripe"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].stripe }}</span>
- </el-form-item>
- <el-form-item label="鏃犱俊鍙峰垎鍊硷細">
- <el-input
- v-model="videoList.signal"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].signal }}</span>
- </el-form-item>
- <el-form-item label="鏍囨敞鏃堕棿宸�(绉�)锛�">
- <el-input
- v-model="videoList.diffTime"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].diffTime }}</span>
+ <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>
@@ -131,78 +80,22 @@
<div>
<span style="font-size: small">涓嬪彂闃堝��</span>
<div>
- <el-form ref="form" :model="thresholdList[0]">
- <el-form-item label="">
+ <el-form ref="form">
+ <el-form-item
+ v-for="(item, index) in thresholdList.video"
+ label=""
+ :key="item.id"
+ >
<el-input
- v-model="videoList.blur"
+ v-model="videoList[index].valueAuto"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditVideo"
></el-input>
- <span v-else>{{ thresholdList[0].blur }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.color"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].color }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.light"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].light }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.shade"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].shade }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.snow"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].snow }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.stripe"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].stripe }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.signal"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].signal }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="videoList.difftime"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[0].difftime }}</span>
+ <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>
@@ -220,11 +113,15 @@
type="text"
icon="el-icon-edit"
v-hasPermi="['ycl:threshold:edit']"
- @click="a()"
- v-if="!ifEdit"
+ @click="showEdit('face')"
+ v-if="!ifEditFace"
>淇敼
</el-button>
- <el-button size="mini" type="primary" @click="b()" v-if="ifEdit"
+ <el-button
+ size="mini"
+ type="primary"
+ @click="saveEdit('face')"
+ v-if="ifEditFace"
>淇濆瓨
</el-button>
</div>
@@ -245,131 +142,50 @@
flex-direction: row-reverse;
width: 190px;
"
- >宸ュ崟闃堝��</div
>
+ 宸ュ崟闃堝��
+ </div>
<div>
<el-form label-width="140px">
- <el-form-item label="鏃堕挓鍑嗙‘鐜囷細">
- <el-input
- v-model="faceList.clockPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[1].clockPercent }}</span>
- </el-form-item>
- <el-form-item label="鏁版嵁鍙婃椂鐜囷細">
- <el-input
- v-model="faceList.timelyPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[1].timelyPercent }}</span>
- </el-form-item>
- <el-form-item label="涓嶅敮涓�鏁版嵁閲忥細">
- <el-input
- v-model="faceList.nouniqueCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[1].nouniqueCount }}</span>
- </el-form-item>
- <el-form-item label="寤烘ā澶辫触鐜囷細">
- <el-input
- v-model="faceList.failPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ thresholdList[1].failPercent }}</span>
- </el-form-item>
- <el-form-item label="骞冲潎浜鸿劯浣庤瘎鍒嗙巼锛�">
- <el-input
- v-model="faceList.lowScorePercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{
- thresholdList[1].lowScorePercent
- }}</span></el-form-item
+ <el-form-item
+ v-for="(item, index) in thresholdList.face"
+ :label="item.name + '锛�'"
+ :key="item.id"
>
- <el-form-item label="鎸佺画鏃犳暟鎹ぉ鏁帮細">
<el-input
- v-model="thresholdList[0].continueNoDataCount"
+ v-model="faceList[index].value"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditFace"
></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
- >
+ <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"
- :model="thresholdList[0]"
- >
- <el-form-item label="">
- <el-input
- v-model="thresholdList[1].clockPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{
- thresholdList[1].clockPercent
- }}</span></el-form-item
+ <el-form ref="form">
+ <el-form-item
+ v-for="(item, index) in thresholdList.face"
+ label=""
+ :key="item.id"
>
- <el-form-item label="">
<el-input
- v-model="thresholdList[0].timelyPercent"
+ v-model="faceList[index].valueAuto"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditFace"
></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
- >
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].nouniqueCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
- >
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].failPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
- >
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].lowScorePercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
- >
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].continueNoDataCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span></el-form-item
+ <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>
@@ -387,11 +203,15 @@
type="text"
icon="el-icon-edit"
v-hasPermi="['ycl:threshold:edit']"
- @click="a()"
- v-if="!ifEdit"
+ @click="showEdit('car')"
+ v-if="!ifEditCar"
>淇敼
</el-button>
- <el-button size="mini" type="primary" @click="a()" v-if="ifEdit"
+ <el-button
+ size="mini"
+ type="primary"
+ @click="saveEdit('car')"
+ v-if="ifEditCar"
>淇濆瓨
</el-button>
</div>
@@ -412,67 +232,26 @@
flex-direction: row-reverse;
width: 232px;
"
- >宸ュ崟闃堝��</div
>
+ 宸ュ崟闃堝��
+ </div>
<div>
- <el-form
- ref="form"
- :model="thresholdList[0]"
- label-width="180px"
- >
- <el-form-item label="鏃堕挓鍑嗙‘鐜囷細">
+ <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="thresholdList[0].clockPercent"
+ v-model="carList[index].value"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditCar"
></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="鏁版嵁鍙婃椂鐜囷細">
- <el-input
- v-model="thresholdList[0].timelyPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="涓嶅敮涓�鏁版嵁閲忥細">
- <el-input
- v-model="thresholdList[0].nouniqueCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="杞︾墝鏈瘑鍒噺锛�">
- <el-input
- v-model="thresholdList[0].dayNoNumberCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="杞﹁締鍏」灞炴�т笉瀹屾暣閲忥細">
- <el-input
- v-model="thresholdList[0].noIntegrityCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="鎸佺画鏃犳暟鎹ぉ鏁帮細">
- <el-input
- v-model="thresholdList[0].continueNoDataCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
+ <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>
@@ -480,63 +259,22 @@
<div>
<span style="font-size: small">涓嬪彂闃堝��</span>
<div>
- <el-form
- ref="form"
- :model="thresholdList[0]"
- >
- <el-form-item label="">
+ <el-form ref="form">
+ <el-form-item
+ v-for="(item, index) in thresholdList.car"
+ label=""
+ :key="item.id"
+ >
<el-input
- v-model="thresholdList[0].clockPercent"
+ v-model="carList[index].valueAuto"
size="mini"
style="width: 100px"
- v-if="ifEdit"
+ :type="item.countType=='int'?'number':''"
+ v-if="ifEditCar"
></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].timelyPercent"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].nouniqueCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].dayNoNumberCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].noIntegrityCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
- </el-form-item>
- <el-form-item label="">
- <el-input
- v-model="thresholdList[0].continueNoDataCount"
- size="mini"
- style="width: 100px"
- v-if="ifEdit"
- ></el-input>
- <span v-else>{{ 10 }}</span>
+ <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>
@@ -545,203 +283,6 @@
</el-card></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">
- <template slot-scope="scope">
- <template v-if="scope.row.monitorType === 'face'">
- <div class="table-row">
- <div class="table-row-item">鎶撴媿閲�</div>
- <div class="table-row-item">{{ scope.row.captureNum }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鍙婃椂鐜�</div>
- <div class="table-row-item">{{ scope.row.timelyRate }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">寤惰繜閲�</div>
- <div class="table-row-item">{{ scope.row.delayAmount }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">璁惧娲昏穬鐜�</div>
- <div class="table-row-item">{{ scope.row.deviceActiveRate }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鎶撴媿鍙婃椂鐜�</div>
- <div class="table-row-item">{{ scope.row.timelyCapture }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏃堕挓鍑嗙‘鐜�</div>
- <div class="table-row-item">{{ scope.row.timeAccuracy }}</div>
- </div>
- </template>
- <template v-else-if="scope.row.monitorType === 'car'">
- <div class="table-row">
- <div class="table-row-item">杩囪溅鏁版嵁閲�</div>
- <div class="table-row-item">{{ scope.row.passCarNum }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">杩囪溅缂哄け鐜�</div>
- <div class="table-row-item">{{ scope.row.passCarMissRate }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏈夋晥杩囪溅鏁版嵁閲�</div>
- <div class="table-row-item">
- {{ scope.row.passCarEffectiveNum }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">璁惧娲昏穬鐜�</div>
- <div class="table-row-item">{{ scope.row.deviceActiveRate }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鎶撴媿鍙婃椂鐜�</div>
- <div class="table-row-item">{{ scope.row.timelyCapture }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏃堕挓鍑嗙‘鐜�</div>
- <div class="table-row-item">{{ scope.row.timeAccuracy }}</div>
- </div>
- </template>
- <template v-else-if="scope.row.monitorType === 'video'">
- <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>
- </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>
- <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>
- </div>
- </template>
- </template>
- </el-table-column>
- <el-table-column label="涓嬪彂闃堝��" align="center">
- <template slot-scope="scope">
- <template v-if="scope.row.monitorType === 'face'">
- <div class="table-row">
- <div class="table-row-item">鎶撴媿閲�</div>
- <div class="table-row-item">{{ scope.row.captureNumAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鍙婃椂鐜�</div>
- <div class="table-row-item">{{ scope.row.timelyRateAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">寤惰繜閲�</div>
- <div class="table-row-item">{{ scope.row.delayAmountAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">璁惧娲昏穬鐜�</div>
- <div class="table-row-item">
- {{ scope.row.deviceActiveRateAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鎶撴媿鍙婃椂鐜�</div>
- <div class="table-row-item">
- {{ scope.row.timelyCaptureAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏃堕挓鍑嗙‘鐜�</div>
- <div class="table-row-item">{{ scope.row.timeAccuracyAuto }}</div>
- </div>
- </template>
- <template v-else-if="scope.row.monitorType === 'car'">
- <div class="table-row">
- <div class="table-row-item">杩囪溅鏁版嵁閲�</div>
- <div class="table-row-item">{{ scope.row.passCarNumAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">杩囪溅缂哄け鐜�</div>
- <div class="table-row-item">
- {{ scope.row.passCarMissRateAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏈夋晥杩囪溅鏁版嵁閲�</div>
- <div class="table-row-item">
- {{ scope.row.passCarEffectiveNumAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">璁惧娲昏穬鐜�</div>
- <div class="table-row-item">
- {{ scope.row.deviceActiveRateAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鎶撴媿鍙婃椂鐜�</div>
- <div class="table-row-item">
- {{ scope.row.timelyCaptureAuto }}
- </div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏃堕挓鍑嗙‘鐜�</div>
- <div class="table-row-item">{{ scope.row.timeAccuracyAuto }}</div>
- </div>
- </template>
- <template v-else-if="scope.row.monitorType === 'video'">
- <div class="table-row">
- <div class="table-row-item">鍥惧儚璐ㄩ噺</div>
- <div class="table-row-item">{{ scope.row.imageQualityAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">瑙嗛璐ㄩ噺</div>
- <div class="table-row-item">{{ scope.row.videoQualityAuto }}</div>
- </div>
- <div class="table-row">
- <div class="table-row-item">鏍囨敞鍑嗙‘鐜�</div>
- <div class="table-row-item">
- {{ scope.row.annotationAccuracyAuto }}
- </div>
- </div>
- </template>
- </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>
- </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
@@ -1082,7 +623,7 @@
import {
listThreshold,
getThreshold,
- editVideo,
+ updateThreshold,
} from "@/api/platform/threshold";
import {
editCar,
@@ -1097,7 +638,9 @@
name: "Threshold",
data() {
return {
- ifEdit: false,
+ ifEditVideo: false,
+ ifEditFace: false,
+ ifEditCar: false,
indicators: [],
// 閬僵灞�
loading: true,
@@ -1112,9 +655,10 @@
// 鎬绘潯鏁�
total: 0,
// 杩愮淮闃堝�艰〃鏍兼暟鎹�
- thresholdList: [],
+ thresholdList: {},
videoList: [],
faceList: [],
+ carList: [],
// 寮瑰嚭灞傛爣棰�
title: "",
// 鏄惁鏄剧ず寮瑰嚭灞�
@@ -1202,13 +746,38 @@
this.getList();
},
methods: {
- a() {
- this.ifEdit = true;
+ 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;
+ }
},
- b(){
- console.log(1111111);
- this.ifEdit = false;
- console.log(this.ifEdit);
+ 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") {
@@ -1263,8 +832,10 @@
getList() {
this.loading = true;
listThreshold(this.queryParams).then((response) => {
- this.thresholdList = response.rows;
- this.videoList = this.thresholdList[0];
+ 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;
});
--
Gitblit v1.8.0