物联设备处理bug

This commit is contained in:
曹磊 2026-03-24 09:03:26 +08:00
parent 77a0437448
commit d5b13bb469
4 changed files with 97 additions and 8 deletions

View File

@ -58,7 +58,7 @@ export const columnsTy: BasicColumn[] = [
{
title: '设备标识',
align: "center",
dataIndex: 'deviceIndex'
dataIndex: 'sn'
},
// {
// title: '设备型号',

View File

@ -13,7 +13,7 @@
<a-col :lg="6">
<a-form-item name="dimension">
<template #label><span title="设备维度">设备维度</span></template>
<j-dict-select-tag v-model:value="queryParam.dimension" :showLabel="false" dictCode="dimension" placeholder="请选择设备度" />
<j-dict-select-tag v-model:value="queryParam.dimension" :showLabel="false" dictCode="dimension" placeholder="请选择设备度" />
</a-form-item>
</a-col>
<a-col :lg="6">

View File

@ -2,14 +2,14 @@
<!-- <a-spin :spinning="confirmLoading">-->
<a-row>
<a-col :span="24">
<div id="video-container-preview" style="min-height: 400px;"
<div id="video-container-preview" style="width: 1075px;"
@mousedown="onCameraMouseDown" @mousemove="onCameraMouseMove" @mouseup="onCameraMouseUp"
@mouseleave="onCameraMouseLeave" @wheel="onCameraWheel" @contextmenu.prevent
></div>
<div id="videview" style="height:0px;"></div>
</a-col>
<!-- <a-col :span="24" style="margin-top: -120px;margin-left:40px;" v-show="formData.ptz == '1'"> -->
<a-col :span="24" style="margin-top: -120px ">
<!-- <a-col :span="24" style="margin-top: -120px ">
<table style="width: 130px;height:96px;margin: 5px 0px 5px 0px;">
<tbody>
<tr>
@ -32,7 +32,7 @@
</tr>
</tbody>
</table>
</a-col>
</a-col>-->
<!-- <a-col :span="24" style="text-align: center;margin-top: 15px;margin-bottom: 15px;">
<span class="buttonSpan djImg" @click="startPhone" v-show="!izPhone"><span style="margin-left:30px;">对讲</span></span>
<span class="buttonSpan djImg" @click="stopPhone" v-show="izPhone"><span style="margin-left:30px;">结束</span></span>

View File

@ -11,7 +11,32 @@
<template #footer>
<view style="display: flex;align-items: center; width: 100%;justify-content: space-between;">
<a-col :span="20" style="text-align: center;margin-top: 15px;margin-bottom: 15px;">
<!-- <a-col :span="20" style="text-align: center;margin-top: 15px;margin-bottom: 15px;">-->
<a-col :span="20" style="text-align: center;">
<span class="buttonSpan">
<table style="width: 130px;height:96px;margin: 5px 0px 5px 0px;">
<tbody>
<tr>
<td></td>
<td style="width:100px;text-align:center;">
<div class="fxjImgUp" @mousedown="moveCtrl(1,1,1)" @mouseup="moveCtrl(1,0,1)"></div>
</td>
<td></td>
</tr>
<tr>
<td style="width:90px;text-align:center;">
<div class="fxjImgLeft" @mousedown="moveCtrl(3,1,1)" @mouseup="moveCtrl(3,0,1)"></div>
</td>
<td style="width:100px;text-align:center;">
<div class="fxjImgDown" @mousedown="moveCtrl(7,1,1)" @mouseup="moveCtrl(7,0,1)"></div>
</td>
<td style="width:100px;text-align:center;">
<div class="fxjImgRight" @mousedown="moveCtrl(5,1,1)" @mouseup="moveCtrl(5,0,1)"></div>
</td>
</tr>
</tbody>
</table>
</span>
<!-- 对讲停止对讲 切换 -->
<!-- <img src="../../../../../assets/iot/monitor_1.png" class="buttonImg"/> -->
<span class="buttonSpan djImg" @click="startPhone" v-show="!izPhone"><span
@ -66,7 +91,7 @@ import CameraPreviewForm from './CameraPreviewForm.vue'
import JModal from '/@/components/Modal/src/JModal/JModal.vue';
const title = ref<string>('');
const width = ref<string>('1300');
const width = ref<string>('1100');
const visible = ref<boolean>(false);
const showCamera = ref<boolean>(false);
const disableSubmit = ref<boolean>(false);
@ -83,7 +108,7 @@ import {
setImageSwitch,
getMultitransUrl,
getPreviewUrl,
testAudio
testAudio,motionCtrl
} from "../camera.api";
const props = defineProps({
@ -363,6 +388,34 @@ function recordingEnd() {
});
}
/**
* 控制球机移动
*/
function moveCtrl(direction, startOrNot, speed) {
if (!formData.deviceIndex) return;
let params = {
"deviceIndex": formData.deviceIndex,
"direction": direction,
"startOrNot": startOrNot,
"speed": speed,
};
motionCtrl(params);
if (startOrNot === 1) {
const directions = {
1: '上',
3: '左',
5: '右',
7: '下',
9: '缩小',
10: '放大',
11: '对焦'
};
const action = startOrNot === 1 ? '开始' : '停止';
}
}
/**
* 销毁
*/
@ -478,4 +531,40 @@ defineExpose({
.hmxzImg:hover {
background: url('../../../../../assets/iot/monitor_7_1.png') left/contain no-repeat;
}
.fxjImgUp{
width:50px;height: 50px;
margin-right:10px;vertical-align: bottom;
cursor: pointer;
border-radius: 5px;transform: rotate(270deg);
background: url('../../../../../assets/iot/fxj.png') center/contain no-repeat;
}
.fxjImgUp:hover{
background: url('../../../../../assets/iot/fxj_blue.png') center/contain no-repeat;
}
.fxjImgLeft{
width:50px;height: 50px;margin-right:10px;vertical-align: bottom;transform: rotate(180deg);
cursor: pointer;
background: url('../../../../../assets/iot/fxj.png') center/contain no-repeat;
}
.fxjImgLeft:hover{
background: url('../../../../../assets/iot/fxj_blue.png') center/contain no-repeat;
}
.fxjImgDown{
width:50px;height: 50px;margin-right:10px;vertical-align: bottom;transform: rotate(90deg);
cursor: pointer;
background: url('../../../../../assets/iot/fxj.png') center/contain no-repeat;
}
.fxjImgDown:hover{
background: url('../../../../../assets/iot/fxj_blue.png') center/contain no-repeat;
}
.fxjImgRight{
width:50px;height: 50px;margin-right:10px;vertical-align: bottom;
cursor: pointer;
background: url('../../../../../assets/iot/fxj.png') center/contain no-repeat;
}
.fxjImgRight:hover{
background: url('../../../../../assets/iot/fxj_blue.png') center/contain no-repeat;
}
</style>