| .env.development | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/assets/dataBoard/data-board-map-choose-old.png | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/assets/dataBoard/data-board-map-choose.png | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/DataBoard/DataBoardHome.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/DataBoard/components/DataBoardCenterMap.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/DataBoard/components/DataBoardCenterMapMark.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/DataBoard/hooks/index.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
.env.development
@@ -12,7 +12,7 @@ # 开发环境后端地址 VITE_PROXY_DOMAIN_REAL = "http://localhost:57191" # VITE_PROXY_DOMAIN_REAL = "http://192.168.0.27:57191" # VITE_PROXY_DOMAIN_REAL = "http://118.178.252.28:8742/" # VITE_PROXY_DOMAIN_REAL = "https://testrlywx.boleyuma.com" VITE_COMPRESSION = "none" src/assets/dataBoard/data-board-map-choose-old.png
src/assets/dataBoard/data-board-map-choose.pngsrc/views/DataBoard/DataBoardHome.vue
@@ -94,7 +94,6 @@ useGetDataBoardNewCustomerCount, useGetDataBoardNewInsurePeopleCount, } from './hooks'; import { take } from 'lodash'; defineOptions({ name: 'DataBoardHome', src/views/DataBoard/components/DataBoardCenterMap.vue
@@ -30,7 +30,7 @@ v-model:choose="item.choose" :parkName="item.parkName" :class="item.class" @click="handleClick(item.id)" @click="handleClick(index)" ></DataBoardCenterMapMark> </div> </div> @@ -49,6 +49,7 @@ import { useIndustrialParkDropDownList } from '@/hooks'; import _ from 'lodash'; import { useIntervalValue } from '../hooks'; import { useIntervalFn } from '@vueuse/core'; defineOptions({ name: 'DataBoardCenterMap', @@ -68,11 +69,11 @@ insurePeopleCount: 0, }); function handleClick(id: string) { function handleClick(chooseIndex: number) { form.mapList.forEach((item, index) => { item.choose = item.id === id; item.choose = chooseIndex === index; }); form.industrialParkId = id; form.industrialParkId = dataBoardIndustrialParkList.value[chooseIndex]?.id; refetch(); } @@ -100,15 +101,6 @@ }, }); onMounted(async () => { await queryClient.invalidateQueries(['industrialParkServices/getIndustrialParkDropDownList']); if (dataBoardIndustrialParkList.value.length > 0) { form.industrialParkId = dataBoardIndustrialParkList.value[0].id; form.mapList = dataBoardIndustrialParkList.value; refetch(); } }); const { value: totalCustomerCountValue, changeValue: changeTotalCustomerCount } = useIntervalValue( form.totalCustomerCount ); @@ -120,6 +112,26 @@ const { value: insurePeopleCountValue, changeValue: changeInsurePeopleCount } = useIntervalValue( form.insurePeopleCount ); const { pause, resume } = useIntervalFn(() => { if (dataBoardIndustrialParkList.value.length === 0) return; const index = _.random(0, dataBoardIndustrialParkList.value.length - 1); handleClick(index); }, 30000); onMounted(async () => { await queryClient.invalidateQueries(['industrialParkServices/getIndustrialParkDropDownList']); if (dataBoardIndustrialParkList.value.length > 0) { form.industrialParkId = dataBoardIndustrialParkList.value[0].id; form.mapList = dataBoardIndustrialParkList.value; refetch(); } resume(); }); onUnmounted(() => { pause(); }); </script> <style lang="scss" scoped> @use '@/style/common.scss' as *; src/views/DataBoard/components/DataBoardCenterMapMark.vue
@@ -4,8 +4,10 @@ <img :src="DataBoardMapInit" alt="" /> </div> <div class="data-board-center-map-mark-item choose" v-else> <div class="data-board-center-map-mark-item-park">{{ parkName }}</div> <img :src="DataBoardMapChoose" alt="" /> <div class="data-board-center-map-mark-item-park"> <div class="data-board-center-map-mark-item-park-name">{{ parkName }}</div> </div> <img class="data-board-center-map-mark-item-img" :src="DataBoardMapChoose" alt="" /> </div> </div> </template> @@ -61,22 +63,38 @@ &.choose { position: relative; img { width: 100%; height: 100%; } display: flex; flex-direction: column; .data-board-center-map-mark-item-park { position: absolute; top: 0; left: 0; width: 100%; font-size: 24px; line-height: 50px; font-family: YouSheBiaoTiHei Regular; text-align: center; color: #ffffff; padding: 2px; border-radius: 8px; background-image: linear-gradient( to bottom, rgba(248, 255, 156, 0.5), rgba(193, 245, 6, 0.5) ); .data-board-center-map-mark-item-park-name { padding: 12px 26px; font-size: 24px; font-family: YouSheBiaoTiHei Regular; border-radius: 8px; text-align: center; color: #ffffff; background: linear-gradient( 180deg, rgba(255, 176, 29, 0.8) 0%, rgba(255, 210, 92, 0.8) 100% ); line-height: 1; word-break: keep-all; } } .data-board-center-map-mark-item-img { width: 96px; height: 54px; } } } src/views/DataBoard/hooks/index.ts
@@ -11,7 +11,7 @@ setTimeout(() => { value.value = preValue.value; }, 500); }, 10000); }, 30000); function changeValue(_value: T) { value.value = _value;