Merge branch '648540858:master' into develop-add-api-key

This commit is contained in:
ancienter
2024-04-09 09:52:23 +08:00
committed by GitHub
57 changed files with 741 additions and 414 deletions

View File

@@ -100,9 +100,9 @@
<span v-show="!scope.row.edit">{{ scope.row.location }}</span>
</template>
</el-table-column>
<el-table-column prop="ptztype" label="云台类型" min-width="100">
<el-table-column prop="ptzType" label="云台类型" min-width="100">
<template v-slot:default="scope">
<el-select v-show="scope.row.edit" v-model="scope.row.ptztype"
<el-select v-show="scope.row.edit" v-model="scope.row.ptzType"
placeholder="云台类型" filterable>
<el-option
v-for="(value, key) in ptzTypes"
@@ -111,7 +111,7 @@
:value="key"
/>
</el-select>
<div v-show="!scope.row.edit">{{ scope.row.ptztypeText }}</div>
<div v-show="!scope.row.edit">{{ scope.row.ptzTypeText }}</div>
</template>
</el-table-column>
<el-table-column label="开启音频" min-width="100">
@@ -178,13 +178,24 @@
@click="changeSubchannel(scope.row)">查看
</el-button>
<el-divider v-if="scope.row.subCount > 0 || scope.row.parental === 1" direction="vertical"></el-divider>
<el-button size="medium" v-bind:disabled="device == null || device.online === 0"
icon="el-icon-video-camera"
type="text" @click="queryRecords(scope.row)">设备录像
</el-button>
<el-button size="medium" v-bind:disabled="device == null || device.online === 0" icon="el-icon-cloudy"
type="text" @click="queryCloudRecords(scope.row)">云端录像
</el-button>
<!-- <el-button size="medium" v-bind:disabled="device == null || device.online === 0"-->
<!-- icon="el-icon-video-camera"-->
<!-- type="text" @click="queryRecords(scope.row)">设备录像-->
<!-- </el-button>-->
<!-- <el-button size="medium" v-bind:disabled="device == null || device.online === 0" icon="el-icon-cloudy"-->
<!-- type="text" @click="queryCloudRecords(scope.row)">云端录像-->
<!-- </el-button>-->
<el-dropdown @command="(command)=>{moreClick(command, scope.row)}">
<el-button size="medium" type="text" >
更多功能<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="records" v-bind:disabled="device == null || device.online === 0">
设备录像</el-dropdown-item>
<el-dropdown-item command="cloudRecords" v-bind:disabled="device == null || device.online === 0" >
云端录像</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
</el-table-column>
</el-table>
@@ -312,7 +323,7 @@ export default {
that.total = res.data.data.total;
that.deviceChannelList = res.data.data.list;
that.deviceChannelList.forEach(e => {
e.ptztype = e.ptztype + "";
e.ptzType = e.ptzType + "";
that.$set(e, "edit", false);
that.$set(e, "location", "");
if (e.longitude && e.latitude) {
@@ -372,6 +383,13 @@ export default {
// that.$message.error("请求超时");
});
},
moreClick: function (command, itemData) {
if (command === "records") {
this.queryRecords(itemData)
}else if (command === "cloudRecords") {
this.queryCloudRecords(itemData)
}
},
queryRecords: function (itemData) {
let deviceId = this.deviceId;
let channelId = itemData.channelId;
@@ -460,7 +478,7 @@ export default {
this.total = res.data.data.total;
this.deviceChannelList = res.data.data.list;
this.deviceChannelList.forEach(e => {
e.ptztype = e.ptztype + "";
e.ptzType = e.ptzType + "";
this.$set(e, "edit", false);
this.$set(e, "location", "");
if (e.longitude && e.latitude) {

View File

@@ -131,11 +131,11 @@ export default {
type = 2;
}
console.log(type)
if (item.basicData.ptztype === 1 ) { // 1-球机;2-半球;3-固定枪机;4-遥控枪机
if (item.basicData.ptzType === 1 ) { // 1-球机;2-半球;3-固定枪机;4-遥控枪机
type = 4;
}else if (item.basicData.ptztype === 2) {
}else if (item.basicData.ptzType === 2) {
type = 5;
}else if (item.basicData.ptztype === 3 || item.basicData.ptztype === 4) {
}else if (item.basicData.ptzType === 3 || item.basicData.ptzType === 4) {
type = 6;
}
}else {

View File

@@ -7,7 +7,7 @@
<el-descriptions-item label="设备归属" >{{channel.owner}}</el-descriptions-item>
<el-descriptions-item label="行政区域" >{{channel.civilCode}}</el-descriptions-item>
<el-descriptions-item label="安装地址" >{{channel.address}}</el-descriptions-item>
<el-descriptions-item label="云台类型" >{{channel.ptztypeText}}</el-descriptions-item>
<el-descriptions-item label="云台类型" >{{channel.ptzTypeText}}</el-descriptions-item>
<el-descriptions-item label="经纬度" >{{channel.longitude}},{{channel.latitude}}</el-descriptions-item>
<el-descriptions-item label="状态">
<el-tag size="small" v-if="channel.status === 1">在线</el-tag>

View File

@@ -37,8 +37,8 @@
<el-form-item label="本地端口" prop="devicePort">
<el-input v-model="platform.devicePort" :disabled="true" type="number"></el-input>
</el-form-item>
<el-form-item label="SIP认证用户名" prop="username">
<el-input v-model="platform.username"></el-input>
<el-form-item label="SDP发流IP" prop="sendStreamIp">
<el-input v-model="platform.sendStreamIp"></el-input>
</el-form-item>
</el-form>
</el-col>
@@ -47,6 +47,9 @@
<el-form-item label="行政区划" prop="administrativeDivision">
<el-input v-model="platform.administrativeDivision" clearable></el-input>
</el-form-item>
<el-form-item label="SIP认证用户名" prop="username">
<el-input v-model="platform.username"></el-input>
</el-form-item>
<el-form-item label="SIP认证密码" prop="password">
<el-input v-model="platform.password" ></el-input>
</el-form-item>
@@ -159,7 +162,8 @@ export default {
characterSet: "GB2312",
startOfflinePush: false,
catalogGroup: 1,
administrativeDivision: null,
administrativeDivision: "",
sendStreamIp: null,
},
rules: {
name: [{ required: true, message: "请输入平台名称", trigger: "blur" }],
@@ -198,6 +202,7 @@ export default {
that.platform.devicePort = res.data.data.devicePort;
that.platform.username = res.data.data.username;
that.platform.password = res.data.data.password;
that.platform.sendStreamIp = res.data.data.sendStreamIp;
that.platform.administrativeDivision = res.data.data.username.substr(0, 6);
}
@@ -228,6 +233,7 @@ export default {
this.platform.catalogId = platform.catalogId;
this.platform.startOfflinePush = platform.startOfflinePush;
this.platform.catalogGroup = platform.catalogGroup;
this.platform.sendStreamIp = platform.sendStreamIp;
this.platform.administrativeDivision = platform.administrativeDivision;
this.onSubmit_text = "保存";
this.saveUrl = "/api/platform/save";

View File

@@ -41,8 +41,8 @@ export default {
zlmsdpUrl: url,//流地址
simulecast: false,
useCamera: false,
audioEnable: false,
videoEnable: false,
audioEnable: true,
videoEnable: true,
recvOnly: true,
})
webrtcPlayer.on(ZLMRTCClient.Events.WEBRTC_ICE_CANDIDATE_ERROR,(e)=>{// ICE 协商出错

View File

@@ -243,7 +243,7 @@ export default {
},
getImageByChannel: function (channel) {
let src = "static/images/gis/camera.png"
switch (channel.ptztype) {
switch (channel.ptzType) {
case 1:
if (channel.status === 1) {
src = "static/images/gis/camera1.png"