diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git "a/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" new file mode 100644 index 0000000..5aabb9a --- /dev/null +++ "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" Binary files differ diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git "a/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" new file mode 100644 index 0000000..5aabb9a --- /dev/null +++ "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" Binary files differ diff --git a/src/pages/ywts/cszl/gw/index.vue b/src/pages/ywts/cszl/gw/index.vue index 2b07682..a953fc8 100644 --- a/src/pages/ywts/cszl/gw/index.vue +++ b/src/pages/ywts/cszl/gw/index.vue @@ -170,7 +170,7 @@ AddLabelPoint( item.id, item.name, - item.deviceStatus === '2' ? iconDoing: iconDone, + item.deviceStatus === '1' ? iconOnline : item.deviceStatus === '3' ? iconAlarm : iconOffline, [item.lon, item.lat, 0], 'gw', item, this.clickGw) }) diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git "a/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" new file mode 100644 index 0000000..5aabb9a --- /dev/null +++ "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" Binary files differ diff --git a/src/pages/ywts/cszl/gw/index.vue b/src/pages/ywts/cszl/gw/index.vue index 2b07682..a953fc8 100644 --- a/src/pages/ywts/cszl/gw/index.vue +++ b/src/pages/ywts/cszl/gw/index.vue @@ -170,7 +170,7 @@ AddLabelPoint( item.id, item.name, - item.deviceStatus === '2' ? iconDoing: iconDone, + item.deviceStatus === '1' ? iconOnline : item.deviceStatus === '3' ? iconAlarm : iconOffline, [item.lon, item.lat, 0], 'gw', item, this.clickGw) }) diff --git a/src/pages/ywts/cszl/gw/popup.vue b/src/pages/ywts/cszl/gw/popup.vue index ec18fb7..a786936 100644 --- a/src/pages/ywts/cszl/gw/popup.vue +++ b/src/pages/ywts/cszl/gw/popup.vue @@ -77,17 +77,6 @@ getDeviceDetail({ id: id }).then(response => { if(response.code === 200 && response.data && response.data.value && response.data.value.length) { this.gwDeviceInfo = response.data.value[0] - } else { - this.gwDeviceInfo = { - id : '1', // 点位id - deviceNo : '1111', // 设备编号 - deviceName : '设备设备1', // 设备名称 - deviceTypeName : '也为检测仪', // 设备类型名称 - deviceStatusName : '在线', // 设备状态名称 - location : '吉祥吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路路', // 位置 - alarmTime : '2025-10-12', // 告警时间 - alarmContent: '液位过高', // 告警内容 - } } }) } diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git "a/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" new file mode 100644 index 0000000..5aabb9a --- /dev/null +++ "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" Binary files differ diff --git a/src/pages/ywts/cszl/gw/index.vue b/src/pages/ywts/cszl/gw/index.vue index 2b07682..a953fc8 100644 --- a/src/pages/ywts/cszl/gw/index.vue +++ b/src/pages/ywts/cszl/gw/index.vue @@ -170,7 +170,7 @@ AddLabelPoint( item.id, item.name, - item.deviceStatus === '2' ? iconDoing: iconDone, + item.deviceStatus === '1' ? iconOnline : item.deviceStatus === '3' ? iconAlarm : iconOffline, [item.lon, item.lat, 0], 'gw', item, this.clickGw) }) diff --git a/src/pages/ywts/cszl/gw/popup.vue b/src/pages/ywts/cszl/gw/popup.vue index ec18fb7..a786936 100644 --- a/src/pages/ywts/cszl/gw/popup.vue +++ b/src/pages/ywts/cszl/gw/popup.vue @@ -77,17 +77,6 @@ getDeviceDetail({ id: id }).then(response => { if(response.code === 200 && response.data && response.data.value && response.data.value.length) { this.gwDeviceInfo = response.data.value[0] - } else { - this.gwDeviceInfo = { - id : '1', // 点位id - deviceNo : '1111', // 设备编号 - deviceName : '设备设备1', // 设备名称 - deviceTypeName : '也为检测仪', // 设备类型名称 - deviceStatusName : '在线', // 设备状态名称 - location : '吉祥吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路路', // 位置 - alarmTime : '2025-10-12', // 告警时间 - alarmContent: '液位过高', // 告警内容 - } } }) } diff --git a/src/pages/ywts/cyjj/cy/index.vue b/src/pages/ywts/cyjj/cy/index.vue index 9909688..2b13b46 100644 --- a/src/pages/ywts/cyjj/cy/index.vue +++ b/src/pages/ywts/cyjj/cy/index.vue @@ -1,3 +1,4 @@ + @@ -7,6 +8,7 @@ :bg-hover="environmentHover" width="5" height="5" text-hover="营商环境" @click="btnClick" /> + @@ -19,9 +21,11 @@ import ListPage from "@/components/ListPage"; import { clearUpMap, clearResetMap, AddLabelPoint } from '@/utils/freedo' import { eventBus } from "../../../../main"; +import { getPopularAttractionsList } from '@/api/ywts/cyjj/cy' +import Pop from "./popup.vue"; export default { name: 'CY', - components: { TimeManager, KeywordManager, LayerManagerMix, CommonBtn, ListPage, }, + components: { TimeManager, KeywordManager, LayerManagerMix, CommonBtn, ListPage, Pop }, data() { return { selectIndex: 'ponitBtn', @@ -31,12 +35,25 @@ environmentHover: require('@/assets/images/function/环卫/基础设施选中.png'), scenicBg: require('@/assets/images/function/交通/重点场所未选中.png'), scenicHover: require('@/assets/images/function/交通/重点场所选中.png'), + showPopularAttractionsPop: false, // 显示热门景点弹窗 } }, + mounted() { + this.selectIndex = 'ponitBtn' + clearResetMap() + // TODO: 设置默认选中图层 + // 清除弹窗展示 + this.$bus.$on('clear', () => { + this.showPopularAttractionsPop = false // 是否显示景点的popup + }) + // TODO: 获取企业点位数据 + }, methods: { async btnClick(e) { + console.log('==44444444444==', e); clearResetMap() - this.selectIndex = e.target.id + this.showPopularAttractionsPop = false, // 是否显示景点的popup + this.selectIndex = typeof e === 'string' ? e : e.target.id // TODO: 清除各种弹窗 switch (this.selectIndex) { case "ponitBtn": @@ -46,20 +63,79 @@ // TODO: 获取营商环境数据 break case "scenicBtn": - // TODO: 获取热门景点数据 + this.fetchPopularAttractionsList() break } }, - }, - mounted() { - this.selectIndex = 'ponitBtn' - clearResetMap() - // TODO: 设置默认选中图层 - // 清除弹窗展示 - this.$bus.$on('clear', () => { - // TODO: 清除各种弹窗 - }) - // TODO: 获取企业点位数据 + // 获取热门景点列表 + fetchPopularAttractionsList() { + const icon = require('@/assets/images/icon/产业/scenicSpot.png') + getPopularAttractionsList().then(response => { + if(response.code === 200) { + clearResetMap() + response.data.value.forEach(item => { + AddLabelPoint( + item.id, + item.name, + icon, + [item.lon, item.lat, 0], 'cy', item, + this.clickPopularAttractionsMarker) + }) + } + }) + // const tempData = [ + // { + // id: '1', + // lon: '114.87365', + // lat: '25.76118', + // name: '1111', + // todayMoney: '1111', + // allMoney: '11111', + // todayPerson: '111111', + // allPerson: '1111111', + // location: '11111111', + // }, + // { + // id: '2', + // lon: '114.87365', + // lat: '25.76818', + // name: '112211', + // todayMoney: '11211', + // allMoney: '111211', + // todayPerson: '11123211', + // allPerson: '111123232111', + // location: '11112323232321222111', + // }, + // ] + // tempData.forEach(item => { + // AddLabelPoint( + // item.id, + // item.name, + // icon, + // [item.lon, item.lat, 0], 'cy', item, + // this.clickPopularAttractionsMarker) + // }) + }, + // 点击景点点位 + clickPopularAttractionsMarker(eventArg) { + const showPopularAttractionsPop = (e) => { + const item = e._data.data + this.showPopularAttractionsPop = true + this.$nextTick(() => { + console.log('点击热门景点点位信息', item, this.showPopularAttractionsPop); + this.$refs.popularAttractionsPopRef.initData(item) + }) + } + if (this.showPopularAttractionsPop) { + this.showPopularAttractionsPop = false + setTimeout(() => { + showPopularAttractionsPop(eventArg) + }, 100); + } + else { + showPopularAttractionsPop(eventArg) + } + }, } } diff --git a/src/api/ywts/cyjj/cy.js b/src/api/ywts/cyjj/cy.js new file mode 100644 index 0000000..0e375ea --- /dev/null +++ b/src/api/ywts/cyjj/cy.js @@ -0,0 +1,36 @@ +/** + * 产业经济-产业接口 + */ +import request from "@/utils/request"; +// 产业经济-热门景点列表 +export function getPopularAttractionsList() { + return request({ + url: "cyjj-gktj/cyjj/rmjdlb", + method: "post" + }); +} + +// 产业经济-热门景点详情 +export function getPopularAttractionsDetail() { + return request({ + url: "cyjj-gktj/cyjj/rmjdxq", + method: "post" + }); +} + +// 产业经济-企业点位列表 +export function getEnterpriseLocationList() { + return request({ + url: "cyjj-gktj/cyjj/qydwlb", + method: "post" + }); +} + +// 产业经济-营商环境结果 +export function getBusinessEnvironmentList() { + return request({ + url: "cyjj-gktj/cyjj/yshjjg", + method: "post" + }); +} + diff --git "a/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" new file mode 100644 index 0000000..5aabb9a --- /dev/null +++ "b/src/assets/images/icon/\344\272\247\344\270\232/scenicSpot.png" Binary files differ diff --git a/src/pages/ywts/cszl/gw/index.vue b/src/pages/ywts/cszl/gw/index.vue index 2b07682..a953fc8 100644 --- a/src/pages/ywts/cszl/gw/index.vue +++ b/src/pages/ywts/cszl/gw/index.vue @@ -170,7 +170,7 @@ AddLabelPoint( item.id, item.name, - item.deviceStatus === '2' ? iconDoing: iconDone, + item.deviceStatus === '1' ? iconOnline : item.deviceStatus === '3' ? iconAlarm : iconOffline, [item.lon, item.lat, 0], 'gw', item, this.clickGw) }) diff --git a/src/pages/ywts/cszl/gw/popup.vue b/src/pages/ywts/cszl/gw/popup.vue index ec18fb7..a786936 100644 --- a/src/pages/ywts/cszl/gw/popup.vue +++ b/src/pages/ywts/cszl/gw/popup.vue @@ -77,17 +77,6 @@ getDeviceDetail({ id: id }).then(response => { if(response.code === 200 && response.data && response.data.value && response.data.value.length) { this.gwDeviceInfo = response.data.value[0] - } else { - this.gwDeviceInfo = { - id : '1', // 点位id - deviceNo : '1111', // 设备编号 - deviceName : '设备设备1', // 设备名称 - deviceTypeName : '也为检测仪', // 设备类型名称 - deviceStatusName : '在线', // 设备状态名称 - location : '吉祥吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路吉祥路路', // 位置 - alarmTime : '2025-10-12', // 告警时间 - alarmContent: '液位过高', // 告警内容 - } } }) } diff --git a/src/pages/ywts/cyjj/cy/index.vue b/src/pages/ywts/cyjj/cy/index.vue index 9909688..2b13b46 100644 --- a/src/pages/ywts/cyjj/cy/index.vue +++ b/src/pages/ywts/cyjj/cy/index.vue @@ -1,3 +1,4 @@ + @@ -7,6 +8,7 @@ :bg-hover="environmentHover" width="5" height="5" text-hover="营商环境" @click="btnClick" /> + @@ -19,9 +21,11 @@ import ListPage from "@/components/ListPage"; import { clearUpMap, clearResetMap, AddLabelPoint } from '@/utils/freedo' import { eventBus } from "../../../../main"; +import { getPopularAttractionsList } from '@/api/ywts/cyjj/cy' +import Pop from "./popup.vue"; export default { name: 'CY', - components: { TimeManager, KeywordManager, LayerManagerMix, CommonBtn, ListPage, }, + components: { TimeManager, KeywordManager, LayerManagerMix, CommonBtn, ListPage, Pop }, data() { return { selectIndex: 'ponitBtn', @@ -31,12 +35,25 @@ environmentHover: require('@/assets/images/function/环卫/基础设施选中.png'), scenicBg: require('@/assets/images/function/交通/重点场所未选中.png'), scenicHover: require('@/assets/images/function/交通/重点场所选中.png'), + showPopularAttractionsPop: false, // 显示热门景点弹窗 } }, + mounted() { + this.selectIndex = 'ponitBtn' + clearResetMap() + // TODO: 设置默认选中图层 + // 清除弹窗展示 + this.$bus.$on('clear', () => { + this.showPopularAttractionsPop = false // 是否显示景点的popup + }) + // TODO: 获取企业点位数据 + }, methods: { async btnClick(e) { + console.log('==44444444444==', e); clearResetMap() - this.selectIndex = e.target.id + this.showPopularAttractionsPop = false, // 是否显示景点的popup + this.selectIndex = typeof e === 'string' ? e : e.target.id // TODO: 清除各种弹窗 switch (this.selectIndex) { case "ponitBtn": @@ -46,20 +63,79 @@ // TODO: 获取营商环境数据 break case "scenicBtn": - // TODO: 获取热门景点数据 + this.fetchPopularAttractionsList() break } }, - }, - mounted() { - this.selectIndex = 'ponitBtn' - clearResetMap() - // TODO: 设置默认选中图层 - // 清除弹窗展示 - this.$bus.$on('clear', () => { - // TODO: 清除各种弹窗 - }) - // TODO: 获取企业点位数据 + // 获取热门景点列表 + fetchPopularAttractionsList() { + const icon = require('@/assets/images/icon/产业/scenicSpot.png') + getPopularAttractionsList().then(response => { + if(response.code === 200) { + clearResetMap() + response.data.value.forEach(item => { + AddLabelPoint( + item.id, + item.name, + icon, + [item.lon, item.lat, 0], 'cy', item, + this.clickPopularAttractionsMarker) + }) + } + }) + // const tempData = [ + // { + // id: '1', + // lon: '114.87365', + // lat: '25.76118', + // name: '1111', + // todayMoney: '1111', + // allMoney: '11111', + // todayPerson: '111111', + // allPerson: '1111111', + // location: '11111111', + // }, + // { + // id: '2', + // lon: '114.87365', + // lat: '25.76818', + // name: '112211', + // todayMoney: '11211', + // allMoney: '111211', + // todayPerson: '11123211', + // allPerson: '111123232111', + // location: '11112323232321222111', + // }, + // ] + // tempData.forEach(item => { + // AddLabelPoint( + // item.id, + // item.name, + // icon, + // [item.lon, item.lat, 0], 'cy', item, + // this.clickPopularAttractionsMarker) + // }) + }, + // 点击景点点位 + clickPopularAttractionsMarker(eventArg) { + const showPopularAttractionsPop = (e) => { + const item = e._data.data + this.showPopularAttractionsPop = true + this.$nextTick(() => { + console.log('点击热门景点点位信息', item, this.showPopularAttractionsPop); + this.$refs.popularAttractionsPopRef.initData(item) + }) + } + if (this.showPopularAttractionsPop) { + this.showPopularAttractionsPop = false + setTimeout(() => { + showPopularAttractionsPop(eventArg) + }, 100); + } + else { + showPopularAttractionsPop(eventArg) + } + }, } } diff --git a/src/pages/ywts/cyjj/cy/popup.vue b/src/pages/ywts/cyjj/cy/popup.vue new file mode 100644 index 0000000..88f5474 --- /dev/null +++ b/src/pages/ywts/cyjj/cy/popup.vue @@ -0,0 +1,289 @@ + + + + + + + + + 名称: {{ gwAlarmInfo.name }} + 今日收入: {{ gwAlarmInfo.todayMoney }} + 总收入: {{ gwAlarmInfo.allMoney }} + 今日接待游客量: {{ gwAlarmInfo.todayPerson }} + 总计接待游客量: {{ gwAlarmInfo.allPerson }} + 位置: {{ gwAlarmInfo.location }} + + + + + + + + + + +