阶段性代码提交
This commit is contained in:
parent
dfb1928d62
commit
d503311198
|
|
@ -41,7 +41,7 @@ if (!qiankunWindow.__POWERED_BY_QIANKUN__) {
|
|||
id_token:
|
||||
'eyJraWQiOiI3M2I5NTI0Ni02NjI2LTQ3N2YtYWFmYS1kMDJiODFhNjFkZmYiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjc2FkbWluIiwiYXVkIjoidHVvaGVuZy1haXJwb3J0LWFkbWluIiwicm9sZSI6WyJ0dW9oZW5nLWFpcnBvcnRTY3JlZW4tbXAiLCJ0dW9oZW5nLXBpbG90LW1wIiwidHVvaGVuZy13YXRlcndheS1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLW1wIiwidHVvaGVuZy1haXJwb3J0U2NyZWVuLWFkbWluIiwidHVvaGVuZy1kbXAtbXAiLCJ0dW9oZW5nLWZseXBvcnRhbC1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLWFkbWluIiwidHVvaGVuZy1oaHotYWRtaW4iLCJ0dW9oZW5nLWhoei1tcCIsInR1b2hlbmctZnJlZXdheS1hZG1pbiIsInR1b2hlbmctd2VwdHNwLW1wIiwidHVvaGVuZy1waWxvdC1hZG1pbiIsInR1b2hlbmctc3BhY2V0aW1lLWFkbWluIiwidHVvaGVuZy1hbGVydC1tcCIsInR1b2hlbmctYnVzaW5lc3MtYWRtaW4iLCJ0dW9oZW5nLWJ1c2luZXNzLW1wIiwidHVvaGVuZy13ZXB0c3AtYWRtaW4iLCJ0dW9oZW5nLWFpcm1vbml0b3ItbXAiLCJ0dW9oZW5nLWFpcnBvcnQtbXAiLCJ0dW9oZW5nLWFpcm1vbml0b3ItYWRtaW4iLCJ0dW9oZW5nLWFsZXJ0LWFkbWluIiwidHVvaGVuZy1haXJwb3J0LWFkbWluIiwidHVvaGVuZy13YXRlcndheS1tcCIsInR1b2hlbmctZnJlZXdheS1tcCIsInR1b2hlbmctZG1wLWFkbWluIiwidHVvaGVuZy1zcGFjZXRpbWUtbXAiXSwiYXpwIjoidHVvaGVuZy1haXJwb3J0LWFkbWluIiwiaXNzIjoiaHR0cHM6XC9cL2xvZ2luLXRlc3QudC1hYXJvbi5jb20iLCJleHAiOjE3NTUwNzA3MjMsImlhdCI6MTc1NTA2ODkyM30.deCJZsyu2dgLrbl-rnnoYTBhZD59zUJoLzFkadL7m_RJ_jWlvQvLXjQn2h0tuba0HRN7ZT2COVmNxTgLLATbdJU2SQ-_wVt30XwyX1hauDV1DALzdk5UiRelP2lIJlPWZKhpqMX52gYsGZXyliErbORBLMc_920vTZDHKeuiriuODXlT7__5MnKFTCGXDegZRPALY7kLwpQfL4DSn3ILeSGMIqU7dPx3kM4CV1iIJs2f2jEZT4HOzXy51o_GjCW7enY2qWERRfvsLIX8a8DPg0YvN-j3AHoUoKWYX_1ZCmD3eGHhqQbEvZsLJV2J6MlwF6eZOkz08M-mdkyU2_Trpg',
|
||||
access_token:
|
||||
'eyJraWQiOiI3M2I5NTI0Ni02NjI2LTQ3N2YtYWFmYS1kMDJiODFhNjFkZmYiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjc2FkbWluIiwiaXNBYmxlIjoxLCJpc3MiOiJodHRwczpcL1wvbG9naW4tdGVzdC50LWFhcm9uLmNvbSIsImF1ZCI6InR1b2hlbmctYWlycG9ydC1hZG1pbiIsIm5iZiI6MTc1NTkxNDQ5MSwib1VzZXJJZCI6NTQzLCJzY29wZSI6WyJ0dW9oZW5nLWFpcnBvcnRTY3JlZW4tbXAiLCJ0dW9oZW5nLXBpbG90LW1wIiwidHVvaGVuZy13YXRlcndheS1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLW1wIiwidHVvaGVuZy1haXJwb3J0U2NyZWVuLWFkbWluIiwidHVvaGVuZy1kbXAtbXAiLCJ0dW9oZW5nLWZseXBvcnRhbC1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLWFkbWluIiwidHVvaGVuZy1oaHotYWRtaW4iLCJ0dW9oZW5nLWhoei1tcCIsInR1b2hlbmctZnJlZXdheS1hZG1pbiIsInR1b2hlbmctd2VwdHNwLW1wIiwidHVvaGVuZy1waWxvdC1hZG1pbiIsInR1b2hlbmctc3BhY2V0aW1lLWFkbWluIiwidHVvaGVuZy1hbGVydC1tcCIsInR1b2hlbmctYnVzaW5lc3MtYWRtaW4iLCJ0dW9oZW5nLWJ1c2luZXNzLW1wIiwidHVvaGVuZy13ZXB0c3AtYWRtaW4iLCJ0dW9oZW5nLWFpcm1vbml0b3ItbXAiLCJ0dW9oZW5nLWFpcnBvcnQtbXAiLCJ0dW9oZW5nLWFpcm1vbml0b3ItYWRtaW4iLCJ0dW9oZW5nLWFsZXJ0LWFkbWluIiwidHVvaGVuZy1haXJwb3J0LWFkbWluIiwidHVvaGVuZy13YXRlcndheS1tcCIsInR1b2hlbmctZnJlZXdheS1tcCIsInR1b2hlbmctZG1wLWFkbWluIiwidHVvaGVuZy1zcGFjZXRpbWUtbXAiXSwiY2xpZW50Um9sZUxpc3QiOiJbe1wiY2xpZW50SWRcIjpcInR1b2hlbmctZmx5cG9ydGFsLWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1idXNpbmVzcy1tcFwiLFwicm9sZUlkXCI6MTE0NX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYnVzaW5lc3MtYWRtaW5cIixcInJvbGVJZFwiOjExNDV9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWFpcnBvcnRTY3JlZW4tYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXNwYWNldGltZS1hZG1pblwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctc3BhY2V0aW1lLW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1oaHotYWRtaW5cIixcInJvbGVJZFwiOjEwMDN9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWhoei1tcFwiLFwicm9sZUlkXCI6MTAwM30se1wiY2xpZW50SWRcIjpcInR1b2hlbmctd2F0ZXJ3YXktYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXdhdGVyd2F5LW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1kbXAtYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWRtcC1tcFwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYWlycG9ydC1hZG1pblwiLFwicm9sZUlkXCI6NjYzfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJwb3J0LW1wXCIsXCJyb2xlSWRcIjo2NjN9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWFsZXJ0LWFkbWluXCIsXCJyb2xlSWRcIjoyN30se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYWxlcnQtbXBcIixcInJvbGVJZFwiOjI3fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJtb25pdG9yLWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJtb25pdG9yLW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy13ZXB0c3AtYWRtaW5cIixcInJvbGVJZFwiOjI1fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy13ZXB0c3AtbXBcIixcInJvbGVJZFwiOjI1fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy10ZWxlY29tdW1hbGUtYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXRlbGVjb211bWFsZS1tcFwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctcGlsb3QtbXBcIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXBpbG90LWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1mcmVld2F5LW1wXCIsXCJyb2xlSWRcIjo1OH0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctZnJlZXdheS1hZG1pblwiLFwicm9sZUlkXCI6NTh9XSIsImV4cCI6MTc1NjAwMDg5MSwiaXNFeHBpcmUiOjEsImlhdCI6MTc1NTkxNDQ5MSwidXNlcm5hbWUiOiJjc2FkbWluIn0.Opt-pZg4tgqZkfcme-jSyOOw80j0s5tqWiPVp0lLlOZu20-nJEO2co3A1UZ-ZOsrCik1N3_ZqGWhrk9QYhj0EAeoD6ByLDkLIw7k66_YtBidygxdDaSdpNt_RSat2QBNdrkvoG1bSEgaffh8_x205sFzlYfywn0zQfT6eANiKS8NDyamiwFPg5PcWkf9hmW3IxvhiLbCoSpD1LfHR6izkD2_vBmrNAhV33l84BGpW3HLcD19ZcLWKauSLztiNLMT46zCyZIYaAtzSASdu3esADK28KpzBECBfpSfodvkU3kcv3r_IJ1yrmwdrg9kojOF27WxM3z6ekJAMsuMoUECLg',
|
||||
'eyJraWQiOiI3M2I5NTI0Ni02NjI2LTQ3N2YtYWFmYS1kMDJiODFhNjFkZmYiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjc2FkbWluIiwiaXNBYmxlIjoxLCJpc3MiOiJodHRwczpcL1wvbG9naW4tdGVzdC50LWFhcm9uLmNvbSIsImF1ZCI6InR1b2hlbmctYWlycG9ydC1hZG1pbiIsIm5iZiI6MTc1NjA4MjkxNiwib1VzZXJJZCI6NTQzLCJzY29wZSI6WyJ0dW9oZW5nLWFpcnBvcnRTY3JlZW4tbXAiLCJ0dW9oZW5nLXBpbG90LW1wIiwidHVvaGVuZy13YXRlcndheS1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLW1wIiwidHVvaGVuZy1haXJwb3J0U2NyZWVuLWFkbWluIiwidHVvaGVuZy1kbXAtbXAiLCJ0dW9oZW5nLWZseXBvcnRhbC1hZG1pbiIsInR1b2hlbmctdGVsZWNvbXVtYWxlLWFkbWluIiwidHVvaGVuZy1oaHotYWRtaW4iLCJ0dW9oZW5nLWhoei1tcCIsInR1b2hlbmctZnJlZXdheS1hZG1pbiIsInR1b2hlbmctd2VwdHNwLW1wIiwidHVvaGVuZy1waWxvdC1hZG1pbiIsInR1b2hlbmctc3BhY2V0aW1lLWFkbWluIiwidHVvaGVuZy1hbGVydC1tcCIsInR1b2hlbmctYnVzaW5lc3MtYWRtaW4iLCJ0dW9oZW5nLWJ1c2luZXNzLW1wIiwidHVvaGVuZy13ZXB0c3AtYWRtaW4iLCJ0dW9oZW5nLWFpcm1vbml0b3ItbXAiLCJ0dW9oZW5nLWFpcnBvcnQtbXAiLCJ0dW9oZW5nLWFpcm1vbml0b3ItYWRtaW4iLCJ0dW9oZW5nLWFsZXJ0LWFkbWluIiwidHVvaGVuZy1haXJwb3J0LWFkbWluIiwidHVvaGVuZy13YXRlcndheS1tcCIsInR1b2hlbmctZnJlZXdheS1tcCIsInR1b2hlbmctZG1wLWFkbWluIiwidHVvaGVuZy1zcGFjZXRpbWUtbXAiXSwiY2xpZW50Um9sZUxpc3QiOiJbe1wiY2xpZW50SWRcIjpcInR1b2hlbmctZmx5cG9ydGFsLWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1idXNpbmVzcy1tcFwiLFwicm9sZUlkXCI6MTE0NX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYnVzaW5lc3MtYWRtaW5cIixcInJvbGVJZFwiOjExNDV9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWFpcnBvcnRTY3JlZW4tYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXNwYWNldGltZS1hZG1pblwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctc3BhY2V0aW1lLW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1oaHotYWRtaW5cIixcInJvbGVJZFwiOjEwMDN9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWhoei1tcFwiLFwicm9sZUlkXCI6MTAwM30se1wiY2xpZW50SWRcIjpcInR1b2hlbmctd2F0ZXJ3YXktYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXdhdGVyd2F5LW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1kbXAtYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWRtcC1tcFwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYWlycG9ydC1hZG1pblwiLFwicm9sZUlkXCI6NjYzfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJwb3J0LW1wXCIsXCJyb2xlSWRcIjo2NjN9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLWFsZXJ0LWFkbWluXCIsXCJyb2xlSWRcIjoyN30se1wiY2xpZW50SWRcIjpcInR1b2hlbmctYWxlcnQtbXBcIixcInJvbGVJZFwiOjI3fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJtb25pdG9yLWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1haXJtb25pdG9yLW1wXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy13ZXB0c3AtYWRtaW5cIixcInJvbGVJZFwiOjI1fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy13ZXB0c3AtbXBcIixcInJvbGVJZFwiOjI1fSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy10ZWxlY29tdW1hbGUtYWRtaW5cIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXRlbGVjb211bWFsZS1tcFwiLFwicm9sZUlkXCI6MX0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctcGlsb3QtbXBcIixcInJvbGVJZFwiOjF9LHtcImNsaWVudElkXCI6XCJ0dW9oZW5nLXBpbG90LWFkbWluXCIsXCJyb2xlSWRcIjoxfSx7XCJjbGllbnRJZFwiOlwidHVvaGVuZy1mcmVld2F5LW1wXCIsXCJyb2xlSWRcIjo1OH0se1wiY2xpZW50SWRcIjpcInR1b2hlbmctZnJlZXdheS1hZG1pblwiLFwicm9sZUlkXCI6NTh9XSIsImV4cCI6MTc1NjE2OTMxNiwiaXNFeHBpcmUiOjEsImlhdCI6MTc1NjA4MjkxNiwidXNlcm5hbWUiOiJjc2FkbWluIn0.cU4vIbNjPppa9Mvyhc5uFXcVHum8xjf-B3HTjHuI8M_smFlUsOj8WFoLkxrB0GZmX_8fspxlcXoQaQ0ukFk1jF1Eyn1upL5mKVi8y_PCZPKJzXGU-67U2pA3MMWrztGQEmmDn_zi33Qi8BiG4cqB9nfqj4cqes50Nrq_LNPCgLjAcnfnYnZss9--3-SQqD15rLT7juVj9GfBhIphtVtAXoaftsQiccEW8NXTUH49Knpw8YlhTWN4Ibi92sQ353EcCVAqZ1iDuqlX4WcT4IRRzz5y248Bbp6R-lbJm92NjhAeQepb67io7muSAOrpTDZ2cfgd0bUCwooCD-QixNxWNw',
|
||||
refresh_token:
|
||||
'HNyAXnoDhR2kgjXUSVwqMldvgzazvaY3tVlCodSiDon7fA7P8Ci3BMsnk31cjeSKwcbsPzUaMdCdBilBhSqQ1dZLk-Md-ERqh5mbbeu7rJDWX4MexO0eKtRBwz-mbnbR',
|
||||
token_type: 'Bearer',
|
||||
|
|
|
|||
|
|
@ -3,10 +3,11 @@ import { defineStore } from 'pinia'
|
|||
|
||||
export const useAirPortSocketStore = defineStore('airportSocket', () => {
|
||||
const currentAirPort = ref(null)
|
||||
const ceurrentAirPortData = ref(null)
|
||||
|
||||
// function increment() {
|
||||
// count.value++
|
||||
// }
|
||||
|
||||
return { currentAirPort }
|
||||
return { currentAirPort, ceurrentAirPortData }
|
||||
})
|
||||
|
|
|
|||
|
|
@ -1,36 +1,53 @@
|
|||
<script setup>
|
||||
import { ref, defineAsyncComponent, onMounted, watch, toRaw, defineProps, reactive } from 'vue'
|
||||
const ScreenComp = defineAsyncComponent(() => import('@/views/carbin/toolComp/screen.vue'))
|
||||
|
||||
const emit = defineEmits(['switchScreen'])
|
||||
const emit = defineEmits(['switchScreen', 'iframeLoaded'])
|
||||
|
||||
const props = defineProps({
|
||||
row: Object, //当前数据
|
||||
})
|
||||
let out_title = ref('舱外直播')
|
||||
let in_title = ref('舱内直播')
|
||||
let out_showType = ref('video_out')
|
||||
let in_showType = ref('video_in')
|
||||
let lastType = ref(null)
|
||||
|
||||
const switchScreen = (type) => {
|
||||
let title = ''
|
||||
if (lastType != type) {
|
||||
out_title.value = '舱外直播'
|
||||
in_title.value = '舱内直播'
|
||||
out_showType.value = 'video_out'
|
||||
in_showType.value = 'video_in'
|
||||
}
|
||||
if (type == 'out') {
|
||||
if (type == 'video_out') {
|
||||
if (out_title.value == '地图') {
|
||||
out_title.value = '舱外直播'
|
||||
out_showType.value = 'video_out'
|
||||
} else {
|
||||
out_title.value = '地图'
|
||||
out_showType.value = 'map'
|
||||
}
|
||||
title = out_showType.value
|
||||
}
|
||||
if (type == 'in') {
|
||||
if (type == 'video_in') {
|
||||
if (in_title.value == '地图') {
|
||||
in_title.value = '舱内直播'
|
||||
in_showType.value = 'video_in'
|
||||
} else {
|
||||
in_title.value = '地图'
|
||||
in_showType.value = 'map'
|
||||
}
|
||||
title = in_showType.value
|
||||
}
|
||||
lastType = type
|
||||
emit('switchScreen', type)
|
||||
emit('switchScreen', type, title)
|
||||
}
|
||||
|
||||
//iframe加载完成
|
||||
const iframeLoaded = (iframeContent) => {
|
||||
emit('iframeLoaded', iframeContent)
|
||||
}
|
||||
|
||||
watch(
|
||||
|
|
@ -60,7 +77,7 @@ onMounted(() => {})
|
|||
|
||||
<div
|
||||
class="flex flex-row items-center px-3 bg-[#016CF8] text-[#ffffff] rounded-sm cursor-pointer"
|
||||
@click="switchScreen('out')"
|
||||
@click="switchScreen('video_out')"
|
||||
>
|
||||
<span class="iconfont icon-qiehuan"></span>
|
||||
<span class="text-xs ml-1">切换</span>
|
||||
|
|
@ -71,12 +88,7 @@ onMounted(() => {})
|
|||
id="out_small_video_area"
|
||||
class="relative w-full aspect-video bg-[#0B2038] mt-2 rounded-md border border-[#3C89C6] overflow-hidden"
|
||||
>
|
||||
<!-- <LivePlayer
|
||||
v-show="LiveOptions_out.videoUrl?.includes('.flv')"
|
||||
ref="OutlivePlayerRef"
|
||||
id="realOutTimeCamera"
|
||||
:options="LiveOptions_out"
|
||||
/> -->
|
||||
<ScreenComp :showType="out_showType" :row="props.row" @iframeLoaded="iframeLoaded" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -90,7 +102,7 @@ onMounted(() => {})
|
|||
|
||||
<div
|
||||
class="flex flex-row items-center px-3 bg-[#016CF8] text-[#ffffff] rounded-sm cursor-pointer"
|
||||
@click="switchScreen('in')"
|
||||
@click="switchScreen('video_in')"
|
||||
>
|
||||
<span class="iconfont icon-qiehuan"></span>
|
||||
<span class="text-xs ml-1">切换</span>
|
||||
|
|
@ -100,7 +112,9 @@ onMounted(() => {})
|
|||
<div
|
||||
id="in_small_video_area"
|
||||
class="relative w-full aspect-video bg-[#0B2038] mt-2 rounded-md border border-[#3C89C6] overflow-hidden"
|
||||
></div>
|
||||
>
|
||||
<ScreenComp :showType="in_showType" :row="props.row" @iframeLoaded="iframeLoaded" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 按钮 暂时不做-->
|
||||
|
|
|
|||
|
|
@ -31,19 +31,6 @@ let leftPlaneWidth = ref('25%')
|
|||
let rightPlaneWidth = ref('75%')
|
||||
let rightPlaneHeight = ref('100%')
|
||||
let rightPlaneBottom = ref('0')
|
||||
// //舱外视角
|
||||
// let out_showLive = ref(false)
|
||||
// //舱内视角
|
||||
// let in_showLive = ref(false)
|
||||
// //无人机视角
|
||||
// let plane_showLive = ref(false)
|
||||
// //gismap
|
||||
// let showIframeMap = ref(false)
|
||||
|
||||
// let outVideo_teleport = ref('#out_small_video_area')
|
||||
// let inVideo_teleport = ref('#in_small_video_area')
|
||||
// let planeVideo_teleport = ref('#plane_small_video_area')
|
||||
// let map_teleport = ref('#big_area')
|
||||
|
||||
let big_area_showType = ref('map')
|
||||
|
||||
|
|
@ -67,31 +54,6 @@ const statusList = reactive({
|
|||
let virturalDrive_iframe_full = ref(null)
|
||||
let iframeData = null
|
||||
|
||||
//播放器设置1
|
||||
const LiveOptions_out = reactive({
|
||||
videoUrl: null,
|
||||
// videoTitle: null,
|
||||
// live: true,
|
||||
// hideFullscreenButton: true,
|
||||
// stretch: true
|
||||
})
|
||||
//播放器设置2
|
||||
const LiveOptions_in = reactive({
|
||||
videoUrl: null,
|
||||
// videoTitle: null,
|
||||
// live: true,
|
||||
// hideFullscreenButton: true,
|
||||
// stretch: true
|
||||
})
|
||||
//播放器设置-无人机视角
|
||||
const LiveOptions_plane = reactive({
|
||||
videoUrl: null,
|
||||
// videoTitle: null,
|
||||
// live: true,
|
||||
// hideFullscreenButton: true,
|
||||
// stretch: true
|
||||
})
|
||||
|
||||
//修改左侧面板尺寸
|
||||
const modifPlaneWidthFn = (num) => {
|
||||
if (num == 1) {
|
||||
|
|
@ -126,11 +88,7 @@ const queryAirLine_AirPort = async () => {
|
|||
if (res[0].value.code == 0) {
|
||||
//机场
|
||||
currentAirPortInfo.value = res[0].value.data[0]
|
||||
|
||||
//直播视频
|
||||
LiveOptions_out.videoUrl = currentAirPortInfo.value.external_monitor_url
|
||||
LiveOptions_in.videoUrl = currentAirPortInfo.value.internal_monitor_url
|
||||
LiveOptions_plane.videoUrl = currentAirPortInfo.value.camera_url
|
||||
airPortSocketStore.ceurrentAirPortData = currentAirPortInfo.value
|
||||
|
||||
//机场当前状态
|
||||
if (currentAirPortStatus.value != Number(currentAirPortInfo.value.status)) {
|
||||
|
|
@ -140,8 +98,8 @@ const queryAirLine_AirPort = async () => {
|
|||
currentAirPortStatus.value,
|
||||
statusList[currentAirPortStatus.value],
|
||||
)
|
||||
//重置teleport指向
|
||||
// resetTeleportTo(currentAirPortStatus.value)
|
||||
|
||||
resetScreen()
|
||||
}
|
||||
|
||||
//socket发送数据
|
||||
|
|
@ -188,14 +146,9 @@ const queryAirPort = async () => {
|
|||
let res = await queryAirportApi(params)
|
||||
if (res.code == 0) {
|
||||
currentAirPortInfo.value = res.data[0]
|
||||
// console.log(currentAirPortInfo.value)
|
||||
airPortSocketStore.ceurrentAirPortData = currentAirPortInfo.value
|
||||
|
||||
//直播视频
|
||||
LiveOptions_out.videoUrl = currentAirPortInfo.value.external_monitor_url
|
||||
LiveOptions_in.videoUrl = currentAirPortInfo.value.internal_monitor_url
|
||||
LiveOptions_plane.videoUrl = currentAirPortInfo.value.camera_url
|
||||
|
||||
// currentAirPortInfo.value.status = 2
|
||||
currentAirPortInfo.value.status = 3
|
||||
|
||||
//机场当前状态
|
||||
if (currentAirPortStatus.value != Number(currentAirPortInfo.value.status)) {
|
||||
|
|
@ -205,8 +158,8 @@ const queryAirPort = async () => {
|
|||
currentAirPortStatus.value,
|
||||
statusList[currentAirPortStatus.value],
|
||||
)
|
||||
//重置teleport指向
|
||||
// resetTeleportTo(currentAirPortStatus.value)
|
||||
|
||||
resetScreen()
|
||||
}
|
||||
}
|
||||
//轮询
|
||||
|
|
@ -214,53 +167,6 @@ const queryAirPort = async () => {
|
|||
queryAirPort()
|
||||
}, 6000)
|
||||
}
|
||||
//重置窗口指向
|
||||
const resetTeleportTo = (currentAirPortStatus) => {
|
||||
if (currentAirPortStatus == 1) {
|
||||
//空闲
|
||||
setTimeout(() => {
|
||||
//地图
|
||||
map_teleport.value = '#big_area'
|
||||
//舱外
|
||||
outVideo_teleport.value = '#out_small_video_area'
|
||||
//舱内
|
||||
inVideo_teleport.value = '#in_small_video_area'
|
||||
|
||||
out_showLive.value = true
|
||||
in_showLive.value = true
|
||||
showIframeMap.value = true
|
||||
plane_showLive.value = false
|
||||
}, 50)
|
||||
} else if (currentAirPortStatus == 2) {
|
||||
//飞行中
|
||||
rightPlaneHeight.value = 'calc(100% - 150px)'
|
||||
rightPlaneBottom.value = '150px'
|
||||
|
||||
setTimeout(() => {
|
||||
//地图
|
||||
map_teleport.value = '#left_flying_map'
|
||||
//舱外
|
||||
outVideo_teleport.value = '#plane_small_video_area'
|
||||
|
||||
out_showLive.value = true
|
||||
in_showLive.value = false
|
||||
showIframeMap.value = true
|
||||
plane_showLive.value = false
|
||||
}, 200)
|
||||
} else if (currentAirPortStatus == 3) {
|
||||
//自检中
|
||||
setTimeout(() => {
|
||||
//舱外
|
||||
outVideo_teleport.value = '#big_area'
|
||||
|
||||
out_showLive.value = true
|
||||
in_showLive.value = false
|
||||
showIframeMap.value = false
|
||||
plane_showLive.value = false
|
||||
}, 50)
|
||||
}
|
||||
}
|
||||
|
||||
//socket线程
|
||||
const socketFn = (workParams) => {
|
||||
//创建线程,一定要使用type:module的方式引入,否则worker不允许import外部js
|
||||
|
|
@ -281,7 +187,7 @@ const socketFn = (workParams) => {
|
|||
const iframeLoaded = (iframeContent) => {
|
||||
// let iframeItem = virturalDrive_iframe_full.value
|
||||
// let iframeContent = iframeItem.contentWindow
|
||||
|
||||
console.log(iframeContent)
|
||||
let data = JSON.stringify(iframeData)
|
||||
// console.log(data)
|
||||
|
||||
|
|
@ -294,7 +200,6 @@ const iframeLoaded = (iframeContent) => {
|
|||
// sendPosToPlane()
|
||||
// }, 2000)
|
||||
}
|
||||
|
||||
//无人机实时飞机发送消息
|
||||
const sendPosToPlane = () => {
|
||||
if (currentAirPortStatus.value != 2) {
|
||||
|
|
@ -335,7 +240,6 @@ const sendPosToPlane = () => {
|
|||
}
|
||||
sendPosFn()
|
||||
}
|
||||
|
||||
//给gis发送消息
|
||||
const sendGisMessage = (params) => {
|
||||
//params必须是个对象
|
||||
|
|
@ -346,55 +250,48 @@ const sendGisMessage = (params) => {
|
|||
iframeContent.postMessage(data, '*')
|
||||
}
|
||||
|
||||
//重置screen
|
||||
const resetScreen = () => {
|
||||
if (currentAirPortStatus.value == 3) {
|
||||
//准备中
|
||||
big_area_showType.value = 'video_out'
|
||||
}
|
||||
}
|
||||
//右侧面板切换视频
|
||||
const switchRightVideoFn = (videoType) => {
|
||||
if (videoType == 1) {
|
||||
//舱外视角
|
||||
setTimeout(() => {
|
||||
outVideo_teleport.value = '#big_area'
|
||||
out_showLive.value = true
|
||||
in_showLive.value = false
|
||||
showIframeMap.value = false
|
||||
plane_showLive.value = false
|
||||
}, 50)
|
||||
big_area_showType.value = 'video_out'
|
||||
} else if (videoType == 2) {
|
||||
//舱内视角
|
||||
setTimeout(() => {
|
||||
inVideo_teleport.value = '#big_area'
|
||||
out_showLive.value = false
|
||||
in_showLive.value = true
|
||||
showIframeMap.value = false
|
||||
plane_showLive.value = false
|
||||
}, 50)
|
||||
big_area_showType.value = 'video_in'
|
||||
} else if (videoType == 3) {
|
||||
//无人机视角
|
||||
setTimeout(() => {
|
||||
planeVideo_teleport.value = '#big_area'
|
||||
out_showLive.value = false
|
||||
in_showLive.value = false
|
||||
showIframeMap.value = false
|
||||
plane_showLive.value = true
|
||||
}, 50)
|
||||
big_area_showType.value = 'video_plane'
|
||||
}
|
||||
}
|
||||
|
||||
//回调事件
|
||||
const switchScreenFn = (type) => {
|
||||
console.log(type)
|
||||
|
||||
if (switchType != type) {
|
||||
//重置
|
||||
outVideo_teleport.value = '#out_small_video_area'
|
||||
inVideo_teleport.value = '#in_small_video_area'
|
||||
map_teleport.value = '#big_area'
|
||||
}
|
||||
|
||||
if (type == 'out') {
|
||||
//左侧面板切换回调事件
|
||||
const switchScreenFn = (type, title) => {
|
||||
// console.log(title)
|
||||
if (type == 'video_out') {
|
||||
//舱外
|
||||
;[outVideo_teleport.value, map_teleport.value] = [map_teleport.value, outVideo_teleport.value]
|
||||
} else if (type == 'in') {
|
||||
if (title == 'video_out') {
|
||||
//切换为map
|
||||
big_area_showType.value = 'map'
|
||||
} else if (title == 'map') {
|
||||
//切换为舱外视频
|
||||
big_area_showType.value = type
|
||||
}
|
||||
} else if (type == 'video_in') {
|
||||
//舱内
|
||||
;[inVideo_teleport.value, map_teleport.value] = [map_teleport.value, inVideo_teleport.value]
|
||||
if (title == 'video_in') {
|
||||
//切换为map
|
||||
big_area_showType.value = 'map'
|
||||
} else if (title == 'map') {
|
||||
//切换为舱外视频
|
||||
big_area_showType.value = type
|
||||
}
|
||||
}
|
||||
switchType = type
|
||||
}
|
||||
|
|
@ -437,6 +334,7 @@ onMounted(() => {
|
|||
v-if="currentAirPortStatus == 1"
|
||||
:row="currentAirPortInfo"
|
||||
@switchScreen="switchScreenFn"
|
||||
@iframeLoaded="iframeLoaded"
|
||||
/>
|
||||
|
||||
<!-- 自检面板 准备中-->
|
||||
|
|
@ -479,45 +377,6 @@ onMounted(() => {
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 直播播放器 -->
|
||||
<!-- 舱外视频 -->
|
||||
<!-- <teleport :to="outVideo_teleport" v-if="out_showLive">
|
||||
<LivePlayer
|
||||
class="h-full absolute left-0 right-0 top-0 right-0 m-auto"
|
||||
v-show="out_showLive && LiveOptions_out.videoUrl?.includes('.flv')"
|
||||
ref="OutlivePlayerRef"
|
||||
:options="LiveOptions_out"
|
||||
/>
|
||||
</teleport> -->
|
||||
<!-- 舱内视频 -->
|
||||
<!-- <teleport :to="inVideo_teleport" v-if="in_showLive">
|
||||
<LivePlayer
|
||||
class="h-full absolute left-0 right-0 top-0 right-0 m-auto"
|
||||
v-show="in_showLive && LiveOptions_in.videoUrl?.includes('.flv')"
|
||||
ref="inlivePlayerRef"
|
||||
:options="LiveOptions_in"
|
||||
/>
|
||||
</teleport> -->
|
||||
<!-- 无人机视角 -->
|
||||
<!-- <teleport :to="planeVideo_teleport" v-if="plane_showLive">
|
||||
<LivePlayer
|
||||
class="h-full absolute left-0 right-0 top-0 right-0 m-auto"
|
||||
v-show="plane_showLive && LiveOptions_plane.videoUrl?.includes('.flv')"
|
||||
ref="planelivePlayerRef"
|
||||
:options="LiveOptions_plane"
|
||||
/>
|
||||
</teleport> -->
|
||||
<!-- map -->
|
||||
<!-- <teleport v-if="showIframeMap" :to="map_teleport">
|
||||
<iframe
|
||||
v-if="showIframeMap"
|
||||
id="virturalDrive_iframe_full"
|
||||
ref="virturalDrive_iframe_full"
|
||||
src="https://gisdata.t-aaron.com/virturalDrive/VirturalDrive.html"
|
||||
@load="iframeLoaded"
|
||||
></iframe>
|
||||
</teleport> -->
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
|
|
|
|||
|
|
@ -1,11 +1,21 @@
|
|||
<script setup>
|
||||
import { ref, defineAsyncComponent, onMounted, watch, toRaw, defineProps, reactive } from 'vue'
|
||||
import { useAirPortSocketStore } from '@/stores/airportSocket.js'
|
||||
//播放器-组件
|
||||
const LivePlayer = defineAsyncComponent(() => import('@/components/video/index.vue'))
|
||||
|
||||
const props = defineProps({
|
||||
showType: String, //显示类型 video/map
|
||||
row: Object, //当前数据
|
||||
showType: String, //显示类型 video_out/video_in/video_plane /map
|
||||
// row: Object, //当前数据
|
||||
})
|
||||
const airPortSocketStore = useAirPortSocketStore()
|
||||
|
||||
let row = null
|
||||
//监听pinia
|
||||
airPortSocketStore.$subscribe((mutate, state) => {
|
||||
row = state.ceurrentAirPortData
|
||||
showType.value = props.showType
|
||||
setVideo()
|
||||
})
|
||||
|
||||
const emit = defineEmits(['iframeLoaded'])
|
||||
|
|
@ -28,16 +38,30 @@ const iframeLoaded = () => {
|
|||
emit('iframeLoaded', iframeContent)
|
||||
}
|
||||
|
||||
const setVideo = () => {
|
||||
if (showType.value == 'video_out') {
|
||||
LiveOptions.videoUrl = row.external_monitor_url
|
||||
} else if (showType.value == 'video_in') {
|
||||
LiveOptions.videoUrl = row.internal_monitor_url
|
||||
} else if (showType.value == 'video_plane') {
|
||||
LiveOptions.videoUrl = row.camera_url
|
||||
}
|
||||
// console.log(row)
|
||||
}
|
||||
// watch(
|
||||
// () => props.row,
|
||||
// (val) => {
|
||||
// showType.value = props.showType
|
||||
// // setVideo()
|
||||
// },
|
||||
// { deep: true },
|
||||
// )
|
||||
watch(
|
||||
() => props.row,
|
||||
() => props.showType,
|
||||
(val) => {
|
||||
// console.log('来值了呢')
|
||||
console.log(val)
|
||||
showType.value = props.showType
|
||||
// LiveOptions_out.videoUrl = val.external_monitor_url
|
||||
// LiveOptions_in.videoUrl = val.internal_monitor_url
|
||||
showType.value = val
|
||||
setVideo()
|
||||
},
|
||||
{ deep: true },
|
||||
)
|
||||
</script>
|
||||
|
||||
|
|
@ -45,9 +69,12 @@ watch(
|
|||
<div class="w-full h-full">
|
||||
<LivePlayer
|
||||
class="h-full absolute left-0 right-0 top-0 right-0 m-auto"
|
||||
v-show="showType == 'video' && LiveOptions.videoUrl?.includes('.flv')"
|
||||
v-show="
|
||||
(showType == 'video_out' || showType == 'video_in' || showType == 'video_plane') &&
|
||||
LiveOptions.videoUrl?.includes('.flv')
|
||||
"
|
||||
ref="OutlivePlayerRef"
|
||||
:options="LiveOptions_out"
|
||||
:options="LiveOptions"
|
||||
/>
|
||||
<iframe
|
||||
v-if="showType == 'map'"
|
||||
|
|
|
|||
Loading…
Reference in New Issue