Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
mmc-stl-vue2
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Administrator
mmc-stl-vue2
Commits
8f756cf5
提交
8f756cf5
authored
6月 21, 2024
作者:
翁进城
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: 无人机列表更改为V4接口
上级
82bf688e
流水线
#10101
已失败 于阶段
变更
26
流水线
1
隐藏空白字符变更
内嵌
并排
正在显示
26 个修改的文件
包含
237 行增加
和
282 行删除
+237
-282
vue.config.js
iframe/vue.config.js
+1
-1
uav_control.js
...ponents/MMCFlightControlCenter/api/modules/uav_control.js
+1
-16
request.js
src/components/MMCFlightControlCenter/api/request.js
+26
-57
index.vue
...el/components/controlLeft/components/player/uav/index.vue
+1
-1
index.js
...l/components/controlLeft/components/player/utils/index.js
+3
-3
index.vue
.../components/controlPanel/components/controlLeft/index.vue
+3
-3
index.vue
...Panel/components/controlRight/components/logger/index.vue
+1
-1
index.vue
...mponents/hangar/components/list/components/item/index.vue
+1
-1
linkFusion.js
...lightControlCenter/components/hangar/mixins/linkFusion.js
+2
-2
index.vue
...htControlCenter/components/mount/MMC_Gimbal_GAS/index.vue
+5
-5
index.vue
.../components/controlPanel/components/controlLeft/index.vue
+3
-3
index.vue
...el/components/controlRight/components/alarmLamp/index.vue
+4
-4
index.vue
...lRight/components/controlList/components/logger/index.vue
+1
-1
index.vue
.../controlRight/components/health/components/logs/index.vue
+1
-1
index.vue
...components/controlPanel/components/controlRight/index.vue
+1
-1
index.vue
...plications/components/player/components/qingliu/index.vue
+3
-3
index.vue
...er/components/uavApplications/components/player/index.vue
+11
-11
index.vue
...ponents/uavList/components/list/components/item/index.vue
+31
-26
data.json
...r/components/uavApplications/components/uavList/data.json
+36
-36
linkFusion.js
...rolCenter/components/uavApplications/mixins/linkFusion.js
+2
-2
index.vue
src/components/MMCFlightControlCenter/index.vue
+1
-1
hangar.js
src/components/MMCFlightControlCenter/store/hangar.js
+18
-18
uav.js
src/components/MMCFlightControlCenter/store/uav.js
+59
-59
package.json
vue2/package.json
+2
-1
demo.vue
vue2/src/views/fkzxIframe/demo.vue
+19
-24
vue.config.js
vue2/vue.config.js
+1
-1
没有找到文件。
iframe/vue.config.js
浏览文件 @
8f756cf5
...
...
@@ -8,7 +8,7 @@ module.exports = defineConfig({
plugins
:
[
new
NodePolyfillPlugin
()],
},
devServer
:
{
https
:
tru
e
,
https
:
fals
e
,
port
:
9000
,
client
:
{
overlay
:
false
,
...
...
src/components/MMCFlightControlCenter/api/modules/uav_control.js
浏览文件 @
8f756cf5
...
...
@@ -3,21 +3,6 @@ import request_uav from "../request_uav";
class
Control_API
{
/**
* 无人机token登录
* @param {*} data
* @returns
*/
static
login
(
data
)
{
return
request
({
url
:
"/crm/account/loginInfo"
,
method
:
"post"
,
data
,
headers
:
{
token
:
window
.
localStorage
.
getItem
(
"tmj_token"
),
},
});
}
/**
* 无人机接管更新状态
* @param {*} id //设备id
* @returns
...
...
@@ -32,7 +17,7 @@ class Control_API {
// 获取无人机树结构列表
static
getUavTree
(
params
)
{
return
request
({
url
:
"/
dms/uav/t
ree"
,
url
:
"/
admin-api/uas/drive/getT
ree"
,
// url: '/crm/personalCenter/list?id=4',
method
:
"get"
,
params
,
...
...
src/components/MMCFlightControlCenter/api/request.js
浏览文件 @
8f756cf5
import
axios
from
'axios'
;
import
Vue
from
'vue'
;
import
{
resetMessage
}
from
'./message'
;
import
router
from
'../router'
;
import
store
from
'../store'
;
import
axios
from
"axios"
;
import
Vue
from
"vue"
;
import
{
resetMessage
}
from
"./message"
;
import
router
from
"../router"
;
import
store
from
"../store"
;
let
prodUrl
=
'https://tmj.mmcuav.cn'
;
let
devUrl
=
'https://test.tmj.mmcuav.cn/'
let
prodUrl
=
"http://192.168.5.80:30080"
;
let
devUrl
=
"http://192.168.5.80:30080"
;
const
$axios
=
axios
.
create
({
// baseURL: process.env.VUE_APP_BASE_API_TG
// withCredentials: true
});
Vue
.
prototype
.
$http
=
axios
;
const
loading
=
null
;
/**
...
...
@@ -22,7 +20,7 @@ const loading = null;
*/
$axios
.
interceptors
.
request
.
use
(
(
config
)
=>
{
if
(
store
.
state
.
devMode
)
{
if
(
store
.
state
.
devMode
)
{
config
.
baseURL
=
devUrl
;
}
else
{
config
.
baseURL
=
prodUrl
;
...
...
@@ -30,14 +28,14 @@ $axios.interceptors.request.use(
const
token
=
store
.
state
.
token
;
if
(
token
)
{
config
.
headers
[
'token'
]
=
token
;
// config.headers['channel'] = 'channel'; // 渠道 主平台 子平台 后台
console
.
log
(
'config'
,
config
)
config
.
headers
[
"Authorization"
]
=
"Bearer "
+
token
;
}
config
.
headers
[
"Tenant-Id"
]
=
1
;
config
.
headers
[
"terminal"
]
=
2
;
// 1 为管理后台 2 为前端项目
return
config
;
},
(
error
)
=>
{
console
.
log
(
'进来了2....'
);
console
.
log
(
"请求出错"
);
return
Promise
.
reject
(
error
);
}
);
...
...
@@ -47,40 +45,25 @@ $axios.interceptors.request.use(
*/
$axios
.
interceptors
.
response
.
use
(
(
response
)
=>
{
console
.
log
(
'请求的URL:'
,
response
.
config
.
url
);
console
.
log
(
"请求的URL:"
,
response
.
config
.
url
);
if
(
loading
)
{
loading
.
close
();
}
console
.
log
(
'回应参数...'
,
response
);
console
.
log
(
"回应参数..."
,
response
);
const
status
=
response
.
status
;
const
res
=
response
.
data
;
// 请求成功返回response.data
if
((
status
>=
200
&&
status
<
300
)
||
status
===
304
)
{
switch
(
res
.
code
)
{
case
200
:
return
Promise
.
resolve
(
response
.
data
);
case
525
:
if
(
store
.
state
.
isIframe
)
{
resetMessage
.
error
(
response
.
data
.
msg
);
}
return
Promise
.
resolve
(
response
.
data
);
case
401
:
return
Promise
.
reject
(
response
);
case
403
:
if
(
store
.
state
.
isIframe
)
{
resetMessage
.
error
(
response
.
data
.
msg
);
}
break
;
case
0
:
return
Promise
.
resolve
(
res
);
default
:
if
(
response
.
config
.
responseType
===
'blob'
)
{
return
Promise
.
resolve
(
res
ponse
.
data
);
if
(
response
.
config
.
responseType
===
"blob"
)
{
return
Promise
.
resolve
(
res
);
}
resetMessage
.
error
(
res
ponse
?.
data
?.
msg
||
'网络请求错误'
);
return
Promise
.
reject
(
res
ponse
.
data
);
resetMessage
.
error
(
res
?.
msg
||
"网络请求错误"
);
return
Promise
.
reject
(
res
);
}
}
else
{
return
Promise
.
reject
(
response
);
...
...
@@ -95,38 +78,24 @@ $axios.interceptors.response.use(
switch
(
error
.
response
.
data
.
code
)
{
case
401
:
// 返回401 清除token信息并跳转到登陆页面
// store.commit("user/LOGIN_OUT");
// router.replace({
// path: "/login",
// query: {
// redirect: router.currentRoute.fullPath,
// },
// });
break
;
case
403
:
// 返回403 清除token信息并跳转到登陆页面
// store.commit("user/LOGIN_OUT");
resetMessage
.
error
(
'token过期'
);
/* router.replace({
path: "/login",
query: {
redirect: router.currentRoute.fullPath,
},
}); */
resetMessage
.
error
(
"token过期"
);
break
;
case
404
:
resetMessage
.
error
(
'网络请求不存在'
);
resetMessage
.
error
(
"网络请求不存在"
);
break
;
default
:
// 统一错误提示弹窗
resetMessage
.
error
(
error
.
response
?.
data
?.
msg
||
'网络请求错误'
);
resetMessage
.
error
(
error
.
response
?.
data
?.
msg
||
"网络请求错误"
);
}
}
else
{
// 请求超时或者网络有问题
if
(
error
.
message
.
includes
(
'timeout'
))
{
resetMessage
.
error
(
'请求超时!请检查网络是否正常'
);
if
(
error
.
message
.
includes
(
"timeout"
))
{
resetMessage
.
error
(
"请求超时!请检查网络是否正常"
);
}
else
{
resetMessage
.
error
(
'请求失败,请检查网络是否已连接'
);
resetMessage
.
error
(
"请求失败,请检查网络是否已连接"
);
}
}
return
Promise
.
reject
(
error
);
...
...
src/components/MMCFlightControlCenter/components/hangar/components/controlPanel/components/controlLeft/components/player/uav/index.vue
浏览文件 @
8f756cf5
...
...
@@ -42,7 +42,7 @@ export default {
this.hangar?.uav?.streamConfiguration
?.find((v) => v.videoType === 1)
?.streamUrlMessage.map((v) => ({
url: /* coverStreamUrl(v.streamUrl, this.hangar.uav.
hard
Id) */ v.streamUrl,
url: /* coverStreamUrl(v.streamUrl, this.hangar.uav.
device
Id) */ v.streamUrl,
brand: v.streamType,
})) || []
);
...
...
src/components/MMCFlightControlCenter/components/hangar/components/controlPanel/components/controlLeft/components/player/utils/index.js
浏览文件 @
8f756cf5
...
...
@@ -2,16 +2,16 @@ import { Base64 } from "js-base64";
/**
* 转换流地址, 这样后端才可统计播放情况
* @param {*} url
* @param {*}
hard
Id
* @param {*}
device
Id
* @returns
*/
export
function
coverStreamUrl
(
url
,
hard
Id
)
{
export
function
coverStreamUrl
(
url
,
device
Id
)
{
if
(
url
.
includes
(
"https://live.mmcuav.cn"
))
{
const
str
=
Base64
.
encode
(
JSON
.
stringify
({
token
:
localStorage
.
getItem
(
"tmj_token"
),
actionId
:
new
Date
().
getTime
().
toString
(),
deviceHardId
:
hard
Id
,
deviceHardId
:
device
Id
,
environment
:
process
.
env
.
VUE_APP_ENV
===
"dev"
?
"sit"
:
"prod"
,
})
);
...
...
src/components/MMCFlightControlCenter/components/hangar/components/controlPanel/components/controlLeft/index.vue
浏览文件 @
8f756cf5
...
...
@@ -18,12 +18,12 @@
<img
class=
"left-bar-item__icon"
src=
"./assets/images/carAI2.png"
/>
<div
class=
"left-bar-item__text"
>
车辆识别
</div>
</div>
<Face
v-if=
"openFace"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
@
close=
"openFace = false"
/>
<Car
v-if=
"openPlate"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
@
close=
"openPlate = false"
/>
<Face
v-if=
"openFace"
class=
"ai-dialog"
:uavId=
"uav.
device
Id"
@
close=
"openFace = false"
/>
<Car
v-if=
"openPlate"
class=
"ai-dialog"
:uavId=
"uav.
device
Id"
@
close=
"openPlate = false"
/>
<Traffic
v-if=
"openTraffic"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
:uavId=
"uav.
device
Id"
@
close=
"openTraffic = false"
/>
<Jm
v-if=
"openModeling"
:device=
"device"
class=
"jm-dialog"
@
close=
"openModeling = false"
></Jm>
...
...
src/components/MMCFlightControlCenter/components/hangar/components/controlPanel/components/controlRight/components/logger/index.vue
浏览文件 @
8f756cf5
...
...
@@ -135,7 +135,7 @@ export default {
*/
onClear
()
{
let
dataSet
=
this
.
$store
.
state
.
MMCMQTT
.
dataSet
;
dataSet
[
this
.
hangar
.
hard
Id
][
3
]
=
null
;
dataSet
[
this
.
hangar
.
device
Id
][
3
]
=
null
;
this
.
$store
.
commit
(
"MMCMQTT/setState"
,
{
key
:
"dataSet"
,
value
:
{
...
...
src/components/MMCFlightControlCenter/components/hangar/components/list/components/item/index.vue
浏览文件 @
8f756cf5
...
...
@@ -33,7 +33,7 @@
>
<el-checkbox
:disabled=
"device.online !== 1"
:value=
"hangar && device.
hardId === hangar.hard
Id && device.isCheck"
:value=
"hangar && device.
deviceId === hangar.device
Id && device.isCheck"
@
change=
"(e) => handClick(e, device)"
></el-checkbox>
</el-tooltip>
...
...
src/components/MMCFlightControlCenter/components/hangar/mixins/linkFusion.js
浏览文件 @
8f756cf5
...
...
@@ -7,10 +7,10 @@ export default {
...
mapState
(
"MMCFlightControlCenter/uav"
,
[
"uav"
]),
// mqtt实时数据
mqttDataSetHangar
()
{
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
hangar
?.
hard
Id
];
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
hangar
?.
device
Id
];
},
mqttDataSetUav
()
{
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
uav
?.
hard
Id
];
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
uav
?.
device
Id
];
},
mqttUrl
()
{
return
this
.
$store
.
getters
[
"MMCFlightControlCenter/mqttUrl"
];
...
...
src/components/MMCFlightControlCenter/components/mount/MMC_Gimbal_GAS/index.vue
浏览文件 @
8f756cf5
...
...
@@ -276,7 +276,7 @@ export default {
},
},
mounted
()
{
this
.
GAStopic
=
"GAS/RECEIVE/"
+
this
.
$uav
.
hard
Id
;
this
.
GAStopic
=
"GAS/RECEIVE/"
+
this
.
$uav
.
device
Id
;
// this.initMqtt();
this
.
click_billboard
();
},
...
...
@@ -392,7 +392,7 @@ export default {
this
.
statrTime
=
setInterval
(
async
()
=>
{
const
data
=
await
Control_API
.
gasRecords
({
size
:
1
,
mountHardId
:
this
.
$uav
.
hard
Id
,
mountHardId
:
this
.
$uav
.
device
Id
,
sort
:
"-id"
,
// startTime: dayjs().format("YYYY-MM-DD HH:mm:ss"),
});
...
...
@@ -411,10 +411,10 @@ export default {
},
1000
);
},
async
opengasRecordsFn
()
{
await
Control_API
.
opengasRecords
(
this
.
$uav
.
hard
Id
);
await
Control_API
.
opengasRecords
(
this
.
$uav
.
device
Id
);
},
async
delgasRecordsFn
()
{
await
Control_API
.
delgasRecords
(
this
.
$uav
.
hard
Id
);
await
Control_API
.
delgasRecords
(
this
.
$uav
.
device
Id
);
},
switchFn
()
{
if
(
this
.
GSAFlag
)
{
...
...
@@ -464,7 +464,7 @@ export default {
if
(
GSAentities
.
length
==
0
)
{
let
entities
=
viewer
.
entities
;
console
.
log
(
entities
,
"entities"
);
this
.
uavModel
=
entities
.
getById
(
`model_
${
this
.
$uav
.
hard
Id
}
`
);
this
.
uavModel
=
entities
.
getById
(
`model_
${
this
.
$uav
.
device
Id
}
`
);
console
.
log
(
this
.
uavModel
,
"this.uavModel"
);
if
(
this
.
uavModel
)
{
let
time
=
Cesium
.
JulianDate
.
now
();
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/controlPanel/components/controlLeft/index.vue
浏览文件 @
8f756cf5
...
...
@@ -27,12 +27,12 @@
<img
class=
"left-bar-item__icon"
src=
"./assets/images/ksjm.png"
/>
<div
class=
"left-bar-item__text"
>
快速建模
</div>
</div>
-->
<Face
v-if=
"openFace"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
@
close=
"openFace = false"
/>
<Car
v-if=
"openPlate"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
@
close=
"openPlate = false"
/>
<Face
v-if=
"openFace"
class=
"ai-dialog"
:uavId=
"uav.
device
Id"
@
close=
"openFace = false"
/>
<Car
v-if=
"openPlate"
class=
"ai-dialog"
:uavId=
"uav.
device
Id"
@
close=
"openPlate = false"
/>
<Traffic
v-if=
"openTraffic"
class=
"ai-dialog"
:uavId=
"uav.
hard
Id"
:uavId=
"uav.
device
Id"
@
close=
"openTraffic = false"
/>
<Jm
v-if=
"openModeling"
:device=
"device"
class=
"jm-dialog"
@
close=
"openModeling = false"
></Jm>
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/controlPanel/components/controlRight/components/alarmLamp/index.vue
浏览文件 @
8f756cf5
...
...
@@ -86,7 +86,7 @@ export default {
},
type
:
531
,
};
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
hard
Id
}
`
;
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
device
Id
}
`
;
this
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
,
data
,
...
...
@@ -105,7 +105,7 @@ export default {
},
type
:
531
,
};
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
hard
Id
}
`
;
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
device
Id
}
`
;
this
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
,
data
,
...
...
@@ -124,7 +124,7 @@ export default {
},
type
:
531
,
};
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
hard
Id
}
`
;
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
device
Id
}
`
;
this
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
,
data
,
...
...
@@ -143,7 +143,7 @@ export default {
},
type
:
531
,
};
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
hard
Id
}
`
;
let
topic
=
`PX4/OBTAIN/
${
this
.
uav
.
device
Id
}
`
;
this
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
,
data
,
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/controlPanel/components/controlRight/components/controlList/components/logger/index.vue
浏览文件 @
8f756cf5
...
...
@@ -60,7 +60,7 @@ export default {
},
onClear
()
{
let
dataSet
=
this
.
$store
.
state
.
MMCMQTT
.
dataSet
;
dataSet
[
this
.
uav
.
hard
Id
][
270
]
=
null
;
dataSet
[
this
.
uav
.
device
Id
][
270
]
=
null
;
this
.
$store
.
commit
(
"MMCMQTT/setState"
,
{
key
:
"dataSet"
,
value
:
{
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/controlPanel/components/controlRight/components/health/components/logs/index.vue
浏览文件 @
8f756cf5
...
...
@@ -188,7 +188,7 @@ export default {
endTime
:
this
.
search
.
endTime
,
pageNo
:
this
.
search
.
pageNo
,
pageSize
:
this
.
search
.
pageSize
,
deviceHardId
:
this
.
uav
.
hard
Id
,
deviceHardId
:
this
.
uav
.
device
Id
,
mark
:
this
.
type
==
"VPN"
?
"公网"
:
this
.
type
==
"SPE"
?
"专网"
:
""
,
};
this
.
flag
=
false
;
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/controlPanel/components/controlRight/index.vue
浏览文件 @
8f756cf5
...
...
@@ -104,7 +104,7 @@
/>
<MountController
@
webscoketFn=
"(data) => fun(data)"
v-if=
"uav && uav.
hard
Id"
v-if=
"uav && uav.
device
Id"
ref=
"MountControllerRef"
/>
<AlarmLamp
v-if=
"showAlarmLamp"
:uav=
"uav"
@
close=
"showAlarmLamp = false"
/>
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/player/components/qingliu/index.vue
浏览文件 @
8f756cf5
...
...
@@ -5,14 +5,14 @@
class=
"timeStr"
ref=
"timeStr"
:class=
"infoflag ? 'timeStrStyle' : ''"
v-if=
"device.
hard
Id"
v-if=
"device.
device
Id"
v-show=
"isInfoShow && !device.videos.osd"
>
{{
timeStr
||
""
}}
</div>
<div
class=
"wsDataleft"
ref=
"wsDataleft"
:class=
"infoflag ? 'leftStyle' : ''"
v-if=
"device.
hard
Id"
v-if=
"device.
device
Id"
v-show=
"isInfoShow && !device.videos.osd"
>
<div>
经度:
{{
wsData
.
longitude
||
0
}}
</div>
...
...
@@ -25,7 +25,7 @@
class=
"wsDataright"
ref=
"wsDataright"
:class=
"infoflag ? 'rightStyle' : ''"
v-if=
"device.
hard
Id"
v-if=
"device.
device
Id"
v-show=
"isInfoShow && !device.videos.osd"
>
<div>
盐城
</div>
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/player/index.vue
浏览文件 @
8f756cf5
...
...
@@ -395,7 +395,7 @@
</div>
</div>
<FaceAI
v-if=
"faceAiShow"
:uavId=
"pid"
@
closeface=
"faceAiShow = false"
/>
<CarAI
v-if=
"carAiShow"
:uavId=
"device.
hard
Id"
:list=
"carList"
@
closecar=
"carAiShow = false"
/>
<CarAI
v-if=
"carAiShow"
:uavId=
"device.
device
Id"
:list=
"carList"
@
closecar=
"carAiShow = false"
/>
<Traffic
v-if=
"trafficShow"
:trafficData=
"trafficData"
@
close=
"trafficShow = false"
/>
<carTraffic
v-if=
"cartrafficShow"
...
...
@@ -750,7 +750,7 @@ export default {
},
async
checkUseOperateFn
(
device
)
{
// 查看是否有控制权限
let
res
=
await
API
.
FCKERNEL
.
checkUseOperate
({
hard
Id
:
device
});
let
res
=
await
API
.
FCKERNEL
.
checkUseOperate
({
device
Id
:
device
});
if
(
res
.
code
==
201
)
{
this
.
$message
.
warning
(
res
.
msg
);
return
false
;
...
...
@@ -763,7 +763,7 @@ export default {
},
async
VideoModelChange
()
{
let
res
=
await
API
.
FCKERNEL
.
checkUseOperate
({
hardId
:
this
.
device
.
hard
Id
,
deviceId
:
this
.
device
.
device
Id
,
});
if
(
res
.
code
==
201
)
{
this
.
$message
.
warning
(
res
.
msg
);
...
...
@@ -820,11 +820,11 @@ export default {
},
//车流密度
async
carFrame
()
{
this
.
carFlow
(
this
.
device
.
hard
Id
);
this
.
carFlow
(
this
.
device
.
device
Id
);
},
//人流密度
async
frame
()
{
this
.
flow
(
this
.
device
.
hard
Id
);
this
.
flow
(
this
.
device
.
device
Id
);
},
/**
* 截图
...
...
@@ -880,7 +880,7 @@ export default {
//游泳识别
async
aiIdentifyType
(
aiType
)
{
const
data
=
{
hardId
:
this
.
device
.
hard
Id
,
deviceId
:
this
.
device
.
device
Id
,
mqttType
:
true
,
aiType
,
id
:
this
.
device
.
id
,
...
...
@@ -894,7 +894,7 @@ export default {
const
data
=
new
FormData
();
data
.
append
(
"addtime"
,
dayjs
().
format
(
"YYYY-MM-DD HH:mm:ss"
));
data
.
append
(
"file"
,
blob
);
data
.
append
(
"
hardId"
,
this
.
device
.
hard
Id
);
data
.
append
(
"
deviceId"
,
this
.
device
.
device
Id
);
data
.
append
(
"name"
,
this
.
device
.
name
);
data
.
append
(
"imageType"
,
1
);
data
.
append
(
"sortie"
,
this
.
flightSortie
||
""
);
...
...
@@ -922,7 +922,7 @@ export default {
// 人脸车牌识别
handle
(
command
)
{
// this.getcanvas(command);
this
.
getcanvasFaceCar
(
command
,
this
.
device
.
hard
Id
,
this
.
device
.
id
);
this
.
getcanvasFaceCar
(
command
,
this
.
device
.
device
Id
,
this
.
device
.
id
);
},
/**
* 居中
...
...
@@ -954,7 +954,7 @@ export default {
// if mountStatus =1 代表启用 屏幕指点功能
if
(
mountData
.
mountStatus
==
1
&&
device
.
hardId
==
mountData
.
hard
Id
&&
device
.
deviceId
==
mountData
.
device
Id
&&
mountData
.
moveType
==
"wrj"
)
{
let
evt
=
window
.
event
||
el
;
...
...
@@ -993,7 +993,7 @@ export default {
let
mounteList
=
{
data
:
buffer
,
...
mountData
};
if
(
buffer
)
{
if
(
this
.
device
.
network
===
1
)
{
let
topic
=
"PX4/OBTAIN/"
+
this
.
device
.
hard
Id
;
let
topic
=
"PX4/OBTAIN/"
+
this
.
device
.
device
Id
;
this
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
topic
,
data
:
{
...
...
@@ -1018,7 +1018,7 @@ export default {
cmdBuffer
:
mounteList
.
data
.
join
(
","
),
cmdName
:
mounteList
.
name
,
},
deviceHardId
:
mounteList
.
hard
Id
,
deviceHardId
:
mounteList
.
device
Id
,
};
this
.
$store
.
dispatch
(
"MMCGroundStation/publish"
,
sendData
);
}
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/uavList/components/list/components/item/index.vue
浏览文件 @
8f756cf5
...
...
@@ -15,18 +15,18 @@
/>
</div>
<div
class=
"online-info"
>
(共
{{
data
.
on
line
+
data
.
offline
}}
架
(共
{{
data
.
on
LineCount
+
data
.
offLineCount
}}
架
<span
class=
"ml10"
:class=
"
{ online: data.on
line
}"
>
{{
data
.
on
line
}}
在线
</span>
:class=
"
{ online: data.on
LineCount
}"
>
{{
data
.
on
LineCount
}}
在线
</span>
/
{{
data
.
off
line
}}
离线)
{{
data
.
off
LineCount
}}
离线)
</div>
</div>
<div
class=
"uav-item-child-box"
:class=
"
{ collapse: data.collapse }">
<Item
v-for=
"child in data.child
s
"
v-for=
"child in data.child"
:key=
"child.id"
:data=
"child"
:level=
"level+1"
...
...
@@ -34,20 +34,25 @@
/>
<div
class=
"device-item-box"
:class=
"
{ online: device.
online
== 1 }"
v-for="device in data.
uavs
"
:key="`device_${device.
i
d}`"
:class=
"
{ online: device.
status
== 1 }"
v-for="device in data.
driveMonitorReqVOList
"
:key="`device_${device.
deviceI
d}`"
>
<div
class=
"device-name"
>
<!--
<span
style=
"margin-right:10px"
:class=
"device.status==1&&device.currentOperator==1? 'blue' : device.status==1&&device.currentOperator!=1 ?'yellow':'' "
:title=
"device.name"
>
{{
device
.
name
}}
</span>
-->
<span
style=
"margin-right:10px"
:class=
"
device.online==1&&device.currentOperator==1? 'blue' : device.online==1&&device.currentOperator!=1 ?'yellow':''
"
:class=
"
'blue'
"
:title=
"device.name"
>
{{
device
.
name
}}
</span>
<span
style=
"color:#31DB24 "
class=
"dib"
v-if=
" device.
online
== 1 "
>
(在线)
</span>
<span
style=
"color:#31DB24 "
class=
"dib"
v-if=
" device.
status
== 1 "
>
(在线)
</span>
<span
v-else
class=
"dib"
>
(离线)
</span>
<div
class=
"symbol-icon-box"
>
<template
v-if=
"device.modelName && device.modelName.includes('入云龙1')"
>
<
!--
<
template
v-if=
"device.modelName && device.modelName.includes('入云龙1')"
>
<div
class=
"uav_version status-icon cp"
>
<img
src=
"./assets/images/I.svg"
/>
</div>
...
...
@@ -62,25 +67,31 @@
<div
class=
"uav_version status-icon cp"
>
<img
src=
"./assets/images/cq.svg"
/>
</div>
</
template
>
-->
<
template
>
<div
class=
"uav_version status-icon cp"
>
<img
src=
"./assets/images/I.svg"
/>
<img
src=
"./assets/images/I.svg"
/>
</div>
</
template
>
</div>
</div>
<div
class=
"device-fns"
>
<div
class=
"iconfont icon-luxiang_xianxing"
:class=
"{ active: uav && device.
id === uav.i
d && uav.showPlayer }"
:class=
"{ active: uav && device.
deviceId === uav.deviceI
d && uav.showPlayer }"
title=
"视频"
@
click=
"onShowPlayer(device)"
></div>
<div
v-if=
"device.
online
"
v-if=
"device.
status
"
class=
"iconfont icon-kongzhi_xianxing"
:class=
"{ active: uav && device.
id === uav.i
d && uav.showPanel }"
:class=
"{ active: uav && device.
deviceId === uav.deviceI
d && uav.showPanel }"
title=
"控制面板"
@
click=
"onShowPanel(device)"
></div>
<div
class=
"jieg"
title=
"接管无人机 "
v-if=
"device.
online
"
@
click=
"onTakeOver(device)"
>
<div
class=
"jieg"
title=
"接管无人机 "
v-if=
"device.
status
"
@
click=
"onTakeOver(device)"
>
<img
src=
"./assets/images/jieguan_active.svg"
v-if=
"device.currentOperator"
/>
<img
src=
"./assets/images/jieguan.svg"
v-else
/>
</div>
...
...
@@ -181,7 +192,7 @@ export default {
*/
async
onShowPanel
(
item
)
{
// 选中与取消选中
if
(
this
.
uav
?.
hardId
===
item
.
hard
Id
)
{
if
(
this
.
uav
?.
deviceId
===
item
.
device
Id
)
{
// 已打开播放器的情况下只需要展示数据面板
if
(
this
.
showPlayer
&&
!
this
.
showPanel
)
{
this
.
$store
.
commit
(
"MMCFlightControlCenter/uav/setState"
,
{
...
...
@@ -215,12 +226,6 @@ export default {
if
(
this
.
uav
)
{
this
.
$store
.
dispatch
(
"MMCFlightControlCenter/uav/unsubscribe"
);
}
if
(
!
item
.
streamConfiguration
)
{
let
res
=
await
Control_API
.
uavDetail
({
id
:
item
.
id
,
});
item
.
streamConfiguration
=
res
.
data
.
streamConfiguration
;
}
this
.
$store
.
commit
(
"MMCFlightControlCenter/uav/setState"
,
{
key
:
"showPanel"
,
value
:
true
,
...
...
@@ -258,7 +263,7 @@ export default {
*/
async
onShowPlayer
(
item
)
{
// 选中与取消选中
if
(
this
.
uav
?.
hardId
===
item
.
hard
Id
)
{
if
(
this
.
uav
?.
deviceId
===
item
.
device
Id
)
{
if
(
this
.
showPlayer
)
{
// 已显示播放器则关掉
this
.
$store
.
commit
(
"MMCFlightControlCenter/uav/setState"
,
{
...
...
@@ -279,11 +284,11 @@ export default {
}
}
else
{
// 在未打开播放器的情况下,有uav信息,到此步时肯定已经展开了面板,判断是否有流媒体信息, 并显示播放器
if
(
!
this
.
uav
.
streamConfiguration
)
{
if
(
!
this
.
uav
.
deviceStreamReqVOList
)
{
let
res
=
await
Control_API
.
uavDetail
({
id
:
item
.
id
,
});
item
.
streamConfiguration
=
res
.
data
.
streamConfiguration
;
item
.
deviceStreamReqVOList
=
res
.
data
.
deviceStreamReqVOList
;
}
this
.
$store
.
commit
(
"MMCFlightControlCenter/uav/setState"
,
{
key
:
"showPlayer"
,
...
...
@@ -315,7 +320,7 @@ export default {
let
res
=
await
Control_API
.
uavDetail
({
id
:
item
.
id
,
});
item
.
streamConfiguration
=
res
.
data
.
streamConfiguration
;
item
.
deviceStreamReqVOList
=
res
.
data
.
deviceStreamReqVOList
;
this
.
$store
.
commit
(
"MMCFlightControlCenter/uav/setState"
,
{
key
:
"showPlayer"
,
value
:
true
,
...
...
src/components/MMCFlightControlCenter/components/uavApplications/components/uavList/data.json
浏览文件 @
8f756cf5
...
...
@@ -29,7 +29,7 @@
"updatetime"
:
"2024-03-18 15:15:18"
,
"name"
:
"肇庆无人机test"
,
"sn"
:
"3987462549735735363"
,
"
hard
Id"
:
"3987462549735735363"
,
"
device
Id"
:
"3987462549735735363"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -64,7 +64,7 @@
"updatetime"
:
"2024-03-16 14:02:52"
,
"name"
:
"mock-小旋风II-交通事故处置-006"
,
"sn"
:
"mock-小旋风-deviceHardId-006"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-006"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-006"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -99,7 +99,7 @@
"updatetime"
:
"2024-03-16 14:04:37"
,
"name"
:
"mock-入云龙-景区安全巡查-002"
,
"sn"
:
"mock-小旋风-deviceHardId-002"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-002"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-002"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -138,7 +138,7 @@
"updatetime"
:
"2024-02-27 16:23:57"
,
"name"
:
"MMC301R22205363"
,
"sn"
:
"MMC301R22205363"
,
"
hard
Id"
:
"MMC301R22205363"
,
"
device
Id"
:
"MMC301R22205363"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -173,7 +173,7 @@
"updatetime"
:
"2024-03-05 09:11:02"
,
"name"
:
"盐城8189"
,
"sn"
:
"MMC301R22208189"
,
"
hard
Id"
:
"MMC301R22208189"
,
"
device
Id"
:
"MMC301R22208189"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -208,7 +208,7 @@
"updatetime"
:
"2024-03-18 14:57:30"
,
"name"
:
"盐城气体检测"
,
"sn"
:
"4852153673897607219"
,
"
hard
Id"
:
"4852153673897607219"
,
"
device
Id"
:
"4852153673897607219"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -243,7 +243,7 @@
"updatetime"
:
"2024-02-08 14:38:38"
,
"name"
:
"盐城气体检测无人机"
,
"sn"
:
"MMC301R22208140"
,
"
hard
Id"
:
"MMC301R22208140"
,
"
device
Id"
:
"MMC301R22208140"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -278,7 +278,7 @@
"updatetime"
:
"2024-03-18 14:43:46"
,
"name"
:
"盐城鹰巢"
,
"sn"
:
"LMMC3R2KUAV202311001"
,
"
hard
Id"
:
"LMMC3R2KUAV202311001"
,
"
device
Id"
:
"LMMC3R2KUAV202311001"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -313,7 +313,7 @@
"updatetime"
:
"2024-03-15 13:44:31"
,
"name"
:
"测试鹰巢"
,
"sn"
:
"MMC301X22306027"
,
"
hard
Id"
:
"MMC301X22306027"
,
"
device
Id"
:
"MMC301X22306027"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -348,7 +348,7 @@
"updatetime"
:
"2023-12-28 11:11:38"
,
"name"
:
"鹰巢2"
,
"sn"
:
"MMC301X22306038"
,
"
hard
Id"
:
"MMC301X22306038"
,
"
device
Id"
:
"MMC301X22306038"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -383,7 +383,7 @@
"updatetime"
:
"2023-12-28 15:33:21"
,
"name"
:
"鹰巢22222"
,
"sn"
:
"MMC301X22306023"
,
"
hard
Id"
:
"MMC301X22306023"
,
"
device
Id"
:
"MMC301X22306023"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -418,7 +418,7 @@
"updatetime"
:
"2023-12-28 15:33:48"
,
"name"
:
"大疆001"
,
"sn"
:
"1234561"
,
"
hard
Id"
:
"1234561"
,
"
device
Id"
:
"1234561"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
45
,
...
...
@@ -453,7 +453,7 @@
"updatetime"
:
"2023-12-28 15:33:50"
,
"name"
:
"测试设备"
,
"sn"
:
"1234567891234567891012"
,
"
hard
Id"
:
"1234567891012"
,
"
device
Id"
:
"1234567891012"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -488,7 +488,7 @@
"updatetime"
:
"2024-03-18 10:32:40"
,
"name"
:
"mock-入云龙II-应急救援抛投-007"
,
"sn"
:
"mock-小旋风-deviceHardId-007"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-007"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-007"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -523,7 +523,7 @@
"updatetime"
:
"2024-03-13 18:25:04"
,
"name"
:
"mock-入云龙II-洪涝灾害应急巡查-001"
,
"sn"
:
"mock-小旋风-deviceHardId-001"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-001"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-001"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -583,7 +583,7 @@
"updatetime"
:
"2023-09-07 09:43:47"
,
"name"
:
"乌鲁木齐市-入云龙2"
,
"sn"
:
"3472927426180284439"
,
"
hard
Id"
:
"3472927426180284439"
,
"
device
Id"
:
"3472927426180284439"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
46
,
...
...
@@ -626,7 +626,7 @@
"updatetime"
:
"2023-12-26 17:50:23"
,
"name"
:
"福建科比特红"
,
"sn"
:
"4852153630946099246"
,
"
hard
Id"
:
"4852153630946099246"
,
"
device
Id"
:
"4852153630946099246"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -661,7 +661,7 @@
"updatetime"
:
"2024-03-04 16:13:18"
,
"name"
:
"福建无人机"
,
"sn"
:
"6427006125642350639"
,
"
hard
Id"
:
"6427006125642350639"
,
"
device
Id"
:
"6427006125642350639"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -704,7 +704,7 @@
"updatetime"
:
"2023-08-25 15:34:34"
,
"name"
:
"山西指挥车入云龙"
,
"sn"
:
"3617042597074960431"
,
"
hard
Id"
:
"3617042597074960431"
,
"
device
Id"
:
"3617042597074960431"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
46
,
...
...
@@ -747,7 +747,7 @@
"updatetime"
:
"2024-02-26 17:27:41"
,
"name"
:
"神思项目测试"
,
"sn"
:
"3987462549734752306"
,
"
hard
Id"
:
"3987462549734752306"
,
"
device
Id"
:
"3987462549734752306"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -782,7 +782,7 @@
"updatetime"
:
"2024-02-26 18:40:51"
,
"name"
:
"神思入云龙2"
,
"sn"
:
"MMC301R22208087"
,
"
hard
Id"
:
"MMC301R22208087"
,
"
device
Id"
:
"MMC301R22208087"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -817,7 +817,7 @@
"updatetime"
:
"2024-03-13 18:25:04"
,
"name"
:
"mock-小旋风II-河长制水利常态化巡查-004"
,
"sn"
:
"mock-小旋风-deviceHardId-004"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-004"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-004"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -860,7 +860,7 @@
"updatetime"
:
"2024-03-18 10:59:32"
,
"name"
:
"肇庆鹰巢"
,
"sn"
:
"LMMC3X2KUAV202311051"
,
"
hard
Id"
:
"LMMC3X2KUAV202311051"
,
"
device
Id"
:
"LMMC3X2KUAV202311051"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -895,7 +895,7 @@
"updatetime"
:
"2024-03-11 15:02:59"
,
"name"
:
"入云龙2"
,
"sn"
:
"6427006134231695394"
,
"
hard
Id"
:
"6427006134231695394"
,
"
device
Id"
:
"6427006134231695394"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -938,7 +938,7 @@
"updatetime"
:
"2023-11-24 10:47:57"
,
"name"
:
"M10-1"
,
"sn"
:
"YYD700000200"
,
"
hard
Id"
:
"YYD700000200"
,
"
device
Id"
:
"YYD700000200"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -988,7 +988,7 @@
"updatetime"
:
"2024-03-13 18:25:04"
,
"name"
:
"mock-小旋风II-AI车辆识别巡查-005"
,
"sn"
:
"mock-小旋风-deviceHardId-005"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-005"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-005"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -1023,7 +1023,7 @@
"updatetime"
:
"2024-03-13 18:25:04"
,
"name"
:
"mock-入云龙-防溺水巡查-003"
,
"sn"
:
"mock-小旋风-deviceHardId-003"
,
"
hard
Id"
:
"mock-小旋风-deviceHardId-003"
,
"
device
Id"
:
"mock-小旋风-deviceHardId-003"
,
"status"
:
1
,
"online"
:
1
,
"cateId"
:
39
,
...
...
@@ -1069,7 +1069,7 @@
"updatetime"
:
"2023-12-20 14:55:44"
,
"name"
:
"无人机1"
,
"sn"
:
"3987462545440571438"
,
"
hard
Id"
:
"3987462545440571438"
,
"
device
Id"
:
"3987462545440571438"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1104,7 +1104,7 @@
"updatetime"
:
"2023-12-19 11:12:41"
,
"name"
:
"福建公安版"
,
"sn"
:
"XLC100000200"
,
"
hard
Id"
:
"XLC100000200"
,
"
device
Id"
:
"XLC100000200"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1139,7 +1139,7 @@
"updatetime"
:
"2023-12-19 11:12:37"
,
"name"
:
"福建标准版"
,
"sn"
:
"IPE000000200"
,
"
hard
Id"
:
"IPE000000200"
,
"
device
Id"
:
"IPE000000200"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1174,7 +1174,7 @@
"updatetime"
:
"2023-12-19 11:12:47"
,
"name"
:
"肇庆测试机"
,
"sn"
:
"3617042524062351414"
,
"
hard
Id"
:
"3617042524062351414"
,
"
device
Id"
:
"3617042524062351414"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1209,7 +1209,7 @@
"updatetime"
:
"2024-01-31 11:33:41"
,
"name"
:
"MMC9058"
,
"sn"
:
"MMC301R22209058"
,
"
hard
Id"
:
"MMC301R22209058"
,
"
device
Id"
:
"MMC301R22209058"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1244,7 +1244,7 @@
"updatetime"
:
"2023-12-19 11:11:30"
,
"name"
:
"飞控中心无人机"
,
"sn"
:
"MMC301R22208058"
,
"
hard
Id"
:
"MMC301R22208058"
,
"
device
Id"
:
"MMC301R22208058"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1279,7 +1279,7 @@
"updatetime"
:
"2023-12-19 11:11:03"
,
"name"
:
"肇庆无人机5"
,
"sn"
:
"3987462545441423395"
,
"
hard
Id"
:
"3987462545441423395"
,
"
device
Id"
:
"3987462545441423395"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1314,7 +1314,7 @@
"updatetime"
:
"2023-12-19 11:11:22"
,
"name"
:
"肇庆无人机2"
,
"sn"
:
"3617042597077385265"
,
"
hard
Id"
:
"3617042597077385265"
,
"
device
Id"
:
"3617042597077385265"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
39
,
...
...
@@ -1349,7 +1349,7 @@
"updatetime"
:
"2024-03-13 16:37:30"
,
"name"
:
"肇庆无人机"
,
"sn"
:
"3987462549736914976"
,
"
hard
Id"
:
"3987462549736914976"
,
"
device
Id"
:
"3987462549736914976"
,
"status"
:
1
,
"online"
:
0
,
"cateId"
:
40
,
...
...
src/components/MMCFlightControlCenter/components/uavApplications/mixins/linkFusion.js
浏览文件 @
8f756cf5
...
...
@@ -3,11 +3,11 @@ export default {
computed
:
{
// mqtt实时数据
mqttDataSet
()
{
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
uav
?.
hard
Id
];
return
this
.
$store
.
state
.
MMCMQTT
?.
dataSet
?.[
this
.
uav
?.
device
Id
];
},
// 地面站实时数据
gsDataSet
()
{
return
this
.
$store
.
state
.
MMCGroundStation
?.
dataSet
?.[
this
.
uav
?.
hard
Id
];
return
this
.
$store
.
state
.
MMCGroundStation
?.
dataSet
?.[
this
.
uav
?.
device
Id
];
},
mqttUrl
()
{
return
this
.
$store
.
getters
[
"MMCFlightControlCenter/mqttUrl"
];
...
...
src/components/MMCFlightControlCenter/index.vue
浏览文件 @
8f756cf5
...
...
@@ -193,7 +193,7 @@ export default {
});
this
.
$store
.
commit
(
"MMCFlightControlCenter/setState"
,
{
key
:
"token"
,
value
:
this
.
userInfo
.
t
oken
,
value
:
this
.
userInfo
.
accessT
oken
,
});
this
.
$store
.
commit
(
"MMCFlightControlCenter/setState"
,
{
key
:
"userInfo"
,
...
...
src/components/MMCFlightControlCenter/store/hangar.js
浏览文件 @
8f756cf5
...
...
@@ -116,17 +116,17 @@ const actions = {
*/
subscribe
({
state
,
dispatch
})
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/subscribe"
,
{
topic
:
"APRON/RECEIVE/"
+
state
.
hangar
.
hard
Id
,
topic
:
"APRON/RECEIVE/"
+
state
.
hangar
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt订阅主题"
,
"APRON/RECEIVE/"
+
state
.
hangar
.
hard
Id
);
console
.
log
(
"mqtt订阅主题"
,
"APRON/RECEIVE/"
+
state
.
hangar
.
device
Id
);
},
});
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/subscribe"
,
{
topic
:
"PROCESS/RECEIVE/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/RECEIVE/"
+
state
.
hangar
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt订阅主题"
,
"PROCESS/RECEIVE/"
+
state
.
hangar
.
hard
Id
);
console
.
log
(
"mqtt订阅主题"
,
"PROCESS/RECEIVE/"
+
state
.
hangar
.
device
Id
);
},
});
},
...
...
@@ -136,22 +136,22 @@ const actions = {
*/
unsubscribe
({
state
,
dispatch
})
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/unsubscribe"
,
{
topic
:
"APRON/RECEIVE/"
+
state
.
hangar
.
hard
Id
,
topic
:
"APRON/RECEIVE/"
+
state
.
hangar
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt取消订阅主题"
,
"APRON/RECEIVE/"
+
state
.
hangar
.
hard
Id
"APRON/RECEIVE/"
+
state
.
hangar
.
device
Id
);
},
});
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/unsubscribe"
,
{
topic
:
"PROCESS/RECEIVE/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/RECEIVE/"
+
state
.
hangar
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt取消订阅主题"
,
"PROCESS/RECEIVE/"
+
state
.
hangar
.
hard
Id
"PROCESS/RECEIVE/"
+
state
.
hangar
.
device
Id
);
},
});
...
...
@@ -178,7 +178,7 @@ const actions = {
*/
out
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2059
,
},
...
...
@@ -194,7 +194,7 @@ const actions = {
*/
in
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2073
,
},
...
...
@@ -210,7 +210,7 @@ const actions = {
*/
chargeStart
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2060
,
},
...
...
@@ -226,7 +226,7 @@ const actions = {
*/
chargeEnd
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2071
,
},
...
...
@@ -242,7 +242,7 @@ const actions = {
*/
warmUp
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2072
,
},
...
...
@@ -258,7 +258,7 @@ const actions = {
*/
dormancy
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
2061
,
},
...
...
@@ -274,7 +274,7 @@ const actions = {
*/
processExit
({
state
,
commit
,
dispatch
},
data
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
100001
,
},
...
...
@@ -294,15 +294,15 @@ const actions = {
// 生成架次號
const
getFlightSortic
=
await
Control_API
.
getFlightSortic
({
taskId
:
state
.
airlineData
.
id
,
deviceHardId
:
data
.
uav
.
hard
Id
,
deviceHardId
:
data
.
uav
.
device
Id
,
});
// 一键任务指令
const
waypointList
=
state
.
airlineData
?.
content
;
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
hard
Id
,
topic
:
"PROCESS/OBTAIN/"
+
state
.
hangar
.
device
Id
,
data
:
{
cmdControlType
:
100004
,
uavDeviceId
:
data
.
uav
.
hard
Id
,
uavDeviceId
:
data
.
uav
.
device
Id
,
wayLineObj
:
{
taskId
:
state
.
airlineData
.
id
,
flightSortiesID
:
getFlightSortic
.
data
,
...
...
src/components/MMCFlightControlCenter/store/uav.js
浏览文件 @
8f756cf5
...
...
@@ -283,7 +283,7 @@ const actions = {
},
// 通过mqtt更新实时采集数据
updateByMQTT
({
commit
,
state
,
dispatch
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
// console.log(data,'datadata');
// mqtt链路
const
type258
=
data
[
258
]?.
data
||
{};
...
...
@@ -448,9 +448,9 @@ const actions = {
subscribe
({
state
,
dispatch
})
{
if
(
state
.
uav
.
network
===
1
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/subscribe"
,
{
topic
:
"PX4/RECEIVE/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/RECEIVE/"
+
state
.
uav
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt订阅主题"
,
"PX4/RECEIVE/"
+
state
.
uav
.
hard
Id
);
ok
&&
console
.
log
(
"mqtt订阅主题"
,
"PX4/RECEIVE/"
+
state
.
uav
.
device
Id
);
},
});
}
else
{
...
...
@@ -474,7 +474,7 @@ const actions = {
// 订阅取数据不一定有用, ws的订阅需要后端做了处理才生效, 未处理则会收到所有无人机的数据, 负担非常大
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/subscribe"
,
state
.
uav
.
hard
Id
state
.
uav
.
device
Id
);
},
})
...
...
@@ -493,17 +493,17 @@ const actions = {
unsubscribe
({
state
,
dispatch
})
{
if
(
state
.
uav
.
network
===
1
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/unsubscribe"
,
{
topic
:
"PX4/RECEIVE/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/RECEIVE/"
+
state
.
uav
.
device
Id
,
callback
(
ok
)
{
ok
&&
console
.
log
(
"mqtt取消订阅主题"
,
"PX4/RECEIVE/"
+
state
.
uav
.
hard
Id
);
console
.
log
(
"mqtt取消订阅主题"
,
"PX4/RECEIVE/"
+
state
.
uav
.
device
Id
);
},
});
}
else
{
// 地面站取消订阅后需要关闭ws连接
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/unsubscribe"
,
state
.
uav
.
hard
Id
state
.
uav
.
device
Id
);
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/end"
);
}
...
...
@@ -531,7 +531,7 @@ const actions = {
// 'modelRequest'
// );
const
entity
=
window
.
$mmc
.
viewer
.
entities
.
add
({
id
:
"model_"
+
state
.
uav
.
hard
Id
,
id
:
"model_"
+
state
.
uav
.
device
Id
,
orientation
:
new
Cesium
.
CallbackProperty
(()
=>
{
const
posData
=
UAVDataParser
(
state
.
uavRealTimeData
);
return
posData
.
orientation
;
...
...
@@ -573,7 +573,7 @@ const actions = {
if
(
!
state
.
airlineEntity
)
{
// 创建航线
const
airlineEntity
=
window
.
$mmc
.
viewer
.
entities
.
add
({
id
:
"airline_"
+
state
.
uav
.
hard
Id
,
id
:
"airline_"
+
state
.
uav
.
device
Id
,
polyline
:
{
positions
:
new
Cesium
.
CallbackProperty
((
time
,
result
)
=>
{
return
positions
;
...
...
@@ -611,17 +611,17 @@ const actions = {
*/
async
takeOff
({
state
},
data
)
{
console
.
log
(
state
.
airlineData
,
data
);
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
try
{
// 生成架次號
const
getFlightSortic
=
await
Control_API
.
getFlightSortic
({
taskId
:
state
.
airlineData
.
id
,
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
// 上传航线指令
const
waypointList
=
state
.
airlineData
?.
content
;
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
航线上传
,
data
:
{
...
...
@@ -640,7 +640,7 @@ const actions = {
// 告诉飞控开始任务,并且把架次号和 任务id传过去
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
绑定任务
id
,
data
:
{
...
...
@@ -656,7 +656,7 @@ const actions = {
// 起飞指令
setTimeout
(()
=>
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
航线一键起飞
,
data
:
{
...
...
@@ -680,7 +680,7 @@ const actions = {
data
:
{
cmdValue
:
state
.
airlineData
?.
id
,
},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
// 起飞指令
...
...
@@ -688,7 +688,7 @@ const actions = {
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/order"
,
{
order
:
"起飞"
,
data
:
{},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
data
?.
callback
&&
data
.
callback
(
true
);
},
3000
);
...
...
@@ -700,11 +700,11 @@ const actions = {
*/
async
takeEnd
({
state
},
data
)
{
console
.
log
(
state
.
airlineData
,
data
);
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
try
{
// 结束航线指令
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
525
,
data
:
null
,
...
...
@@ -726,7 +726,7 @@ const actions = {
cmdFunction
:
2280
,
taskId
:
state
.
airlineData
.
id
,
},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
}
catch
(
e
)
{
console
.
log
(
"任务结束失败"
,
e
);
...
...
@@ -738,7 +738,7 @@ const actions = {
// window.$mmc.$store.dispatch("MMCGroundStation/order", {
// order: "起飞",
// data: {},
// deviceHardId: state.uav.
hard
Id,
// deviceHardId: state.uav.
device
Id,
// });
// data?.callback && data.callback(true);
// }, 3000);
...
...
@@ -750,9 +750,9 @@ const actions = {
* @param {*} data
*/
land
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
原地降落
,
},
...
...
@@ -765,7 +765,7 @@ const actions = {
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/order"
,
{
order
:
"降落"
,
data
:
{},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
data
?.
callback
&&
data
.
callback
(
true
);
}
...
...
@@ -776,9 +776,9 @@ const actions = {
* @param {*} data
*/
pauseFly
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
暂停航线任务
,
},
...
...
@@ -791,7 +791,7 @@ const actions = {
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/order"
,
{
order
:
"悬停"
,
data
:
{},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
data
?.
callback
&&
data
.
callback
(
true
);
}
...
...
@@ -802,9 +802,9 @@ const actions = {
* @param {*} data
*/
continueFly
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
继续航线任务
,
},
...
...
@@ -817,7 +817,7 @@ const actions = {
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/order"
,
{
order
:
"航线模式"
,
data
:
{},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
data
?.
callback
&&
data
.
callback
(
true
);
}
...
...
@@ -828,9 +828,9 @@ const actions = {
* @param {*} data
*/
returnFlight
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
返航
,
},
...
...
@@ -843,7 +843,7 @@ const actions = {
window
.
$mmc
.
$store
.
dispatch
(
"MMCGroundStation/order"
,
{
order
:
"返航"
,
data
:
{},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
data
?.
callback
&&
data
.
callback
(
true
);
}
...
...
@@ -854,9 +854,9 @@ const actions = {
* @param {*} data
*/
routeControl
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
航线控制
,
data
:
{
...
...
@@ -880,9 +880,9 @@ const actions = {
* 手动模式
*/
modeManual
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"POSITION"
,
...
...
@@ -900,9 +900,9 @@ const actions = {
* 自动模式
*/
modeAuto
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"AUTO_MISSION"
,
...
...
@@ -927,9 +927,9 @@ const actions = {
},
"xxx"
);
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
514
,
data
:
data
,
...
...
@@ -944,9 +944,9 @@ const actions = {
* 摇杆控制
*/
modeLAND
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"LAND"
,
...
...
@@ -964,9 +964,9 @@ const actions = {
* @param {*} data
*/
changeYGPermissions
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
534
,
data
:
{
...
...
@@ -991,9 +991,9 @@ const actions = {
* 返航模式
*/
modeAUTO_RTL
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"AUTO_RTL"
,
...
...
@@ -1009,9 +1009,9 @@ const actions = {
* 航线模式
*/
modeAUTO_MISSION
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"AUTO_MISSION"
,
...
...
@@ -1028,9 +1028,9 @@ const actions = {
* GPS/定点模式
*/
modePOSITION
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
无人机模式切换
,
data
:
"POSITION"
,
...
...
@@ -1054,7 +1054,7 @@ const actions = {
* @param {number} data.dbID //历史记录id
*/
videoTranscribe
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
const
streamData
=
{
data
:
{
data
:
{
...
...
@@ -1074,7 +1074,7 @@ const actions = {
streamData
.
data
.
data
.
recordControl
=
data
.
recordControl
;
}
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
streamData
,
callback
()
{
data
?.
callback
&&
data
.
callback
(
true
);
...
...
@@ -1087,7 +1087,7 @@ const actions = {
* 查询录制视频状态
*/
videoTranscribeStatus
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
const
streamData
=
{
data
:
{
data
:
{},
...
...
@@ -1101,7 +1101,7 @@ const actions = {
// streamData.data.data.recordControl = this.record;
// }
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
streamData
,
callback
()
{
data
?.
callback
&&
data
.
callback
(
true
);
...
...
@@ -1120,7 +1120,7 @@ const actions = {
* @param {number} data.dbID //历史记录id
*/
takePhotos
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
const
streamData
=
{
data
:
{
data
:
{
...
...
@@ -1138,7 +1138,7 @@ const actions = {
streamData
.
data
.
messageID
=
1007
;
}
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
streamData
,
callback
()
{
data
?.
callback
&&
data
.
callback
(
true
);
...
...
@@ -1154,9 +1154,9 @@ const actions = {
* @param {*} data.mountId 挂载的id
*/
mountDirective
({
state
},
data
)
{
if
(
state
.
uav
.
network
==
1
)
{
if
(
state
.
uav
.
network
==
2
)
{
window
.
$mmc
.
$store
.
dispatch
(
"MMCMQTT/publish"
,
{
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
hard
Id
,
topic
:
"PX4/OBTAIN/"
+
state
.
uav
.
device
Id
,
data
:
{
type
:
window
.
$mmc
.
$store
.
state
.
MMCMQTT
.
orders
.
云台控制指令
can
包透传
,
data
:
{
...
...
@@ -1181,7 +1181,7 @@ const actions = {
cmdBuffer
:
buff
,
cmdName
:
state
.
selectMount
.
gimbalName
,
},
deviceHardId
:
state
.
uav
.
hard
Id
,
deviceHardId
:
state
.
uav
.
device
Id
,
});
}
},
...
...
vue2/package.json
浏览文件 @
8f756cf5
...
...
@@ -47,7 +47,8 @@
},
"rules"
:
{
"vue/multi-word-component-names"
:
"off"
,
"no-undef"
:
"off"
"no-undef"
:
"off"
,
"no-debugger"
:
"off"
}
},
"browserslist"
:
[
...
...
vue2/src/views/fkzxIframe/demo.vue
浏览文件 @
8f756cf5
...
...
@@ -28,9 +28,9 @@
<iframe
id=
"iframe"
ref=
"iframe"
src=
"http
s
://localhost:9000/"
src=
"http://localhost:9000/"
style=
"width: 1920px; height: 1000px;"
anonymous
anonymous
allowfullscreen=
"true"
></iframe>
</div>
...
...
@@ -87,7 +87,7 @@ export default {
data
()
{
return
{
isIframeReady
:
false
,
//是否接收到iframe里的ready事件
baseUrl
:
"http
s://test.tmj.mmcuav.cn
"
,
baseUrl
:
"http
://192.168.5.80:30080
"
,
devMode
:
false
,
scene1
:
false
,
// 场景类型 true: 无人机 false: 机库
useSTLAirway
:
false
,
// 使用标准航线库
...
...
@@ -184,13 +184,13 @@ export default {
immediate
:
true
,
handler
()
{
if
(
this
.
devMode
)
{
this
.
account
=
"
mmctest@
admin"
;
this
.
password
=
"
test@Admin001
"
;
this
.
baseUrl
=
"http
s://test.tmj.mmcuav.cn
"
;
this
.
account
=
"admin"
;
this
.
password
=
"
mmc@123456
"
;
this
.
baseUrl
=
"http
://192.168.5.80:30080
"
;
}
else
{
this
.
account
=
"
mmcadmin@kbt001
"
;
this
.
password
=
"
TMJMMC@kbta0227&adm
"
;
this
.
baseUrl
=
"http
s://tmj.mmcuav.cn
"
;
this
.
account
=
"
admin
"
;
this
.
password
=
"
mmc@123456
"
;
this
.
baseUrl
=
"http
://192.168.5.80:30080
"
;
}
this
.
postIframe
({
type
:
"param"
,
...
...
@@ -635,25 +635,20 @@ export default {
let
formData
=
new
FormData
();
formData
.
append
(
"userAccount"
,
this
.
account
);
formData
.
append
(
"password"
,
Base64
.
encode
(
this
.
password
));
let
res
1
=
await
fetch
(
this
.
baseUrl
+
"/crm
/login"
,
{
let
res
=
await
fetch
(
this
.
baseUrl
+
"/admin-api/system/auth
/login"
,
{
method
:
"post"
,
headers
:
{
// "Content-Type": "multipart/form-data",
"Content-Type"
:
"application/json"
,
"Tenant-Id"
:
1
,
"terminal"
:
2
},
body
:
formData
,
body
:
JSON
.
stringify
({
username
:
this
.
account
,
password
:
this
.
password
,
}),
});
let
data1
=
await
res1
.
json
();
if
(
data1
.
code
==
200
)
{
await
fetch
(
this
.
baseUrl
+
"/crm/user/platformPermission"
,
{
method
:
"get"
,
headers
:
{
Token
:
data1
.
data
.
token
,
},
});
this
.
userInfo
=
data1
.
data
;
this
.
init
();
}
this
.
userInfo
=
(
await
res
.
json
()).
data
;
this
.
init
();
},
},
};
...
...
vue2/vue.config.js
浏览文件 @
8f756cf5
...
...
@@ -15,7 +15,7 @@ module.exports = defineConfig({
],
},
devServer
:
{
https
:
tru
e
,
https
:
fals
e
,
client
:
{
overlay
:
false
,
},
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论