口罩项目第一版

main
coco1986509808 2023-05-31 21:42:35 +08:00
parent d49c187ce0
commit 5b35c33b11
4 changed files with 58 additions and 31 deletions

View File

@ -1,3 +1,5 @@
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
import store from '@/store' import store from '@/store'

View File

@ -217,7 +217,8 @@
nowRtspurl:"", nowRtspurl:"",
// //
flag : false, flag : false,
textStyle : 70, //70
textStyle : 70.00,
} }
}, },
mounted() { mounted() {
@ -228,6 +229,8 @@
created() { created() {
// //
this.initGetCameraId() this.initGetCameraId()
//
this.initTotal()
// 4 // 4
// this.initGetWarningPicture() // this.initGetWarningPicture()
}, },
@ -312,22 +315,22 @@
this.$http.get(`warning/taskInfo/${cameraId}`).then(res => { this.$http.get(`warning/taskInfo/${cameraId}`).then(res => {
if (res.data.code === 0) { if (res.data.code === 0) {
this.taskName = res.data.data.taskName this.taskName = res.data.data.taskName
this.textStyle = res.data.data.controlThreshold //
this.textStyle = res.data.data.controlThreshold*100;
console.log(this.textStyle)
} else { } else {
this.$message.warning(res.data.message) this.$message.warning(res.data.message)
} }
}) })
}, },
// / // /
initTotal(cameraId) { initTotal() {
this.$http.get(`/warning/todayBayonet/${this.cameraId}`).then(res => { this.$http.get(`/warning/todayBayonet`).then(res => {
if (res.data.code === 0) { if (res.data.code === 0) {
// toDaySnapShot totalSnapShotwsjson // toDaySnapShot totalSnapShot
res.data.data.result.toDaySnapShot = res.data.data.toDaySnapShot this.toDaySnapShot = res.data.data.toDaySnapShot;
res.data.data.result.totalSnapShot = res.data.data.totalSnapShot this.totalSnapShot = res.data.data.totalSnapShot;
this.getPicture(res.data.data.result) // this.getPicture(res.data.data.result)
} else {
//this.$message.error(res.data.message)
} }
}) })
}, },
@ -421,12 +424,15 @@
* @param {Object} wsObj * @param {Object} wsObj
*/ */
getWarningPicture(warningData) { getWarningPicture(warningData) {
this.toDaySnapShot = this.toDaySnapShot + warningData.length //
this.totalSnapShot = this.totalSnapShot + warningData.length this.toDaySnapShot = this.toDaySnapShot - 0 + warningData.length
// this.totalSnapShot = this.totalSnapShot + warningData.length
// warningData2videofacelistcomparelist // warningData2videofacelistcomparelist
for (let i = 0; i < warningData.length; i++) { for (let i = 0; i < warningData.length; i++) {
if(warningData[i].rtspUrl == this.nowRtspurl) {
this.videoFaceList.unshift(warningData[i]) this.videoFaceList.unshift(warningData[i])
} }
}
// this.videoFaceList = warningData; // this.videoFaceList = warningData;
// console.log("this is videofacelist") // console.log("this is videofacelist")
// console.log(this.videoFaceList) // console.log(this.videoFaceList)
@ -516,7 +522,7 @@
this.cameraId = data.id this.cameraId = data.id
// id // id
this.treeArr = data.camera_region_firstlevel.split(",") this.treeArr = data.camera_region_firstlevel.split(",")
// // ,
this.getTaskNameByCameraId(this.cameraId) this.getTaskNameByCameraId(this.cameraId)
// //
//this.initTotal(this.cameraId) //this.initTotal(this.cameraId)

View File

@ -71,12 +71,12 @@
<!-- </div>--> <!-- </div>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item style="margin-bottom:0px" label="处置类型" prop="disposalType"> <el-form-item style="margin-bottom:0px" label="处置类型" prop="disposalType">
<el-radio v-model="addForm.disposalType" :label="item.label" v-for="item in warningTypeList" :key="item.value">{{item.label}}</el-radio> <!-- <el-radio v-model="addForm.disposalType" :label="item.label" v-for="item in warningTypeList" :key="item.value">{{item.label}}</el-radio>-->
<!-- <el-radio v-model="addForm.disposalType" label="1"></el-radio> <!-- &lt;!&ndash; <el-radio v-model="addForm.disposalType" label="1"></el-radio>-->
<el-radio v-model="addForm.disposalType" label="2"></el-radio> <el-radio v-model="addForm.disposalType" label="2"></el-radio>
<el-radio v-model="addForm.disposalType" label="3"></el-radio> --> <!-- <el-radio v-model="addForm.disposalType" label="3"></el-radio> &ndash;&gt;-->
<p v-if="addForm.disposalType == '1'" class="add_p">,</p> <p v-if="addForm.disposalType == '1'" class="add_p">,</p>
<p v-else-if="addForm.disposalType == '2'" class="add_p">普通告警结果针对需要关注的对象</p> <p v-else-if="addForm.disposalType == '2'" class="add_p">普通监控针对区域内所有对象</p>
<p v-else class="add_p">结果通知可用于演示或测试使用</p> <p v-else class="add_p">结果通知可用于演示或测试使用</p>
</el-form-item> </el-form-item>
<el-form-item label="布控区域" prop="monitorArea"> <el-form-item label="布控区域" prop="monitorArea">
@ -168,10 +168,10 @@
<!-- <img :src="addForm2.imgurl" class="avatar">--> <!-- <img :src="addForm2.imgurl" class="avatar">-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item style="margin-bottom:0px" label="处置类型" prop="disposalType"> <el-form-item style="margin-bottom:0px" label="处置类型" prop="disposalType">
<el-radio v-model="addForm2.disposalType" :label="item.label" v-for="item in warningTypeList" :key="item.value">{{item.label}}</el-radio> <!-- <el-radio v-model="addForm2.disposalType" :label="item.label" v-for="item in warningTypeList" :key="item.value">{{item.label}}</el-radio>-->
<!-- <el-radio v-model="addForm2.disposalType" label="1"></el-radio> <!-- &lt;!&ndash; <el-radio v-model="addForm2.disposalType" label="1"></el-radio>-->
<el-radio v-model="addForm2.disposalType" label="2"></el-radio> <el-radio v-model="addForm2.disposalType" label="2"></el-radio>
<el-radio v-model="addForm2.disposalType" label="3"></el-radio> --> <!-- <el-radio v-model="addForm2.disposalType" label="3"></el-radio> &ndash;&gt;-->
<!-- <p v-if="addForm2.disposalType == '1'" style="margin:0px">,</p>--> <!-- <p v-if="addForm2.disposalType == '1'" style="margin:0px">,</p>-->
<!-- <p v-else-if="addForm2.disposalType == '2'" style="margin:0px">普通告警结果针对需要关注的对象</p>--> <!-- <p v-else-if="addForm2.disposalType == '2'" style="margin:0px">普通告警结果针对需要关注的对象</p>-->
<!-- <p v-else style="margin:0px">结果通知可用于演示或测试使用</p>--> <!-- <p v-else style="margin:0px">结果通知可用于演示或测试使用</p>-->
@ -198,6 +198,8 @@
</span> </span>
</el-dialog> </el-dialog>
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pages.pageNo" <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pages.pageNo"
:page-sizes="[10, 20, 30, 40]" :page-size="pages.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total"> :page-sizes="[10, 20, 30, 40]" :page-size="pages.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total">
</el-pagination> </el-pagination>
@ -297,7 +299,7 @@
}], }],
cameraList: [{ cameraList: [{
required: true, required: true,
message: '请选择摄像头(如果没有数据可选,请移至资源-摄像头匹配)', message: '请选择摄像头(如果没有数据可选,请移至摄像头管理)',
trigger: 'change' trigger: 'change'
}], }],
monitorThreshold: [{ monitorThreshold: [{
@ -530,13 +532,18 @@
taskName: this.addForm2.taskName, taskName: this.addForm2.taskName,
disposalType: this.addForm2.disposalType, disposalType: this.addForm2.disposalType,
remarks: this.addForm2.remarks, remarks: this.addForm2.remarks,
idControlTask: this.editorId idControlTask: this.editorId,
controlThreshold: this.addForm2.controlThreshold / 100
} }
this.$http.put('/control/updatetask', data) this.$http.put('/control/updatetask', data)
.then(res => { .then(res => {
if (res.data.code == 0) { if (res.data.code == 0) {
this.addDialogVisible2 = false this.addDialogVisible2 = false
this.data(this.pages) this.data(this.pages)
this.$message({
type: "success",
message: "修改成功"
});
} }
}) })
@ -549,6 +556,8 @@
clickStart(id) { clickStart(id) {
this.$http.post(`/control/resumecontrol/${id}`) this.$http.post(`/control/resumecontrol/${id}`)
.then(res => { .then(res => {
console.log("开始")
console.log(res.data)
if (res.data.code == 0) { if (res.data.code == 0) {
this.data(this.pages) this.data(this.pages)
this.$message({ this.$message({
@ -567,6 +576,8 @@
clickSuspend(id) { clickSuspend(id) {
this.$http.post(`/control/suspendcontrol/${id}`) this.$http.post(`/control/suspendcontrol/${id}`)
.then(res => { .then(res => {
console.log("暂停")
console.log(res.data)
if (res.data.code == 0) { if (res.data.code == 0) {
this.data(this.pages) this.data(this.pages)
this.$message({ this.$message({

View File

@ -29,7 +29,7 @@
<el-row :gutter="20" style="margin-top: 20px;"> <el-row :gutter="20" style="margin-top: 20px;">
<el-col :span="8" v-for="(item,index) in warningList" :key=index.libId> <el-col :span="8" v-for="(item,index) in warningList" :key=index.time>
<div style="background-color: #FFF;margin-bottom: 20px;border-radius: 2px;cursor: pointer;" @click="openTask(item)"> <div style="background-color: #FFF;margin-bottom: 20px;border-radius: 2px;cursor: pointer;" @click="openTask(item)">
<div style="height:40px;line-height:40px;display:flex;justify-content: space-between;border-bottom: 1px solid #F1F8FF;box-sizing: border-box;"> <div style="height:40px;line-height:40px;display:flex;justify-content: space-between;border-bottom: 1px solid #F1F8FF;box-sizing: border-box;">
<i> <i>
@ -41,8 +41,8 @@
<div style="display: flex;align-items: center;height: 150px;margin-left: 30px;"> <div style="display: flex;align-items: center;height: 150px;margin-left: 30px;">
<div style="width: 120px;height: 120px;background: #F1F6F9;"> <div style="width: 120px;height: 120px;background: #F1F6F9;">
<img :src="item.cphoto" alt="目标图片" height="100%"> <img :src="item.cphoto" alt="目标图片" height="100%">
<canvas width=120 height=120 :ref="'warningImage'+index"> <!-- <canvas width=120 height=120 :ref="'warningImage'+index">-->
</canvas> <!-- </canvas>-->
</div> </div>
<!-- 可考虑用背景图 --> <!-- 可考虑用背景图 -->
<div style="width: 120px;height: 120px;background: #F1F6F9;margin: 0 20px;text-align: center;"> <div style="width: 120px;height: 120px;background: #F1F6F9;margin: 0 20px;text-align: center;">
@ -55,7 +55,8 @@
<span><i>相似度</i><i style="font-size: 30px;font-weight: 600;color: #FF343E;font-family:Bahnschrift;">{{(item.xsd*1).toFixed(2)}}%</i></span> <span><i>相似度</i><i style="font-size: 30px;font-weight: 600;color: #FF343E;font-family:Bahnschrift;">{{(item.xsd*1).toFixed(2)}}%</i></span>
</div> </div>
</div> </div>
<div style="position: absolute;top:20px;right: 30px;"> <div style="position: absolute;top:20px;right: 5px;">
<img src="../../../assets/img/warning/jk.png" alt="监控">
<img v-if="item.taskType=='3'" src="../../../assets/img/warning/ts.png" alt="提示"> <img v-if="item.taskType=='3'" src="../../../assets/img/warning/ts.png" alt="提示">
<img v-if="item.taskType=='2'" src="../../../assets/img/warning/jk.png" alt="监控"> <img v-if="item.taskType=='2'" src="../../../assets/img/warning/jk.png" alt="监控">
<img v-if="item.taskType=='1'" src="../../../assets/img/warning/zb.png" alt="抓捕"> <img v-if="item.taskType=='1'" src="../../../assets/img/warning/zb.png" alt="抓捕">
@ -68,8 +69,9 @@
<task v-if="taskVisible" ref="task" @refreshTaskList></task> <task v-if="taskVisible" ref="task" @refreshTaskList></task>
<!-- 地图详情 --> <!-- 地图详情 -->
<warning-map ref="mapRef" @mapRefClick="mapRefClick"> </warning-map> <warning-map ref="mapRef" @mapRefClick="mapRefClick"> </warning-map>
<el-pagination @current-change="handleCurrentChange" :current-page.sync="pageObj.page.pageNo" :page-size="pageObj.page.pageSize" <el-pagination style="margin-top:20px" background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="pageObj.page.pageNo"
layout="total,prev, pager, next, jumper" :total="total"> :page-size="pageObj.page.pageSize" :page-sizes="[9, 12, 15, 18,21,24]"
layout="total,prev, pager, next, jumper,sizes" :total="total">
</el-pagination> </el-pagination>
</div> </div>
</template> </template>
@ -106,7 +108,8 @@ export default {
// Id // Id
taskId: "", taskId: "",
// //
warningList: this.$route.params.videoFaceList, warningList:[],
// this.$route.params.videoFaceList,
// //
taskVisible: false, taskVisible: false,
val: {} val: {}
@ -267,6 +270,11 @@ export default {
this.getWarningList() this.getWarningList()
}, },
// //
// el-pagination
handleSizeChange: function(pageSize) {
this.pageObj.page.pageSize = pageSize
this.handleCurrentChange(this.pageObj.page.pageNo);
},
handleCurrentChange(val) { handleCurrentChange(val) {
this.pageObj.page.pageNo = val this.pageObj.page.pageNo = val
let dateArr = this.formData.dateValue let dateArr = this.formData.dateValue