Compare commits
2 Commits
84abb2fde3
...
d3d9ac328d
Author | SHA1 | Date |
---|---|---|
wuhongjian | d3d9ac328d | |
wuhongjian | 555672eeb8 |
|
@ -2,37 +2,41 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2020-07-07 16:03:23
|
* @Date: 2020-07-07 16:03:23
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-10-13 20:53:24
|
* @LastEditTime: 2022-11-26 18:40:08
|
||||||
* @Description: 数据资源参数配置
|
* @Description: 数据资源参数配置
|
||||||
*/
|
*/
|
||||||
// eslint-disable-next-line no-undef
|
// eslint-disable-next-line no-undef
|
||||||
const newLocation = CONFIGITEM.version
|
const newLocation = CONFIGITEM.version
|
||||||
// const newLocation = 'baotou'
|
// const newLocation = 'baotou'
|
||||||
// const newLocation = 'xihaian'
|
// const newLocation = 'xihaian'
|
||||||
|
|
||||||
// 数据资源数据
|
// 数据资源数据
|
||||||
const whoShow = {}
|
const whoShow = {}
|
||||||
const launchedDataNumObject = {}
|
const launchedDataNumObject = {}
|
||||||
// 导航数据
|
// 导航数据
|
||||||
const navListManagement = {}
|
const navListManagement = {}
|
||||||
// 无人机单兵数据
|
// 无人机单兵数据
|
||||||
const uavAndIndividualSoldier = {}
|
const uavAndIndividualSoldier = {}
|
||||||
// 基础设施
|
// 基础设施
|
||||||
const infrastructure = {}
|
const infrastructure = {}
|
||||||
// 区市站点数据
|
// 区市站点数据
|
||||||
const mapTestNum = {}
|
const mapTestNum = {}
|
||||||
// 底部数据
|
// 底部数据
|
||||||
const footerDataList = {}
|
const footerDataList = {}
|
||||||
// 西海岸--特殊用户
|
// 西海岸--特殊用户
|
||||||
const xhaHasPermissionUser = {}
|
const xhaHasPermissionUser = {}
|
||||||
// qingdao
|
// qingdao
|
||||||
if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
whoShow.itShowQingDao = true
|
whoShow.itShowQingDao = true
|
||||||
infrastructure.deptName = '青岛市大数据发展管理局'
|
infrastructure.deptName = '青岛市大数据发展管理局'
|
||||||
infrastructure.deptId = '1067246875800000066'
|
infrastructure.deptId = '1067246875800000066'
|
||||||
navListManagement.navList = [
|
navListManagement.navList = [
|
||||||
{ name: '共享门户', key: 'home' },
|
{ name: '共享门户', key: 'home' },
|
||||||
{ name: '能力集市', key: 'DetailsPageconetent', innerKey: 'algorithmCompare' },
|
{
|
||||||
|
name: '能力集市',
|
||||||
|
key: 'DetailsPageconetent',
|
||||||
|
innerKey: 'algorithmCompare',
|
||||||
|
},
|
||||||
{ name: '能力云图', key: 'capabilityCloud' },
|
{ name: '能力云图', key: 'capabilityCloud' },
|
||||||
{ name: '能力统计', key: 'abilityStatistics' },
|
{ name: '能力统计', key: 'abilityStatistics' },
|
||||||
// { name: '开发指南', key: 'developmentGuide' },
|
// { name: '开发指南', key: 'developmentGuide' },
|
||||||
|
@ -50,7 +54,8 @@ if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
left: '青岛市大数据发展管理局',
|
left: '青岛市大数据发展管理局',
|
||||||
right: '政府标识码3702000106',
|
right: '政府标识码3702000106',
|
||||||
},
|
},
|
||||||
address: [{
|
address: [
|
||||||
|
{
|
||||||
name: '邮编: 266071',
|
name: '邮编: 266071',
|
||||||
value: 'Email: QDDSJJ@qingdao.shandong.cn',
|
value: 'Email: QDDSJJ@qingdao.shandong.cn',
|
||||||
},
|
},
|
||||||
|
@ -64,7 +69,8 @@ if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
mapTestNum.lsNum = [{
|
mapTestNum.lsNum = [
|
||||||
|
{
|
||||||
name: '基础设施',
|
name: '基础设施',
|
||||||
key: 'lsjcss',
|
key: 'lsjcss',
|
||||||
num: '20135个',
|
num: '20135个',
|
||||||
|
@ -80,7 +86,8 @@ if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
num: '28个',
|
num: '28个',
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
mapTestNum.xhaNum = [{
|
mapTestNum.xhaNum = [
|
||||||
|
{
|
||||||
name: '基础设施',
|
name: '基础设施',
|
||||||
key: 'xhajcss',
|
key: 'xhajcss',
|
||||||
num: '35282个',
|
num: '35282个',
|
||||||
|
@ -105,7 +112,8 @@ if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
// baotou
|
// baotou
|
||||||
else if (newLocation === 'baotou') {
|
else if (newLocation === 'baotou') {
|
||||||
whoShow.itShowBaoTou = true
|
whoShow.itShowBaoTou = true
|
||||||
launchedDataNumObject.launchedDataNum = [{
|
launchedDataNumObject.launchedDataNum = [
|
||||||
|
{
|
||||||
num: 10372,
|
num: 10372,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -132,7 +140,8 @@ else if (newLocation === 'baotou') {
|
||||||
left: '包头市工业和信息化局大数据中心建设',
|
left: '包头市工业和信息化局大数据中心建设',
|
||||||
right: '海信网络科技股份有限公司',
|
right: '海信网络科技股份有限公司',
|
||||||
},
|
},
|
||||||
address: [{
|
address: [
|
||||||
|
{
|
||||||
name: '蒙ICP备05003330-1号',
|
name: '蒙ICP备05003330-1号',
|
||||||
value: '政府标识码1502000040',
|
value: '政府标识码1502000040',
|
||||||
},
|
},
|
||||||
|
@ -153,32 +162,41 @@ else if (newLocation === 'xihaian') {
|
||||||
infrastructure.deptName = '西海岸新区大数据发展'
|
infrastructure.deptName = '西海岸新区大数据发展'
|
||||||
// infrastructure.deptId = '1067246875800000066'
|
// infrastructure.deptId = '1067246875800000066'
|
||||||
uavAndIndividualSoldier.num = 4
|
uavAndIndividualSoldier.num = 4
|
||||||
uavAndIndividualSoldier.uavList = [{
|
uavAndIndividualSoldier.uavList = [
|
||||||
|
{
|
||||||
name: '经纬 M300 RTK-1',
|
name: '经纬 M300 RTK-1',
|
||||||
url: '',
|
url: '',
|
||||||
details: [{
|
details: [
|
||||||
|
{
|
||||||
name: '飞行器',
|
name: '飞行器',
|
||||||
attribute: {
|
attribute: {
|
||||||
尺寸: '尺寸(展开,不包含桨叶):810×670×430 mm(长×宽×高);尺寸(折叠,包含桨叶):430×420×430 mm(长×宽×高)',
|
尺寸: '尺寸(展开,不包含桨叶):810×670×430 mm(长×宽×高);尺寸(折叠,包含桨叶):430×420×430 mm(长×宽×高)',
|
||||||
对称电机轴距: '895 mm',
|
对称电机轴距: '895 mm',
|
||||||
'重量(含下置单云台支架):空机重量(不含电池)': '3.6 kg;空机重量(含双电池):6.3 kg',
|
'重量(含下置单云台支架):空机重量(不含电池)':
|
||||||
|
'3.6 kg;空机重量(含双电池):6.3 kg',
|
||||||
单云台减震球最大负重: '930g',
|
单云台减震球最大负重: '930g',
|
||||||
最大起飞重量: '9 kg',
|
最大起飞重量: '9 kg',
|
||||||
工作频率: '2.4000-2.4835 GHz;5.725-5.850 GHz',
|
工作频率: '2.4000-2.4835 GHz;5.725-5.850 GHz',
|
||||||
'发射功率(EIRP)': '2.4000-2.4835 GHz:29.5 dBm(FCC)、18.5dBm(CE)、18.5 dBm(SRRC)、18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC)、12.5dBm(CE)、28.5 dBm(SRRC)',
|
'发射功率(EIRP)':
|
||||||
'悬停精度(P-GPS)': '垂直:±0.1 m(视觉定位正常工作时)、±0.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时);水平:±0.3 m(视觉定位正常工作时)、±1.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时)',
|
'2.4000-2.4835 GHz:29.5 dBm(FCC)、18.5dBm(CE)、18.5 dBm(SRRC)、18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC)、12.5dBm(CE)、28.5 dBm(SRRC)',
|
||||||
'RTK 位置精度': '在 RTK FIX 时:1 cm+1 ppm(水平)、1.5 cm + 1 ppm(垂直)',
|
'悬停精度(P-GPS)':
|
||||||
|
'垂直:±0.1 m(视觉定位正常工作时)、±0.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时);水平:±0.3 m(视觉定位正常工作时)、±1.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时)',
|
||||||
|
'RTK 位置精度':
|
||||||
|
'在 RTK FIX 时:1 cm+1 ppm(水平)、1.5 cm + 1 ppm(垂直)',
|
||||||
最大旋转角速度: '俯仰轴:300°/s、航向轴:100°/s',
|
最大旋转角速度: '俯仰轴:300°/s、航向轴:100°/s',
|
||||||
最大俯仰角度: '30° (P模式且前视视觉系统启用:25°)',
|
最大俯仰角度: '30° (P模式且前视视觉系统启用:25°)',
|
||||||
最大上升速度: 'S 模式:6 m/s、P 模式:5 m/s',
|
最大上升速度: 'S 模式:6 m/s、P 模式:5 m/s',
|
||||||
'最大下降速度(垂直)': 'S 模式:5 m/s、P 模式:4 m/s',
|
'最大下降速度(垂直)': 'S 模式:5 m/s、P 模式:4 m/s',
|
||||||
最大倾斜下降速度: 'S 模式:7 m/s',
|
最大倾斜下降速度: 'S 模式:7 m/s',
|
||||||
最大水平飞行速度: 'S 模式:23 m/s、P 模式:17 m/s',
|
最大水平飞行速度: 'S 模式:23 m/s、P 模式:17 m/s',
|
||||||
最大飞行海拔高度: '5000 m(2110 桨叶,起飞重量≤7 kg)/ 7000 m(2195 高原静音桨叶,起飞重量≤7 kg)',
|
最大飞行海拔高度:
|
||||||
|
'5000 m(2110 桨叶,起飞重量≤7 kg)/ 7000 m(2195 高原静音桨叶,起飞重量≤7 kg)',
|
||||||
最大可承受风速: '15m/s(起飞及降落阶段为12m/s)',
|
最大可承受风速: '15m/s(起飞及降落阶段为12m/s)',
|
||||||
最大飞行时间: '55 min',
|
最大飞行时间: '55 min',
|
||||||
'适配 DJI 云台': '禅思 XT2、禅思 XT S、禅思 Z30、禅思 H20、禅思 H20T、DJI P1、DJI L1',
|
'适配 DJI 云台':
|
||||||
支持云台安装方式: '下置单云台、上置单云台、下置双云台、下置单云台+上置单云台、下置双云台+上置单云台',
|
'禅思 XT2、禅思 XT S、禅思 Z30、禅思 H20、禅思 H20T、DJI P1、DJI L1',
|
||||||
|
支持云台安装方式:
|
||||||
|
'下置单云台、上置单云台、下置双云台、下置单云台+上置单云台、下置双云台+上置单云台',
|
||||||
'IP 防护等级': 'IP45',
|
'IP 防护等级': 'IP45',
|
||||||
GNSS: 'GPS+GLONASS+BeiDou+Galileo',
|
GNSS: 'GPS+GLONASS+BeiDou+Galileo',
|
||||||
工作环境温度: '-20°C 至 50°C',
|
工作环境温度: '-20°C 至 50°C',
|
||||||
|
@ -188,10 +206,14 @@ else if (newLocation === 'xihaian') {
|
||||||
name: '遥控器',
|
name: '遥控器',
|
||||||
attribute: {
|
attribute: {
|
||||||
工作频率: '2.4000-2.4835 GHz、5.725-5.850 GHz',
|
工作频率: '2.4000-2.4835 GHz、5.725-5.850 GHz',
|
||||||
'最大信号有效距离(无干扰、无遮挡)': 'NCC/FCC:15 km、CE/MIC:8 km、SRRC:8 km',
|
'最大信号有效距离(无干扰、无遮挡)':
|
||||||
'等效全向辐射功率(EIRP)': '2.4000-2.4835 GHz:29.5 dBm(FCC);18.5dBm(CE)、18.5 dBm(SRRC);18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC);12.5dBm(CE)、20.5 dBm(SRRC)',
|
'NCC/FCC:15 km、CE/MIC:8 km、SRRC:8 km',
|
||||||
外置电池: '名称:WB37 智能电池;容量:4920 mAh;电压:7.6 V;电池类型:LiPo;能量:37.39 Wh;充电时间(使用 BS60 智能电池箱):70 分钟(15°C 至 45°C);130 分钟(0°C 至 15°C)',
|
'等效全向辐射功率(EIRP)':
|
||||||
内置电池: '类型:18650 锂离子电池 (5000 mAh @ 7.2 V);充电方式:使用规格为 12V/2A 的 USB 充电器;额定功率:17 W;充电时间:2 小时 15 分钟(使用规格为12V/2A 的 USB 充电器)',
|
'2.4000-2.4835 GHz:29.5 dBm(FCC);18.5dBm(CE)、18.5 dBm(SRRC);18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC);12.5dBm(CE)、20.5 dBm(SRRC)',
|
||||||
|
外置电池:
|
||||||
|
'名称:WB37 智能电池;容量:4920 mAh;电压:7.6 V;电池类型:LiPo;能量:37.39 Wh;充电时间(使用 BS60 智能电池箱):70 分钟(15°C 至 45°C);130 分钟(0°C 至 15°C)',
|
||||||
|
内置电池:
|
||||||
|
'类型:18650 锂离子电池 (5000 mAh @ 7.2 V);充电方式:使用规格为 12V/2A 的 USB 充电器;额定功率:17 W;充电时间:2 小时 15 分钟(使用规格为12V/2A 的 USB 充电器)',
|
||||||
续航时间: '内置电池:约 2.5 小时内置电池+外置电池:约 4.5 小时',
|
续航时间: '内置电池:约 2.5 小时内置电池+外置电池:约 4.5 小时',
|
||||||
'USB-A 接口供电电压/电流': '5 V / 1.5 A',
|
'USB-A 接口供电电压/电流': '5 V / 1.5 A',
|
||||||
工作环境温度: '-20° 至 40° C',
|
工作环境温度: '-20° 至 40° C',
|
||||||
|
@ -202,7 +224,8 @@ else if (newLocation === 'xihaian') {
|
||||||
attribute: {
|
attribute: {
|
||||||
障碍物感知范围: '前后左右:0.7-40 m、上下:0.6-30 m',
|
障碍物感知范围: '前后左右:0.7-40 m、上下:0.6-30 m',
|
||||||
FOV: '前后下:65°(H),50°(V)、左右上:75°(H),60°(V)',
|
FOV: '前后下:65°(H),50°(V)、左右上:75°(H),60°(V)',
|
||||||
使用环境: '表面有丰富纹理,光照条件充足(>15 lux,室内日光灯正常照射环境)',
|
使用环境:
|
||||||
|
'表面有丰富纹理,光照条件充足(>15 lux,室内日光灯正常照射环境)',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -238,8 +261,10 @@ else if (newLocation === 'xihaian') {
|
||||||
电池整体重量: '约 1.35 kg',
|
电池整体重量: '约 1.35 kg',
|
||||||
工作环境温度: '-20℃ 至 50℃',
|
工作环境温度: '-20℃ 至 50℃',
|
||||||
理想存放环境温度: '22℃ 至 30℃',
|
理想存放环境温度: '22℃ 至 30℃',
|
||||||
充电环境温度: '-20°C 至 40°C(当环境温度低于 5°C时,电池会启动自加热功能,在低温环境下充电有可能会降低电池使用寿命)',
|
充电环境温度:
|
||||||
充电时间: '使用 BS60 智能电池箱时,使用 220 V 电源:完全充满两块 TB60 智能飞行电池约需 60 分钟,从 20% 充到 90% 约需 30 分钟;使用 110 V 电源:完全充满两块 TB60 智能飞行电池约需 70 分钟,从 20% 充到 90% 约需 40 分钟',
|
'-20°C 至 40°C(当环境温度低于 5°C时,电池会启动自加热功能,在低温环境下充电有可能会降低电池使用寿命)',
|
||||||
|
充电时间:
|
||||||
|
'使用 BS60 智能电池箱时,使用 220 V 电源:完全充满两块 TB60 智能飞行电池约需 60 分钟,从 20% 充到 90% 约需 30 分钟;使用 110 V 电源:完全充满两块 TB60 智能飞行电池约需 70 分钟,从 20% 充到 90% 约需 40 分钟',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -259,29 +284,37 @@ else if (newLocation === 'xihaian') {
|
||||||
{
|
{
|
||||||
name: '经纬 M300 RTK-2',
|
name: '经纬 M300 RTK-2',
|
||||||
url: '',
|
url: '',
|
||||||
details: [{
|
details: [
|
||||||
|
{
|
||||||
name: '飞行器',
|
name: '飞行器',
|
||||||
attribute: {
|
attribute: {
|
||||||
尺寸: '尺寸(展开,不包含桨叶):810×670×430 mm(长×宽×高);尺寸(折叠,包含桨叶):430×420×430 mm(长×宽×高)',
|
尺寸: '尺寸(展开,不包含桨叶):810×670×430 mm(长×宽×高);尺寸(折叠,包含桨叶):430×420×430 mm(长×宽×高)',
|
||||||
对称电机轴距: '895 mm',
|
对称电机轴距: '895 mm',
|
||||||
'重量(含下置单云台支架):空机重量(不含电池)': '3.6 kg;空机重量(含双电池):6.3 kg',
|
'重量(含下置单云台支架):空机重量(不含电池)':
|
||||||
|
'3.6 kg;空机重量(含双电池):6.3 kg',
|
||||||
单云台减震球最大负重: '930g',
|
单云台减震球最大负重: '930g',
|
||||||
最大起飞重量: '9 kg',
|
最大起飞重量: '9 kg',
|
||||||
工作频率: '2.4000-2.4835 GHz;5.725-5.850 GHz',
|
工作频率: '2.4000-2.4835 GHz;5.725-5.850 GHz',
|
||||||
'发射功率(EIRP)': '2.4000-2.4835 GHz:29.5 dBm(FCC)、18.5dBm(CE)、18.5 dBm(SRRC)、18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC)、12.5dBm(CE)、28.5 dBm(SRRC)',
|
'发射功率(EIRP)':
|
||||||
'悬停精度(P-GPS)': '垂直:±0.1 m(视觉定位正常工作时)、±0.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时);水平:±0.3 m(视觉定位正常工作时)、±1.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时)',
|
'2.4000-2.4835 GHz:29.5 dBm(FCC)、18.5dBm(CE)、18.5 dBm(SRRC)、18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC)、12.5dBm(CE)、28.5 dBm(SRRC)',
|
||||||
'RTK 位置精度': '在 RTK FIX 时:1 cm+1 ppm(水平)、1.5 cm + 1 ppm(垂直)',
|
'悬停精度(P-GPS)':
|
||||||
|
'垂直:±0.1 m(视觉定位正常工作时)、±0.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时);水平:±0.3 m(视觉定位正常工作时)、±1.5 m(GPS 正常工作时)、±0.1 m(RTK 定位正常工作时)',
|
||||||
|
'RTK 位置精度':
|
||||||
|
'在 RTK FIX 时:1 cm+1 ppm(水平)、1.5 cm + 1 ppm(垂直)',
|
||||||
最大旋转角速度: '俯仰轴:300°/s、航向轴:100°/s',
|
最大旋转角速度: '俯仰轴:300°/s、航向轴:100°/s',
|
||||||
最大俯仰角度: '30° (P模式且前视视觉系统启用:25°)',
|
最大俯仰角度: '30° (P模式且前视视觉系统启用:25°)',
|
||||||
最大上升速度: 'S 模式:6 m/s、P 模式:5 m/s',
|
最大上升速度: 'S 模式:6 m/s、P 模式:5 m/s',
|
||||||
'最大下降速度(垂直)': 'S 模式:5 m/s、P 模式:4 m/s',
|
'最大下降速度(垂直)': 'S 模式:5 m/s、P 模式:4 m/s',
|
||||||
最大倾斜下降速度: 'S 模式:7 m/s',
|
最大倾斜下降速度: 'S 模式:7 m/s',
|
||||||
最大水平飞行速度: 'S 模式:23 m/s、P 模式:17 m/s',
|
最大水平飞行速度: 'S 模式:23 m/s、P 模式:17 m/s',
|
||||||
最大飞行海拔高度: '5000 m(2110 桨叶,起飞重量≤7 kg)/ 7000 m(2195 高原静音桨叶,起飞重量≤7 kg)',
|
最大飞行海拔高度:
|
||||||
|
'5000 m(2110 桨叶,起飞重量≤7 kg)/ 7000 m(2195 高原静音桨叶,起飞重量≤7 kg)',
|
||||||
最大可承受风速: '15m/s(起飞及降落阶段为12m/s)',
|
最大可承受风速: '15m/s(起飞及降落阶段为12m/s)',
|
||||||
最大飞行时间: '55 min',
|
最大飞行时间: '55 min',
|
||||||
'适配 DJI 云台': '禅思 XT2、禅思 XT S、禅思 Z30、禅思 H20、禅思 H20T、DJI P1、DJI L1',
|
'适配 DJI 云台':
|
||||||
支持云台安装方式: '下置单云台、上置单云台、下置双云台、下置单云台+上置单云台、下置双云台+上置单云台',
|
'禅思 XT2、禅思 XT S、禅思 Z30、禅思 H20、禅思 H20T、DJI P1、DJI L1',
|
||||||
|
支持云台安装方式:
|
||||||
|
'下置单云台、上置单云台、下置双云台、下置单云台+上置单云台、下置双云台+上置单云台',
|
||||||
'IP 防护等级': 'IP45',
|
'IP 防护等级': 'IP45',
|
||||||
GNSS: 'GPS+GLONASS+BeiDou+Galileo',
|
GNSS: 'GPS+GLONASS+BeiDou+Galileo',
|
||||||
工作环境温度: '-20°C 至 50°C',
|
工作环境温度: '-20°C 至 50°C',
|
||||||
|
@ -291,10 +324,14 @@ else if (newLocation === 'xihaian') {
|
||||||
name: '遥控器',
|
name: '遥控器',
|
||||||
attribute: {
|
attribute: {
|
||||||
工作频率: '2.4000-2.4835 GHz、5.725-5.850 GHz',
|
工作频率: '2.4000-2.4835 GHz、5.725-5.850 GHz',
|
||||||
'最大信号有效距离(无干扰、无遮挡)': 'NCC/FCC:15 km、CE/MIC:8 km、SRRC:8 km',
|
'最大信号有效距离(无干扰、无遮挡)':
|
||||||
'等效全向辐射功率(EIRP)': '2.4000-2.4835 GHz:29.5 dBm(FCC);18.5dBm(CE)、18.5 dBm(SRRC);18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC);12.5dBm(CE)、20.5 dBm(SRRC)',
|
'NCC/FCC:15 km、CE/MIC:8 km、SRRC:8 km',
|
||||||
外置电池: '名称:WB37 智能电池;容量:4920 mAh;电压:7.6 V;电池类型:LiPo;能量:37.39 Wh;充电时间(使用 BS60 智能电池箱):70 分钟(15°C 至 45°C);130 分钟(0°C 至 15°C)',
|
'等效全向辐射功率(EIRP)':
|
||||||
内置电池: '类型:18650 锂离子电池 (5000 mAh @ 7.2 V);充电方式:使用规格为 12V/2A 的 USB 充电器;额定功率:17 W;充电时间:2 小时 15 分钟(使用规格为12V/2A 的 USB 充电器)',
|
'2.4000-2.4835 GHz:29.5 dBm(FCC);18.5dBm(CE)、18.5 dBm(SRRC);18.5dBm(MIC);5.725-5.850 GHz:28.5 dBm(FCC);12.5dBm(CE)、20.5 dBm(SRRC)',
|
||||||
|
外置电池:
|
||||||
|
'名称:WB37 智能电池;容量:4920 mAh;电压:7.6 V;电池类型:LiPo;能量:37.39 Wh;充电时间(使用 BS60 智能电池箱):70 分钟(15°C 至 45°C);130 分钟(0°C 至 15°C)',
|
||||||
|
内置电池:
|
||||||
|
'类型:18650 锂离子电池 (5000 mAh @ 7.2 V);充电方式:使用规格为 12V/2A 的 USB 充电器;额定功率:17 W;充电时间:2 小时 15 分钟(使用规格为12V/2A 的 USB 充电器)',
|
||||||
续航时间: '内置电池:约 2.5 小时内置电池+外置电池:约 4.5 小时',
|
续航时间: '内置电池:约 2.5 小时内置电池+外置电池:约 4.5 小时',
|
||||||
'USB-A 接口供电电压/电流': '5 V / 1.5 A',
|
'USB-A 接口供电电压/电流': '5 V / 1.5 A',
|
||||||
工作环境温度: '-20° 至 40° C',
|
工作环境温度: '-20° 至 40° C',
|
||||||
|
@ -305,7 +342,8 @@ else if (newLocation === 'xihaian') {
|
||||||
attribute: {
|
attribute: {
|
||||||
障碍物感知范围: '前后左右:0.7-40 m、上下:0.6-30 m',
|
障碍物感知范围: '前后左右:0.7-40 m、上下:0.6-30 m',
|
||||||
FOV: '前后下:65°(H),50°(V)、左右上:75°(H),60°(V)',
|
FOV: '前后下:65°(H),50°(V)、左右上:75°(H),60°(V)',
|
||||||
使用环境: '表面有丰富纹理,光照条件充足(>15 lux,室内日光灯正常照射环境)',
|
使用环境:
|
||||||
|
'表面有丰富纹理,光照条件充足(>15 lux,室内日光灯正常照射环境)',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -341,8 +379,10 @@ else if (newLocation === 'xihaian') {
|
||||||
电池整体重量: '约 1.35 kg',
|
电池整体重量: '约 1.35 kg',
|
||||||
工作环境温度: '-20℃ 至 50℃',
|
工作环境温度: '-20℃ 至 50℃',
|
||||||
理想存放环境温度: '22℃ 至 30℃',
|
理想存放环境温度: '22℃ 至 30℃',
|
||||||
充电环境温度: '-20°C 至 40°C(当环境温度低于 5°C时,电池会启动自加热功能,在低温环境下充电有可能会降低电池使用寿命)',
|
充电环境温度:
|
||||||
充电时间: '使用 BS60 智能电池箱时,使用 220 V 电源:完全充满两块 TB60 智能飞行电池约需 60 分钟,从 20% 充到 90% 约需 30 分钟;使用 110 V 电源:完全充满两块 TB60 智能飞行电池约需 70 分钟,从 20% 充到 90% 约需 40 分钟',
|
'-20°C 至 40°C(当环境温度低于 5°C时,电池会启动自加热功能,在低温环境下充电有可能会降低电池使用寿命)',
|
||||||
|
充电时间:
|
||||||
|
'使用 BS60 智能电池箱时,使用 220 V 电源:完全充满两块 TB60 智能飞行电池约需 60 分钟,从 20% 充到 90% 约需 30 分钟;使用 110 V 电源:完全充满两块 TB60 智能飞行电池约需 70 分钟,从 20% 充到 90% 约需 40 分钟',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -360,7 +400,8 @@ else if (newLocation === 'xihaian') {
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
uavAndIndividualSoldier.individualSoldier = [{
|
uavAndIndividualSoldier.individualSoldier = [
|
||||||
|
{
|
||||||
name: 'T950天通-1',
|
name: 'T950天通-1',
|
||||||
type: '单兵设备',
|
type: '单兵设备',
|
||||||
details: {
|
details: {
|
||||||
|
@ -370,9 +411,11 @@ else if (newLocation === 'xihaian') {
|
||||||
CPU: '展锐 Makalu T7510;虎贲T710+春藤IVY510',
|
CPU: '展锐 Makalu T7510;虎贲T710+春藤IVY510',
|
||||||
存储: '标配:6GB ROM +128G RAM',
|
存储: '标配:6GB ROM +128G RAM',
|
||||||
显示屏: '6.52吋水滴屏;HD+,1600*720(20:9)',
|
显示屏: '6.52吋水滴屏;HD+,1600*720(20:9)',
|
||||||
后置摄像头: '后置为4800万主摄+200万微距+200万红外三摄组合,支持闪光灯',
|
后置摄像头:
|
||||||
|
'后置为4800万主摄+200万微距+200万红外三摄组合,支持闪光灯',
|
||||||
前置摄像头: '1600万',
|
前置摄像头: '1600万',
|
||||||
传感器相关: '指纹|光线传感器|距离传感器|加速度传感器|地磁传感器|陀螺仪|气压传感器',
|
传感器相关:
|
||||||
|
'指纹|光线传感器|距离传感器|加速度传感器|地磁传感器|陀螺仪|气压传感器',
|
||||||
WLAN: '802.11a/b/g/n/AC 支持MIMO',
|
WLAN: '802.11a/b/g/n/AC 支持MIMO',
|
||||||
电池: '6000mAh@3.8V,内置不可拆卸,支持18W快充',
|
电池: '6000mAh@3.8V,内置不可拆卸,支持18W快充',
|
||||||
工作时间: '待机时长180h,卫星通话时长16h',
|
工作时间: '待机时长180h,卫星通话时长16h',
|
||||||
|
@ -414,9 +457,11 @@ else if (newLocation === 'xihaian') {
|
||||||
CPU: '展锐 Makalu T7510;虎贲T710+春藤IVY510',
|
CPU: '展锐 Makalu T7510;虎贲T710+春藤IVY510',
|
||||||
存储: '标配:6GB ROM +128G RAM',
|
存储: '标配:6GB ROM +128G RAM',
|
||||||
显示屏: '6.52吋水滴屏;HD+,1600*720(20:9)',
|
显示屏: '6.52吋水滴屏;HD+,1600*720(20:9)',
|
||||||
后置摄像头: '后置为4800万主摄+200万微距+200万红外三摄组合,支持闪光灯',
|
后置摄像头:
|
||||||
|
'后置为4800万主摄+200万微距+200万红外三摄组合,支持闪光灯',
|
||||||
前置摄像头: '1600万',
|
前置摄像头: '1600万',
|
||||||
传感器相关: '指纹|光线传感器|距离传感器|加速度传感器|地磁传感器|陀螺仪|气压传感器',
|
传感器相关:
|
||||||
|
'指纹|光线传感器|距离传感器|加速度传感器|地磁传感器|陀螺仪|气压传感器',
|
||||||
WLAN: '802.11a/b/g/n/AC 支持MIMO',
|
WLAN: '802.11a/b/g/n/AC 支持MIMO',
|
||||||
电池: '6000mAh@3.8V,内置不可拆卸,支持18W快充',
|
电池: '6000mAh@3.8V,内置不可拆卸,支持18W快充',
|
||||||
工作时间: '待机时长180h,卫星通话时长16h',
|
工作时间: '待机时长180h,卫星通话时长16h',
|
||||||
|
@ -453,7 +498,7 @@ else if (newLocation === 'xihaian') {
|
||||||
{ name: '共享门户', key: 'home' },
|
{ name: '共享门户', key: 'home' },
|
||||||
{ name: '能力集市', key: 'DetailsPageconetent' },
|
{ name: '能力集市', key: 'DetailsPageconetent' },
|
||||||
{ name: '能力云图', key: 'capabilityCloud' },
|
{ name: '能力云图', key: 'capabilityCloud' },
|
||||||
// { name: '能力统计', key: 'abilityStatistics' },
|
{ name: '能力统计', key: 'abilityStatistics' },
|
||||||
// { name: '开发指南', key: 'developmentGuide' },
|
// { name: '开发指南', key: 'developmentGuide' },
|
||||||
{ name: '需求中心', key: 'demandCenter' },
|
{ name: '需求中心', key: 'demandCenter' },
|
||||||
// { name: '个人中心', key: 'personalCenter' },
|
// { name: '个人中心', key: 'personalCenter' },
|
||||||
|
@ -467,7 +512,8 @@ else if (newLocation === 'xihaian') {
|
||||||
// eslint-disable-next-line no-undef
|
// eslint-disable-next-line no-undef
|
||||||
right: CONFIGITEM.vNum,
|
right: CONFIGITEM.vNum,
|
||||||
},
|
},
|
||||||
address: [{
|
address: [
|
||||||
|
{
|
||||||
name: '鲁IC备00000000号',
|
name: '鲁IC备00000000号',
|
||||||
value: '政府标识码3702000106',
|
value: '政府标识码3702000106',
|
||||||
},
|
},
|
||||||
|
|
|
@ -92,9 +92,9 @@ instance.interceptors.request.use(
|
||||||
*/
|
*/
|
||||||
instance.interceptors.response.use(
|
instance.interceptors.response.use(
|
||||||
(response) => {
|
(response) => {
|
||||||
console.log('接口返回', response)
|
// console.log('接口返回', response)
|
||||||
console.log('接口返回headers', response.headers)
|
// console.log('接口返回headers', response.headers)
|
||||||
console.log('接口返回REDIRECT', response.headers.redirect)
|
// console.log('接口返回REDIRECT', response.headers.redirect)
|
||||||
response['Access-Control-Expose-Headers'] = 'redirect'
|
response['Access-Control-Expose-Headers'] = 'redirect'
|
||||||
const { code, message } = response.data
|
const { code, message } = response.data
|
||||||
|
|
||||||
|
@ -154,14 +154,14 @@ instance.interceptors.response.use(
|
||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
(error) => {
|
(error) => {
|
||||||
console.log('接口error', error)
|
// console.log('接口error', error)
|
||||||
if (loadingInstance) loadingInstance.close()
|
if (loadingInstance) loadingInstance.close()
|
||||||
|
|
||||||
const { response, myMessage } = error
|
const { response, myMessage } = error
|
||||||
if (error.response) {
|
if (error.response) {
|
||||||
console.log('接口返回', response)
|
// console.log('接口返回', response)
|
||||||
console.log('接口返回headers', response.headers)
|
// console.log('接口返回headers', response.headers)
|
||||||
console.log('接口返回REDIRECT', response.headers.redirect)
|
// console.log('接口返回REDIRECT', response.headers.redirect)
|
||||||
const { status, data } = response
|
const { status, data } = response
|
||||||
|
|
||||||
handleCode(status, data.msg || myMessage, response.headers.redirect)
|
handleCode(status, data.msg || myMessage, response.headers.redirect)
|
||||||
|
|
|
@ -296,17 +296,29 @@
|
||||||
const num = ref(0)
|
const num = ref(0)
|
||||||
// 过期时间
|
// 过期时间
|
||||||
const expireDateOptions = [
|
const expireDateOptions = [
|
||||||
|
{
|
||||||
|
value: moment().add(7, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
|
label: '7天',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
value: moment().add(30, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
value: moment().add(30, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
label: '30天',
|
label: '1个月',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: moment().add(60, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
value: moment().add(180, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
label: '60天',
|
label: '6个月',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: moment().add(90, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
value: moment().add(365, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
label: '90天',
|
label: '1年',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: moment().add(730, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
|
label: '2年',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: moment().add(1095, 'days').format('YYYY-MM-DD HH:mm:ss'),
|
||||||
|
label: '3年',
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
const apiURL = window.SITE_CONFIG.apiURL
|
const apiURL = window.SITE_CONFIG.apiURL
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
海康H5Player
|
海康H5Player
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div id="player" style="width: 800px; height: 600px; z-index: 9999"></div>
|
<div :id="videoId" style="width: 800px; height: 600px; z-index: 9999"></div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
const IS_MOVE_DEVICE = document.body.clientWidth < 992 // 是否移动设备
|
// const IS_MOVE_DEVICE = document.body.clientWidth < 992 // 是否移动设备
|
||||||
const MSE_IS_SUPPORT = !!window.MediaSource // 是否支持mse
|
const MSE_IS_SUPPORT = !!window.MediaSource // 是否支持mse
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
|
@ -16,6 +16,10 @@
|
||||||
type: String,
|
type: String,
|
||||||
default: '',
|
default: '',
|
||||||
},
|
},
|
||||||
|
videoId: {
|
||||||
|
type: String,
|
||||||
|
default: 'player',
|
||||||
|
},
|
||||||
index: {
|
index: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: 0,
|
default: 0,
|
||||||
|
@ -24,11 +28,16 @@
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
|
unStopable: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
player: null,
|
player: null,
|
||||||
splitNum: 1,
|
splitNum: 1,
|
||||||
|
realTime: true,
|
||||||
mseSupport: MSE_IS_SUPPORT,
|
mseSupport: MSE_IS_SUPPORT,
|
||||||
// tabActive: MSE_IS_SUPPORT ? 'mse' : 'decoder',
|
// tabActive: MSE_IS_SUPPORT ? 'mse' : 'decoder',
|
||||||
tabActive: 'decoder',
|
tabActive: 'decoder',
|
||||||
|
@ -65,8 +74,13 @@
|
||||||
mybus.emit('closeLoading', true)
|
mybus.emit('closeLoading', true)
|
||||||
this.createPlayer()
|
this.createPlayer()
|
||||||
this.arrangeWindow()
|
this.arrangeWindow()
|
||||||
//videoUrl this.realplay(this.videoUrl,0);//循环传过来的数组进行播放,index根据选中的个数
|
if (this.unStopable) {
|
||||||
|
this.videoPlay(this.videoUrl, 0)
|
||||||
|
} else {
|
||||||
this.realplay(this.videoUrl, 0)
|
this.realplay(this.videoUrl, 0)
|
||||||
|
}
|
||||||
|
//videoUrl this.realplay(this.videoUrl,0);//循环传过来的数组进行播放,index根据选中的个数
|
||||||
|
|
||||||
//this.realplay('wss://10.134.135.44:6014/proxy/10.10.20.14:559/openUrl/y3mFfcA',0);
|
//this.realplay('wss://10.134.135.44:6014/proxy/10.10.20.14:559/openUrl/y3mFfcA',0);
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -76,7 +90,16 @@
|
||||||
console.log('oldVal:', oldVal)
|
console.log('oldVal:', oldVal)
|
||||||
console.log('newVal:', newVal)
|
console.log('newVal:', newVal)
|
||||||
if (newVal) {
|
if (newVal) {
|
||||||
|
if (!this.player) {
|
||||||
|
setTimeout(() => {
|
||||||
|
this.init()
|
||||||
|
this.createPlayer()
|
||||||
|
this.arrangeWindow()
|
||||||
this.realplay(newVal, 0)
|
this.realplay(newVal, 0)
|
||||||
|
}, 1000)
|
||||||
|
} else {
|
||||||
|
this.realplay(newVal, 0)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 立即处理 进入页面就触发
|
// 立即处理 进入页面就触发
|
||||||
|
@ -92,12 +115,13 @@
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
createPlayer() {
|
createPlayer() {
|
||||||
//console.log('this.index',this.index);
|
console.log('初始化id', this.videoId)
|
||||||
this.player = new window.JSPlugin({
|
this.player = new window.JSPlugin({
|
||||||
//szId: 'player'+this.index,
|
//szId: 'player'+this.index,
|
||||||
szId: 'player',
|
szId: this.videoId,
|
||||||
szBasePath: '/util/', //引入静态资源地址,我这里静态资源在public/js文件存放,所以设置为js
|
szBasePath: '/util/', //引入静态资源地址,我这里静态资源在public/js文件存放,所以设置为js
|
||||||
iMaxSplit: 4,
|
iMaxSplit: 4,
|
||||||
|
iWidth: '800px',
|
||||||
iCurrentSplit: 4,
|
iCurrentSplit: 4,
|
||||||
openDebug: true,
|
openDebug: true,
|
||||||
oStyle: {
|
oStyle: {
|
||||||
|
@ -141,8 +165,10 @@
|
||||||
iWidth,
|
iWidth,
|
||||||
iHeight
|
iHeight
|
||||||
)
|
)
|
||||||
// 首帧绘制完成后停止
|
// 如果是录像播放,首帧绘制完成后停止
|
||||||
|
if (!that.realTime) {
|
||||||
that.pausePlay(iWndIndex)
|
that.pausePlay(iWndIndex)
|
||||||
|
}
|
||||||
mybus.emit('closeLoading', false)
|
mybus.emit('closeLoading', false)
|
||||||
},
|
},
|
||||||
performanceLack: function () {
|
performanceLack: function () {
|
||||||
|
@ -165,10 +191,13 @@
|
||||||
// 初始化结束
|
// 初始化结束
|
||||||
// 视频预览
|
// 视频预览
|
||||||
realplay(playURL, index1) {
|
realplay(playURL, index1) {
|
||||||
|
this.realTime = false
|
||||||
mybus.emit('closeLoading', true)
|
mybus.emit('closeLoading', true)
|
||||||
|
setTimeout(() => {
|
||||||
|
mybus.emit('closeLoading', false)
|
||||||
|
}, 3000)
|
||||||
this.mode = 0 //解码方式:0普通模式 1高级模式
|
this.mode = 0 //解码方式:0普通模式 1高级模式
|
||||||
const { player, mode, urls } = this,
|
const { player, mode, urls } = this
|
||||||
index = player.currentWindowIndex
|
|
||||||
// playURL = this.realplay
|
// playURL = this.realplay
|
||||||
console.log('视频播放地址', playURL)
|
console.log('视频播放地址', playURL)
|
||||||
// const startTime = {
|
// const startTime = {
|
||||||
|
@ -195,6 +224,40 @@
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
|
videoPlay(playURL, index1) {
|
||||||
|
let that = this
|
||||||
|
this.realTime = true
|
||||||
|
mybus.emit('closeLoading', true)
|
||||||
|
setTimeout(() => {
|
||||||
|
mybus.emit('closeLoading', false)
|
||||||
|
if (!that.unStopable) {
|
||||||
|
message.warning('预览将在2s后停止')
|
||||||
|
setTimeout(() => {
|
||||||
|
that.stopAllPlay()
|
||||||
|
}, 6000)
|
||||||
|
}
|
||||||
|
}, 3000)
|
||||||
|
this.mode = 0 //解码方式:0普通模式 1高级模式
|
||||||
|
const { player, mode, urls } = this
|
||||||
|
// playURL = this.realplay
|
||||||
|
console.log('视频播放地址', playURL)
|
||||||
|
// const startTime = {
|
||||||
|
// startTime: ,
|
||||||
|
// }
|
||||||
|
// const endTime = {
|
||||||
|
// endTime: ,
|
||||||
|
// }
|
||||||
|
player.JS_Play(playURL, { playURL, mode }, index1).then(
|
||||||
|
() => {
|
||||||
|
console.log('realplay success')
|
||||||
|
// 预览时6s停止播放
|
||||||
|
},
|
||||||
|
(e) => {
|
||||||
|
console.error(e)
|
||||||
|
// message.error('错误代码:' + e)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
},
|
||||||
// 关闭所有视频
|
// 关闭所有视频
|
||||||
stopAllPlay() {
|
stopAllPlay() {
|
||||||
this.player.JS_StopRealPlayAll().then(
|
this.player.JS_StopRealPlayAll().then(
|
||||||
|
@ -210,12 +273,15 @@
|
||||||
},
|
},
|
||||||
// 暂停单个视频
|
// 暂停单个视频
|
||||||
pausePlay(index) {
|
pausePlay(index) {
|
||||||
|
let that = this
|
||||||
this.player.JS_Pause(index).then(
|
this.player.JS_Pause(index).then(
|
||||||
() => {
|
() => {
|
||||||
console.log('暂停成功')
|
console.log('暂停成功')
|
||||||
},
|
},
|
||||||
(e) => {
|
(e) => {
|
||||||
console.error(e)
|
console.error(e)
|
||||||
|
// 暂停失败切换为实时播放
|
||||||
|
that.videoPlay(that.videoUrl, 0)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<!--
|
<!--
|
||||||
* @Author: Light
|
* @Author: Light
|
||||||
* @Date: 2022-11-18 11:53:43
|
* @Date: 2022-11-18 11:53:43
|
||||||
* @LastEditors: Light
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-11-25 20:05:47
|
* @LastEditTime: 2022-11-26 16:30:51
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="infrastructureApplication" v-if="showFlag">
|
<div class="infrastructureApplication" v-show="showFlag">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<a-list size="small" bordered :data-source="dataList.toBeApplied">
|
<a-list size="small" bordered :data-source="dataList.toBeApplied">
|
||||||
<template #renderItem="{ item }">
|
<template #renderItem="{ item }">
|
||||||
|
@ -47,7 +47,7 @@
|
||||||
</div>
|
</div>
|
||||||
<a-tag
|
<a-tag
|
||||||
color="cyan"
|
color="cyan"
|
||||||
style="margin-right: 0"
|
style="margin-right: 0; cursor: pointer"
|
||||||
@click="selectItem(item)"
|
@click="selectItem(item)"
|
||||||
>
|
>
|
||||||
{{
|
{{
|
||||||
|
@ -88,6 +88,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a-modal
|
<a-modal
|
||||||
|
v-if="!dataList.selectItem.cameraInfo"
|
||||||
:width="800"
|
:width="800"
|
||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
title="撤销申请"
|
title="撤销申请"
|
||||||
|
@ -110,28 +111,27 @@
|
||||||
</a-table>
|
</a-table>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
<a-modal
|
<a-modal
|
||||||
v-if="dataList.selectItem.cameraInfo"
|
v-else
|
||||||
v-model:visible="showVisible"
|
v-model:visible="showVisible"
|
||||||
:title="dataList.selectItem.cameraInfo.channelName"
|
:title="dataList.selectItem.cameraInfo.channelName"
|
||||||
:footer="null"
|
:footer="null"
|
||||||
|
:width="845"
|
||||||
|
destroyOnClose
|
||||||
@cancel="clear"
|
@cancel="clear"
|
||||||
>
|
>
|
||||||
<div style="width: 100%; display: flex; justify-content: center">
|
<div
|
||||||
<div style="width: 100%; height: 100%; position: relative">
|
style="
|
||||||
<div class="waterMark waterMark-left-top">
|
width: 800px;
|
||||||
{{ userInfo.usernameShow }}
|
height: 600px;
|
||||||
</div>
|
display: flex;
|
||||||
<div class="waterMark waterMark-right-top">
|
justify-content: center;
|
||||||
{{ userInfo.realNameShow }}
|
"
|
||||||
</div>
|
>
|
||||||
<div class="waterMark waterMark-left-bottom">
|
<h5-player
|
||||||
{{ userInfo.usernameShow }}
|
videoId="preview"
|
||||||
</div>
|
unStopable="true"
|
||||||
<div class="waterMark waterMark-right-bottom">
|
:video-url="videoUrl"
|
||||||
{{ userInfo.realNameShow }}
|
></h5-player>
|
||||||
</div>
|
|
||||||
<h5-player :video-url="videoUrl"></h5-player>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
</template>
|
</template>
|
||||||
|
@ -209,6 +209,10 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const apply = () => {
|
const apply = () => {
|
||||||
|
if (dataList.toBeApplied.length === 0) {
|
||||||
|
message.warning('待申请列表为空!')
|
||||||
|
return
|
||||||
|
}
|
||||||
let obj = {
|
let obj = {
|
||||||
arr: [
|
arr: [
|
||||||
{
|
{
|
||||||
|
@ -286,6 +290,7 @@
|
||||||
getVideoUrl(item.cameraInfo)
|
getVideoUrl(item.cameraInfo)
|
||||||
} else {
|
} else {
|
||||||
dataList.selectItem = {}
|
dataList.selectItem = {}
|
||||||
|
message.info('请耐心等待审核通过')
|
||||||
showVisible.value = false
|
showVisible.value = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -347,8 +352,10 @@
|
||||||
//console.log('555555rrrrr',res)
|
//console.log('555555rrrrr',res)
|
||||||
if (res.data.data) {
|
if (res.data.data) {
|
||||||
videoUrl.value = res.data.data.url
|
videoUrl.value = res.data.data.url
|
||||||
}
|
|
||||||
showVisible.value = true
|
showVisible.value = true
|
||||||
|
} else {
|
||||||
|
message.warning('申请内容已失效,请撤销后重新进行申请!')
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
mybus.on('selectCamera', (obj) => {
|
mybus.on('selectCamera', (obj) => {
|
||||||
|
|
|
@ -691,6 +691,7 @@
|
||||||
import { Form } from 'ant-design-vue'
|
import { Form } from 'ant-design-vue'
|
||||||
import moment from 'moment'
|
import moment from 'moment'
|
||||||
import { useStore } from 'vuex'
|
import { useStore } from 'vuex'
|
||||||
|
import debounce from 'lodash/debounce'
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
const username = store.getters['user/username']
|
const username = store.getters['user/username']
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
@ -1971,7 +1972,8 @@
|
||||||
const wrjFlag = ref(false)
|
const wrjFlag = ref(false)
|
||||||
// 西海岸-视频资源loading
|
// 西海岸-视频资源loading
|
||||||
const loadingCamera = ref(false)
|
const loadingCamera = ref(false)
|
||||||
const getCamera = (flag, str) => {
|
const getCamera = debounce(
|
||||||
|
function (flag, str) {
|
||||||
loadingCamera.value = true
|
loadingCamera.value = true
|
||||||
if (flag) {
|
if (flag) {
|
||||||
mapSearchParam.value.cameraName = str
|
mapSearchParam.value.cameraName = str
|
||||||
|
@ -2046,7 +2048,10 @@
|
||||||
message.error(err)
|
message.error(err)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
1000,
|
||||||
|
{ leading: true, trailing: false }
|
||||||
|
)
|
||||||
defineExpose({
|
defineExpose({
|
||||||
getCamera,
|
getCamera,
|
||||||
reSetSearch,
|
reSetSearch,
|
||||||
|
|
|
@ -121,6 +121,7 @@ import { ElMessage } from 'element-plus'
|
||||||
selectByChannelName,
|
selectByChannelName,
|
||||||
} from '@/api/videoSurveillance'
|
} from '@/api/videoSurveillance'
|
||||||
import { getCameraByCondition,getListForPOI,CameraConditionPlaceType } from '@/api/file'
|
import { getCameraByCondition,getListForPOI,CameraConditionPlaceType } from '@/api/file'
|
||||||
|
import debounce from 'lodash/debounce'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
import * as turf from '@turf/turf';
|
import * as turf from '@turf/turf';
|
||||||
|
|
||||||
|
@ -378,7 +379,7 @@ import { ElMessage } from 'element-plus'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getCameraByParentId(type,dataName) {
|
getCameraByParentId : debounce(function(type,dataName) {
|
||||||
if (!this.whoShow1.itShowXiHaiAn) {
|
if (!this.whoShow1.itShowXiHaiAn) {
|
||||||
getCameraByParentId(this.mapSearchParam).then((res) => {
|
getCameraByParentId(this.mapSearchParam).then((res) => {
|
||||||
console.log('根据parent查询摄像头', res.data.data)
|
console.log('根据parent查询摄像头', res.data.data)
|
||||||
|
@ -436,7 +437,7 @@ import { ElMessage } from 'element-plus'
|
||||||
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
}, 1000, { 'leading': true, 'trailing': false }),
|
||||||
// 初始化地址匹配服务
|
// 初始化地址匹配服务
|
||||||
initAddressMatchService() {
|
initAddressMatchService() {
|
||||||
this.L = window.L || {}
|
this.L = window.L || {}
|
||||||
|
@ -534,7 +535,7 @@ import { ElMessage } from 'element-plus'
|
||||||
cb([])
|
cb([])
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getCameraAllPage(page) {
|
getCameraAllPage: debounce(function(page) {
|
||||||
let params = {
|
let params = {
|
||||||
regionId: "70be8c5b664f4bcf869d82f2e8335051",
|
regionId: "70be8c5b664f4bcf869d82f2e8335051",
|
||||||
borderPolygonList: []
|
borderPolygonList: []
|
||||||
|
@ -546,7 +547,7 @@ import { ElMessage } from 'element-plus'
|
||||||
// let t2 = new Date().getTime();
|
// let t2 = new Date().getTime();
|
||||||
// console.log("时间#############" + (t2 - t1));
|
// console.log("时间#############" + (t2 - t1));
|
||||||
})
|
})
|
||||||
},
|
},1000, { 'leading': true, 'trailing': false }),
|
||||||
getCameraAllLabel() {},
|
getCameraAllLabel() {},
|
||||||
tabChange(item) {
|
tabChange(item) {
|
||||||
if (this.checkboxGroup.indexOf(item.labelName) !== -1) {
|
if (this.checkboxGroup.indexOf(item.labelName) !== -1) {
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-07-12 09:42:44
|
* @Date: 2022-07-12 09:42:44
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-10-26 18:15:01
|
* @LastEditTime: 2022-11-26 14:47:12
|
||||||
* @Description:我的申请 能力申请 查看详情
|
* @Description:我的申请 能力申请 查看详情
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
|
@ -172,7 +172,6 @@
|
||||||
>
|
>
|
||||||
附件下载
|
附件下载
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -225,11 +224,17 @@
|
||||||
style="cursor: pointer"
|
style="cursor: pointer"
|
||||||
@click="
|
@click="
|
||||||
openView(
|
openView(
|
||||||
'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' + val.channelCode+'&protocol=wss&transmode=1&streamType=1'
|
'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' +
|
||||||
|
val.channelCode +
|
||||||
|
'&protocol=wss&transmode=1&streamType=1'
|
||||||
)
|
)
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ 'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' + val.channelCode+'&protocol=wss&transmode=1&streamType=1' }}
|
{{
|
||||||
|
'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' +
|
||||||
|
val.channelCode +
|
||||||
|
'&protocol=wss&transmode=1&streamType=1'
|
||||||
|
}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -245,7 +250,7 @@
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
cursor:pointer;
|
cursor: pointer;
|
||||||
"
|
"
|
||||||
href="/static/download/InstallRootCert.exe"
|
href="/static/download/InstallRootCert.exe"
|
||||||
>
|
>
|
||||||
|
@ -262,8 +267,8 @@
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
margin-left:40px;
|
margin-left: 40px;
|
||||||
cursor:pointer;
|
cursor: pointer;
|
||||||
"
|
"
|
||||||
@click="downLoadClient()"
|
@click="downLoadClient()"
|
||||||
>
|
>
|
||||||
|
@ -280,7 +285,7 @@
|
||||||
wrapClassName="single-preview-modal"
|
wrapClassName="single-preview-modal"
|
||||||
v-model:visible="visible"
|
v-model:visible="visible"
|
||||||
title="视频预览"
|
title="视频预览"
|
||||||
:width="1000"
|
:width="850"
|
||||||
destroyOnClose
|
destroyOnClose
|
||||||
>
|
>
|
||||||
<template #footer></template>
|
<template #footer></template>
|
||||||
|
@ -300,7 +305,11 @@
|
||||||
{{ userInfo.realNameShow }}
|
{{ userInfo.realNameShow }}
|
||||||
</div>
|
</div>
|
||||||
<!-- <vue3VideoPlay v-bind="options" /> -->
|
<!-- <vue3VideoPlay v-bind="options" /> -->
|
||||||
<h5-player :video-url="videoUrl"></h5-player>
|
<h5-player
|
||||||
|
unStopable="true"
|
||||||
|
:video-id="videoId"
|
||||||
|
:video-url="videoUrl"
|
||||||
|
></h5-player>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
|
@ -315,7 +324,7 @@
|
||||||
import { getStreamByChannelCode } from '@/api/videoSurveillance'
|
import { getStreamByChannelCode } from '@/api/videoSurveillance'
|
||||||
import { getUser } from '@/api/home'
|
import { getUser } from '@/api/home'
|
||||||
import H5Player from '@/views/home/components/H5Player.vue'
|
import H5Player from '@/views/home/components/H5Player.vue'
|
||||||
import {getCameraLiveStream} from '@/api/file'
|
import { getCameraLiveStream } from '@/api/file'
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
const backUrl = ref(window.SITE_CONFIG.apiURL + '/')
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
@ -323,6 +332,7 @@
|
||||||
})
|
})
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let visible = ref(false)
|
let visible = ref(false)
|
||||||
|
const videoId = ref('111111111111')
|
||||||
const options = reactive({
|
const options = reactive({
|
||||||
width: '912px', //播放器宽度
|
width: '912px', //播放器宽度
|
||||||
height: '513px', //播放器高度
|
height: '513px', //播放器高度
|
||||||
|
@ -359,7 +369,7 @@
|
||||||
dept.deptName = infrastructure.deptName
|
dept.deptName = infrastructure.deptName
|
||||||
}
|
}
|
||||||
const showThis = () => {
|
const showThis = () => {
|
||||||
console.log('props.refObj.enclosure',props.refObj);
|
console.log('props.refObj.enclosure', props.refObj)
|
||||||
window.open(
|
window.open(
|
||||||
window.SITE_CONFIG.previewUrl +
|
window.SITE_CONFIG.previewUrl +
|
||||||
'hisense_office/onlinePreview?url=' +
|
'hisense_office/onlinePreview?url=' +
|
||||||
|
@ -368,8 +378,9 @@
|
||||||
}
|
}
|
||||||
//下载海康客户端
|
//下载海康客户端
|
||||||
const downLoadClient = () => {
|
const downLoadClient = () => {
|
||||||
let url = "https://open.hikvision.com/download/5c67f1e2f05948198c909700?type=10";
|
let url =
|
||||||
window.open( url, '_blank')
|
'https://open.hikvision.com/download/5c67f1e2f05948198c909700?type=10'
|
||||||
|
window.open(url, '_blank')
|
||||||
}
|
}
|
||||||
const showArr = ref([])
|
const showArr = ref([])
|
||||||
console.log(props.refObj, '=====================================')
|
console.log(props.refObj, '=====================================')
|
||||||
|
@ -517,13 +528,13 @@
|
||||||
|
|
||||||
const videoUrl = ref('')
|
const videoUrl = ref('')
|
||||||
//获取视频控件所需播放地址
|
//获取视频控件所需播放地址
|
||||||
const getVideoUrl = (data) =>{
|
const getVideoUrl = (data) => {
|
||||||
debugger
|
debugger
|
||||||
let param = data;
|
let param = data
|
||||||
getCameraLiveStream(param).then((res) => {
|
getCameraLiveStream(param).then((res) => {
|
||||||
//console.log('555555rrrrr',res)
|
//console.log('555555rrrrr',res)
|
||||||
if(res.data.data){
|
if (res.data.data) {
|
||||||
videoUrl.value = res.data.data.url;
|
videoUrl.value = res.data.data.url
|
||||||
}
|
}
|
||||||
visible.value = true
|
visible.value = true
|
||||||
})
|
})
|
||||||
|
@ -578,7 +589,7 @@
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const openView = (url) => {
|
const openView = (url) => {
|
||||||
console.log('valval',url);
|
console.log('valval', url)
|
||||||
//http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=37021100421318000090&protocol=wss&transmode=1&streamType=1
|
//http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=37021100421318000090&protocol=wss&transmode=1&streamType=1
|
||||||
window.open(url, '_blank')
|
window.open(url, '_blank')
|
||||||
}
|
}
|
||||||
|
@ -628,7 +639,7 @@
|
||||||
width: 2.5rem;
|
width: 2.5rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.downButton{
|
.downButton {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: normal;
|
justify-content: normal;
|
||||||
}
|
}
|
||||||
|
@ -658,7 +669,7 @@
|
||||||
.box {
|
.box {
|
||||||
margin-left: 0.1rem;
|
margin-left: 0.1rem;
|
||||||
.ability {
|
.ability {
|
||||||
height: 2.0rem;
|
height: 2rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
border-bottom: 1px #eee solid;
|
border-bottom: 1px #eee solid;
|
||||||
padding: 0.1rem 0;
|
padding: 0.1rem 0;
|
||||||
|
@ -766,7 +777,7 @@
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.button-bottom{
|
.button-bottom {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,8 +29,8 @@ const productionGzipExtensions = [
|
||||||
'ico',
|
'ico',
|
||||||
]
|
]
|
||||||
// 是否开启gzip压缩
|
// 是否开启gzip压缩
|
||||||
// const isPro = process.env.NODE_ENV === 'production'
|
const isPro = process.env.NODE_ENV === 'production'
|
||||||
const isPro = false
|
// const isPro = false
|
||||||
if (donation) donationConsole()
|
if (donation) donationConsole()
|
||||||
const { version, author } = require('./package.json')
|
const { version, author } = require('./package.json')
|
||||||
const Webpack = require('webpack')
|
const Webpack = require('webpack')
|
||||||
|
|
Loading…
Reference in New Issue