diff --git a/src/api/index.js b/src/api/index.js index d9a36a2..133cd28 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -14,3 +14,8 @@ export const getArea = (data) => { export const getStreet = (data) => { return axios.get('city/get_street', { params: data }); } + +// 养殖基地 +export const getfarmCount = (data) => { + return axios.get('dataview.farm/farmCount ', { params: data }); +} \ No newline at end of file diff --git a/src/assets/head_img/back.png b/src/assets/head_img/back.png new file mode 100644 index 0000000..e82e313 Binary files /dev/null and b/src/assets/head_img/back.png differ diff --git a/src/assets/head_img/logo.png b/src/assets/head_img/logo.png index e82e313..c8f4088 100644 Binary files a/src/assets/head_img/logo.png and b/src/assets/head_img/logo.png differ diff --git a/src/components/areaList.vue b/src/components/areaList.vue index 23f0265..fb874e4 100644 --- a/src/components/areaList.vue +++ b/src/components/areaList.vue @@ -77,7 +77,7 @@ const show = () => { } defineExpose({ - open, close, show + open, close, show, choseTownFn }) const addressRef = ref(null); diff --git a/src/components/headView.vue b/src/components/headView.vue index 1d17430..e75844b 100644 --- a/src/components/headView.vue +++ b/src/components/headView.vue @@ -8,6 +8,7 @@ import axios from "axios"; import { getStreet } from "@/api/index.js"; import { useAppStore } from "@/store/app.js"; import { useUserStore } from "@/store/user.js"; +import { sendMsg } from "@/api/sendMsg.js" const appStore = useAppStore(); const userSotre = useUserStore(); @@ -16,6 +17,7 @@ const reload = inject('reload'); const info = reactive({ address: '泸县', + areaName: '泸县', pinyin: 'luxian' }) @@ -34,8 +36,21 @@ const offAreaList = (e) => { } }) info.address = e.name; - mitt.emit('map_info', info); - reload(); + // mitt.emit('map_info', info); + // reload(); + if(route.query.type=='main') { + sendMsg({ channel: 'user-breed-datav', event: 'changMap', data: { + areaName: info.areaName, + name: e.name + }}) + } else { + router.push({ + path: '/delivery', + query: { + name: e.name + } + }) + } } const router = useRouter() @@ -43,7 +58,13 @@ const route = useRoute() const navToDelivery = () => { if (route.path == '/') router.push('/delivery'); - else router.back(); + else { + appStore.setAddress({ + areaCode: appStore.address.areaCode, + streetCode: '' + }) + router.push('/?areaCode='+appStore.address.areaCode); + } } let nowTime = ref([]); @@ -82,6 +103,7 @@ const initList = async () => { let area = appStore.area; if (userSotre.userInfo.street_code) { let data = street.find(item => item.code == appStore.address.streetCode); + info.areaName = data?.name; info.address = data?.name; list.value = []; appStore.setAddress({ @@ -90,8 +112,10 @@ const initList = async () => { }) } else { let data = area.find(item => item.code == appStore.address.areaCode); + info.areaName = data?.name; info.address = data?.name; - list.value = [data, ...street]; + // list.value = [data, ...street]; + list.value = street; if (appStore.address.streetCode) { data = street.find(item => item.code == appStore.address.streetCode); info.address = data?.name; @@ -121,6 +145,12 @@ const changeTime = (e) => { } onMounted(() => { + if (route.query.areaCode) { + appStore.setAddress({ + areaCode: route.query.areaCode, + streetCode: route.query.streetCode || "", + }); + } initList(); // 每秒钟更新一次时间 @@ -130,13 +160,15 @@ onMounted(() => { mitt.on('changMap', (e)=>{ - if(e.areaName==info.pinyin){ - router.push({ - path: '/delivery', - query: { - name: e.name - } - }) + if(e.areaName==info.areaName){ + let c = list.value.find(item=>item.name==e.name); + if(c) areaListRef.value.choseTownFn(c); + // router.push({ + // path: '/delivery', + // query: { + // name: e.name + // } + // }) } }) }) @@ -147,7 +179,7 @@ onMounted(() => {
@@ -155,7 +187,7 @@ onMounted(() => {
{{ nowTime[1] }}
-
吟龙养殖溯源系统可视化大屏
+
吟龙养殖溯源系统可视化大屏
@@ -211,7 +243,16 @@ onMounted(() => { font-family: "ifonts", sans-serif; font-size: 2rem; height: 100%; - line-height: 50rpx; + display: flex; + align-items: center; + .logo{ + height: 2.5rem; + width: 2.5rem; + } + span{ + padding-bottom: 0.5rem; + padding-left: 0.5rem; + } } .left { align-self: flex-end; diff --git a/src/layout/index.vue b/src/layout/index.vue index 01b8227..2d4249a 100644 --- a/src/layout/index.vue +++ b/src/layout/index.vue @@ -2,6 +2,7 @@ import headView from "@/components/headView.vue"; import Businesses from "@/components/Businesses.vue"; import { ref, nextTick, provide, onMounted, onUnmounted } from "vue"; +import mitt from "@/utils/mitt"; const show = ref(true); const reload = () => { @@ -23,10 +24,13 @@ const startReLoad = () => { } onMounted(() => { - startReLoad(); - window.addEventListener('mousemove', startReLoad); - window.addEventListener('keypress', startReLoad); - window.addEventListener('click', startReLoad); + mitt.on('map_info', e => { + reload(); + startReLoad(); + window.addEventListener('mousemove', startReLoad); + window.addEventListener('keypress', startReLoad); + window.addEventListener('click', startReLoad); + }) }) onUnmounted(() => { @@ -40,7 +44,7 @@ onUnmounted(() => {