Browse Source

feat: 更新首页热搜及推荐品牌数据来源

v1.0.1
jiannibang 3 years ago
parent
commit
f115ea9c3c
  1. 20
      public/static/offline/JSON/getQMGoShopData.json
  2. 2
      src/http/api.js
  3. 7
      src/router/index.js
  4. 5
      src/views/Index/Index.vue

20
public/static/offline/JSON/getQMGoShopData.json

@ -0,0 +1,20 @@
{
"code": 200,
"msg": "操作成功",
"data": {
"recommendList": [
{ "logoCode": "a5f3334dd41e47e9b8a77f7b230a29e8", "logoUrl": "/iotFile/2022/06/21/a5f3334dd41e47e9b8a77f7b230a29e8.jpg", "shopId": 506, "shopName": "弥小爷虾滑" },
{ "logoCode": "eeb85afd46da4d83abbf467f41a27135", "logoUrl": "/iotFile/2022/06/20/eeb85afd46da4d83abbf467f41a27135.jpg", "shopId": 271, "shopName": "十一日后" },
{ "logoCode": "e42a1a763add4ce095341ae335a84734", "logoUrl": "/iotFile/2022/06/21/e42a1a763add4ce095341ae335a84734.jpg", "shopId": 273, "shopName": "谭木匠" },
{ "logoCode": "bff3193e743d4bfc8d30c3ac287dcdbf", "logoUrl": "/iotFile/2022/06/21/bff3193e743d4bfc8d30c3ac287dcdbf.jpg", "shopId": 425, "shopName": "星巴克" },
{ "logoCode": "f9f5cd482140458dbd04778d4790e249", "logoUrl": "/iotFile/2022/06/21/f9f5cd482140458dbd04778d4790e249.jpg", "shopId": 485, "shopName": "荔滋烫捞" }
],
"searchList": [
{ "shopNum": 19, "shopId": 515, "shopName": "琦王花生" },
{ "shopNum": 8, "shopId": 539, "shopName": "屈臣氏" },
{ "shopNum": 7, "shopId": 540, "shopName": "小乳猪洗脚城" },
{ "shopNum": 6, "shopId": 538, "shopName": "书亦烧仙草" },
{ "shopNum": 4, "shopId": 537, "shopName": "景福轩" }
]
}
}

2
src/http/api.js

@ -60,3 +60,5 @@ export const getHandWriting = params => post('http://saas.1000my.com:8014/words'
//数据统计
export const getStatistics = params => post(`${url().interfaceUrl}/analysis/v1/web/deviceUseClickDataUpload`, params)
export const getQMGoShopData = () => get(`/static/offline/JSON/getQMGoShopData.json`)

7
src/router/index.js

@ -1,7 +1,7 @@
import { createRouter, createWebHashHistory } from 'vue-router'
import { staticRoutes } from './routes'
import { useStore } from '@/store/root'
import { getIsShowVoiceBtn, getIndexList } from '@/http/api'
import { getIsShowVoiceBtn, getIndexList, getQMGoShopData } from '@/http/api'
import { ERR_OK } from '@/http/config'
const router = createRouter({
@ -39,7 +39,10 @@ router.beforeEach(async to => {
}
//store存储的首页卡片数据长度不等于请求的卡片数据长度时才能去重新提交到store中 防止重复提交
if (store.indexList?.columnList?.length !== data.columnList.length) {
store.SET_INDEX_LIST(data)
const {
data: { searchList, recommendList }
} = await getQMGoShopData()
store.SET_INDEX_LIST({ ...data, recommendList, hotSearch: searchList })
}
store.SET_SELECTED_MODULE(store.sidebarList[0].title)
router.addRoute(dynamicRoutes(data.columnList))

5
src/views/Index/Index.vue

@ -50,8 +50,8 @@
<h2>心动之选拥抱美好生活</h2>
</div>
<div class="marquee">
<div class="grid" :style="shopList.length <= 12 ? '' : `animation: marquee ${shopList.length}s linear infinite;`">
<img class="item" v-for="shop of shopList" :key="shop.id" :src="config.sourceUrl + shop.logoUrl" alt="" />
<div class="grid" :style="recommendShops.length <= 12 ? '' : `animation: marquee ${recommendShops.length}s linear infinite;`">
<img class="item" v-for="shop of recommendShops" :key="shop.id" :src="config.sourceUrl + shop.logoUrl" alt="" />
</div>
</div>
</div>
@ -97,6 +97,7 @@ const { indexList, currentFloor, buildingList, shopList, sidebarList, config, th
const guideDesc = ref('')
const foodList = computed(() => shopList.value.filter(({ isSpecial }) => isSpecial) ?? [])
const hotRecommend = computed(() => indexList.value.hotSearch.slice(0, 5) ?? [])
const recommendShops = computed(() => indexList.value.recommendList ?? [])
const bf = computed(() => (buildingList.length > 1 ? currentFloor.value.building + '-' : '') + currentFloor.value.floor)
const activityList = ref([])
const { currentHour } = useTime()

Loading…
Cancel
Save