物联设备处理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: '设备标识', title: '设备标识',
align: "center", align: "center",
dataIndex: 'deviceIndex' dataIndex: 'sn'
}, },
// { // {
// title: '设备型号', // title: '设备型号',

View File

@ -13,7 +13,7 @@
<a-col :lg="6"> <a-col :lg="6">
<a-form-item name="dimension"> <a-form-item name="dimension">
<template #label><span title="设备维度">设备维度</span></template> <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-form-item>
</a-col> </a-col>
<a-col :lg="6"> <a-col :lg="6">

View File

@ -2,14 +2,14 @@
<!-- <a-spin :spinning="confirmLoading">--> <!-- <a-spin :spinning="confirmLoading">-->
<a-row> <a-row>
<a-col :span="24"> <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" @mousedown="onCameraMouseDown" @mousemove="onCameraMouseMove" @mouseup="onCameraMouseUp"
@mouseleave="onCameraMouseLeave" @wheel="onCameraWheel" @contextmenu.prevent @mouseleave="onCameraMouseLeave" @wheel="onCameraWheel" @contextmenu.prevent
></div> ></div>
<div id="videview" style="height:0px;"></div> <div id="videview" style="height:0px;"></div>
</a-col> </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;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;"> <table style="width: 130px;height:96px;margin: 5px 0px 5px 0px;">
<tbody> <tbody>
<tr> <tr>
@ -32,7 +32,7 @@
</tr> </tr>
</tbody> </tbody>
</table> </table>
</a-col> </a-col>-->
<!-- <a-col :span="24" style="text-align: center;margin-top: 15px;margin-bottom: 15px;"> <!-- <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="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> <span class="buttonSpan djImg" @click="stopPhone" v-show="izPhone"><span style="margin-left:30px;">结束</span></span>

View File

@ -11,7 +11,32 @@
<template #footer> <template #footer>
<view style="display: flex;align-items: center; width: 100%;justify-content: space-between;"> <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"/> --> <!-- <img src="../../../../../assets/iot/monitor_1.png" class="buttonImg"/> -->
<span class="buttonSpan djImg" @click="startPhone" v-show="!izPhone"><span <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'; import JModal from '/@/components/Modal/src/JModal/JModal.vue';
const title = ref<string>(''); const title = ref<string>('');
const width = ref<string>('1300'); const width = ref<string>('1100');
const visible = ref<boolean>(false); const visible = ref<boolean>(false);
const showCamera = ref<boolean>(false); const showCamera = ref<boolean>(false);
const disableSubmit = ref<boolean>(false); const disableSubmit = ref<boolean>(false);
@ -83,7 +108,7 @@ import {
setImageSwitch, setImageSwitch,
getMultitransUrl, getMultitransUrl,
getPreviewUrl, getPreviewUrl,
testAudio testAudio,motionCtrl
} from "../camera.api"; } from "../camera.api";
const props = defineProps({ 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 { .hmxzImg:hover {
background: url('../../../../../assets/iot/monitor_7_1.png') left/contain no-repeat; 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> </style>