diff --git a/src/components/PublicComponent/PublicComponent.vue b/src/components/PublicComponent/PublicComponent.vue
index 5140288..5f35a96 100644
--- a/src/components/PublicComponent/PublicComponent.vue
+++ b/src/components/PublicComponent/PublicComponent.vue
@@ -3,9 +3,6 @@
-
-
-
@@ -27,7 +24,6 @@ import { useHandleScreen } from '@/composables/useHandleScreen'
import { useLogout } from '@/composables/useLogout'
import { useInitMap } from '@/composables/useInitMap'
import Map from '@/components/Map/Map.vue'
-const Logout = defineAsyncComponent(() => import('@/base/Logout/Logout.vue'))
const AutoBackNotification = defineAsyncComponent(() => import('@/base/AutoBackNotification/AutoBackNotification.vue'))
const Search = defineAsyncComponent(() => import('@/components/Search/Search.vue'))
const Temperature = defineAsyncComponent(() => import('@/base/Temperature/Temperature.vue'))
@@ -40,7 +36,7 @@ const route = useRoute()
const store = useStore()
const { shop, showSearch, sidebarList, language } = storeToRefs(store)
-const { logoutRef, resetClickNumber, setLogoutRef, addTotalClick } = useLogout()
+const { resetClickNumber, setLogoutRef, addTotalClick } = useLogout()
const screenSaveCallback = () => {
window.Map_QM.changeMapIPState(shop.value?.houseNum, shop.value?.formatColor)
@@ -52,7 +48,7 @@ const screenSaveCallback = () => {
router.push('/billboard')
}
-const { title, countDownGif, isWall, countDownToWall, countDownNum, send, checkHandleScreen } = useHandleScreen(handleScreen, screenSaveCallback)
+const { title, countDownGif, isWall, countDownToWall, countDownNum, checkHandleScreen } = useHandleScreen(handleScreen, screenSaveCallback)
function handleGO() {
router.push('/nav')
@@ -75,9 +71,6 @@ async function handleScreen() {
const timer = ref(null)
onMounted(() => {
!window.Map_QM && useInitMap()
- timer.value = setInterval(() => {
- send(`type:online`)
- }, 30000)
window.addEventListener('touchend', checkHandleScreen)
})
diff --git a/src/composables/useHandleScreen.js b/src/composables/useHandleScreen.js
index 6c17e12..6cdda9a 100644
--- a/src/composables/useHandleScreen.js
+++ b/src/composables/useHandleScreen.js
@@ -1,14 +1,10 @@
import { reactive, onMounted, toRefs, computed } from 'vue'
import { getBackTime } from '@/http/api'
-import { useStore } from '@/store/root'
import { useRouter } from 'vue-router'
import { useStatistics } from '@/composables/useStatistics'
export const useHandleScreen = (callback, screenSaveCallback) => {
const router = useRouter()
- const store = useStore()
- const backSocket = computed(() => store.config?.backSocket)
- const version = computed(() => store.config?.version)
const state = reactive({
isWall: false, //当前是回到首页还是回到屏保
@@ -23,15 +19,6 @@ export const useHandleScreen = (callback, screenSaveCallback) => {
title: computed(() => (!state.isWall ? '即将进入首页' : '即将进入屏幕保护'))
})
- //socket发送消息
- function send(msg) {
- try {
- state?.messageWS?.send(msg)
- } catch (error) {
- console.log(error)
- }
- }
-
//获取返回时长
async function _getBackTime() {
try {
@@ -94,41 +81,12 @@ export const useHandleScreen = (callback, screenSaveCallback) => {
state.isWall = false
state.countDownToWall = state.times[1]
screenSaveCallback && screenSaveCallback()
- send('pcscreensavers')
resolve()
}
}, 1000)
})
}
- //初始化与容器通信的websocket
- function initWebSocket() {
- try {
- state.messageWS = new WebSocket(backSocket.value)
-
- //连接成功
- state.messageWS.onopen = setOnopenMessage
-
- //收到消息的回调
- state.messageWS.onmessage = setOnmessageMessage
- } catch (error) {
- console.log(error)
- }
- }
-
- //websocket连接成功
- function setOnopenMessage() {
- console.log('message to container success')
- send(`version:${version.value}`)
- }
-
- //接收数据
- async function setOnmessageMessage() {
- if (state.times[1] !== 0) {
- await wallpaperPromise()
- }
- }
-
//超过一分钟未操作回到首页
const checkHandleScreen = () => {
useStatistics('device')
@@ -162,10 +120,9 @@ export const useHandleScreen = (callback, screenSaveCallback) => {
//初始化相关数据
function initMessage() {
_getBackTime()
- initWebSocket()
}
onMounted(initMessage)
- return { ...toRefs(state), checkHandleScreen, send }
+ return { ...toRefs(state), checkHandleScreen }
}
diff --git a/src/composables/useInitConfigAndMallInfo.js b/src/composables/useInitConfigAndMallInfo.js
index e192e55..04245b7 100644
--- a/src/composables/useInitConfigAndMallInfo.js
+++ b/src/composables/useInitConfigAndMallInfo.js
@@ -1,4 +1,4 @@
-import { getConfig, getCurrentFloor, getGuideList, getTheme } from '@/http/api'
+import { getConfig, getCurrentFloor, getGuideList, getTheme, getIndexList, getQMGoShopData } from '@/http/api'
import { useStore } from '@/store/root'
import VConsole from 'vconsole'
@@ -27,4 +27,10 @@ export const useInitConfigAndMallInfo = async () => {
const { buildingList, shopList } = _guideList.data
store.SET_SHOP_LIST(shopList.filter(({ yaxis }) => !!yaxis))
store.SET_BUILDING_LIST(buildingList)
+ const res = await getIndexList()
+ const { data } = res
+ const {
+ data: { searchList, recommendList }
+ } = await getQMGoShopData()
+ store.SET_INDEX_LIST({ ...data, recommendList, hotSearch: searchList })
}
diff --git a/src/composables/useInitMap.js b/src/composables/useInitMap.js
index 7a74cd4..aed95e8 100644
--- a/src/composables/useInitMap.js
+++ b/src/composables/useInitMap.js
@@ -6,6 +6,7 @@ import Message from '@/base/Message/Message'
export const useInitMap = function () {
const store = useStore()
+
getMap()
.then(({ data }) => {
store.SET_MAP_DATA(JSON.parse(data.mapData))
diff --git a/src/router/index.js b/src/router/index.js
index 31cc244..15c70db 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -1,54 +1,11 @@
import { createRouter, createWebHashHistory } from 'vue-router'
import { staticRoutes } from './routes'
-import { useStore } from '@/store/root'
-import { getIndexList, getQMGoShopData } from '@/http/api'
-import { ERR_OK } from '@/http/config'
const router = createRouter({
history: createWebHashHistory(process.env.BASE_URL),
routes: staticRoutes
})
-function dynamicRoutes(list) {
- return {
- path: '/index',
- name: 'home',
- component: list.length ? () => import(/* webpackChunkName: "Home" */ '@/views/Index/Index') : () => import(/* webpackChunkName: "Home" */ '@/views/Guide/Guide'),
-
- meta: {
- showMenu: true,
- showMap: list.length ? false : true
- }
- }
-}
-
-router.beforeEach(async to => {
- try {
- const store = useStore()
-
- const res = await getIndexList()
- const { data, code } = res
- if (code === ERR_OK) {
- if (!router.hasRoute('home')) {
- const {
- data: { searchList, recommendList }
- } = await getQMGoShopData()
- store.SET_INDEX_LIST({ ...data, recommendList, hotSearch: searchList })
-
- router.addRoute({
- path: '/index',
- name: 'home',
- component: import(/* webpackChunkName: "Home" */ '@/views/Index/Index')
- })
-
- return to.fullPath
- }
- }
- } catch (error) {
- return to.fullPath
- }
-})
-
export function initRouter(app) {
app.use(router)
}
diff --git a/src/router/routes.js b/src/router/routes.js
index 008439b..46072ef 100644
--- a/src/router/routes.js
+++ b/src/router/routes.js
@@ -3,6 +3,11 @@ export const staticRoutes = [
path: '/',
redirect: '/index'
},
+ {
+ path: '/index',
+ name: 'home',
+ component: () => import(/* webpackChunkName: "Home" */ '@/views/Index/Index')
+ },
{
path: '/billboard',
name: 'Billboard',
diff --git a/src/store/root/getters.js b/src/store/root/getters.js
index 8e41bbd..79d8870 100644
--- a/src/store/root/getters.js
+++ b/src/store/root/getters.js
@@ -32,7 +32,7 @@ export const currentFloorShopMap = ({ currentFloor: device, shopList, mapData })
const deviceX = nodes[device.location].x
const deviceY = nodes[device.location].y
return shopList
- .filter(shop => shop.floor === device.floor)
+ .filter(shop => shop.floor === device.floor && shop.yaxis)
.reduce((acc, shop) => {
const result = {}
try {
diff --git a/src/views/Index/Index.vue b/src/views/Index/Index.vue
index 7e10b9c..a6065fd 100644
--- a/src/views/Index/Index.vue
+++ b/src/views/Index/Index.vue
@@ -167,9 +167,9 @@ const foodList = computed(() => {
}
return splitBy(arr)
})
-const hotRecommend = computed(() => indexList.value.hotSearch.slice(0, 5) ?? [])
+const hotRecommend = computed(() => indexList?.value?.hotSearch?.slice(0, 5) ?? [])
const recommendShops = computed(() => {
- const arr = indexList.value.recommendList
+ const arr = indexList?.value?.recommendList
if (arr.length > 12) {
while (arr.length % 4 !== 0) {
arr.push(arr[Math.floor(Math.random() * arr.length)])