From cb2ea9f29f75cc1abfa531a07b194310c7c1f558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=88=E5=85=86=E5=A2=9E?= <你的邮箱@example.com> Date: Fri, 7 Aug 2026 17:55:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=96=B0=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=8F=B3=E4=BE=A7?= =?UTF-8?q?=E6=8A=BD=E5=B1=89=E6=96=B0=E5=8A=9F=E8=83=BD=EF=BC=8C=E8=BF=81?= =?UTF-8?q?=E7=A7=BB=E6=95=B0=E6=8D=AE=E5=88=86=E6=9E=90=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/assets/svg/basicInfo.svg | 6 + .../src/components/MapModal/column.config.ts | 65 +-- .../MapModal/components/BasicInfo.vue | 4 +- .../MapModal/components/MonitorInfo.vue | 340 +--------------- .../componentsEcharts/MonitorInfoEcharts.vue | 340 ++++++++++++++++ .../src/components/SidePanelItem/index.vue | 1 + frontend/src/components/gis/map.cesium.ts | 5 +- frontend/src/components/gis/map.ol.ts | 10 +- frontend/src/components/mapFilter/index.vue | 37 +- .../map/application/map-orchestrator.ts | 1 + .../rightSearchDrawer/basicInfo/config.ts | 382 ++++++++++++++++++ .../rightSearchDrawer/basicInfo/index.vue | 139 +++++++ .../rightSearchDrawer/monitorInfo/index.vue | 151 +++++++ frontend/src/store/modules/model.ts | 8 +- frontend/src/store/modules/ui.ts | 11 +- .../views/guoYuSheShi/sheShiZhuangKuang.vue | 44 +- .../home/huanBaoSheShiYunXingZhuangKuang.vue | 40 +- .../views/home/huanBaoZhiLiangZhuangKuang.vue | 44 +- .../views/home/shuiDianKaiFaZhuangKuang.vue | 16 +- .../muBiaoJianCeMoXingGuanLi/index.vue | 7 + .../moXingGuanLi/shiXuMoXingGuanLi/index.vue | 7 + frontend/src/views/qiXiDi/shengTaiDiBaoHu.vue | 16 +- frontend/src/views/sanWeiFangZhen/index.vue | 5 + .../shengTaiLiuLiangXieFangSheShi.vue | 16 +- .../shuiWenJianCe/diWenShuiJianHuanSheShi.vue | 20 +- .../src/views/shuiWenJianCe/shuiWenFenXi.vue | 20 +- .../views/shuiWenJianCe/shuiWenQingKuang.vue | 28 +- .../shuiHuanJingZhiLiangZhuangKuang.vue | 14 +- frontend/src/views/system/menu/index.vue | 13 +- .../views/zengZhiFangLiu/yuLieZengZhiZhan.vue | 40 +- .../views/zhenXIZhiWuYuan/zhenXIZhiWuYuan.vue | 32 +- frontend/src/views/zhiHuiZhuangBei/index.vue | 31 ++ .../guoYuSheShiYunXingXiaoGuoFenXi/index.vue | 5 + .../shuiWenShuJuFenXi}/components/export.js | 0 .../shuiWenShuJuFenXi}/components/utils.ts | 0 .../shuiWenShuJuFenXi/index.vue} | 0 .../views/zhiNengFenXi/yuCeYuJing/index.vue | 5 + .../zhiNengBaoGaoShengCheng/index.vue | 7 + .../zhiNengFenXi/zhiNengGaoJing/index.vue | 5 + 39 files changed, 1421 insertions(+), 494 deletions(-) create mode 100644 frontend/src/assets/svg/basicInfo.svg create mode 100644 frontend/src/components/MapModal/componentsEcharts/MonitorInfoEcharts.vue create mode 100644 frontend/src/modules/rightSearchDrawer/basicInfo/config.ts create mode 100644 frontend/src/modules/rightSearchDrawer/basicInfo/index.vue create mode 100644 frontend/src/modules/rightSearchDrawer/monitorInfo/index.vue create mode 100644 frontend/src/views/moXingGuanLi/muBiaoJianCeMoXingGuanLi/index.vue create mode 100644 frontend/src/views/moXingGuanLi/shiXuMoXingGuanLi/index.vue create mode 100644 frontend/src/views/sanWeiFangZhen/index.vue create mode 100644 frontend/src/views/zhiHuiZhuangBei/index.vue create mode 100644 frontend/src/views/zhiNengFenXi/guoYuSheShiYunXingXiaoGuoFenXi/index.vue rename frontend/src/views/{shuJuFenXi => zhiNengFenXi/shuiWenShuJuFenXi}/components/export.js (100%) rename frontend/src/views/{shuJuFenXi => zhiNengFenXi/shuiWenShuJuFenXi}/components/utils.ts (100%) rename frontend/src/views/{shuJuFenXi/shuiWenShuJuFenXi.vue => zhiNengFenXi/shuiWenShuJuFenXi/index.vue} (100%) create mode 100644 frontend/src/views/zhiNengFenXi/yuCeYuJing/index.vue create mode 100644 frontend/src/views/zhiNengFenXi/zhiNengBaoGaoShengCheng/index.vue create mode 100644 frontend/src/views/zhiNengFenXi/zhiNengGaoJing/index.vue diff --git a/frontend/src/assets/svg/basicInfo.svg b/frontend/src/assets/svg/basicInfo.svg new file mode 100644 index 00000000..19ea3854 --- /dev/null +++ b/frontend/src/assets/svg/basicInfo.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/frontend/src/components/MapModal/column.config.ts b/frontend/src/components/MapModal/column.config.ts index f40cef4d..80dd5881 100644 --- a/frontend/src/components/MapModal/column.config.ts +++ b/frontend/src/components/MapModal/column.config.ts @@ -83,32 +83,32 @@ const BasicColumns: Array = [ url: '', value: '国家电投集团' }, - { - key: '2950C68264BF494B9C5E1748569D026C', - name: '坝址经度(°)', - filed: 'lgtd', - visible: true, - ruleTips: 'a4d3b02a466677324278a9a153fb4adb', - type: 'number', - toFixed: 6, - url: '', - unitConfig: ['Other', 'LGTD'], - value: '101.184969', - vlsr: '大中型电站图册、全国水雨情信息网(黄河中游水电基地)' - }, - { - key: '70423E92994B4620A73BA6DCF3861669', - name: '坝址纬度(°)', - filed: 'lttd', - visible: true, - ruleTips: 'a4d3b02a466677324278a9a153fb4adb', - type: 'number', - toFixed: 6, - url: '', - unitConfig: ['Other', 'LTTD'], - value: '36.070816', - vlsr: '大中型电站图册、全国水雨情信息网(黄河中游水电基地)' - }, + // { + // key: '2950C68264BF494B9C5E1748569D026C', + // name: '坝址经度(°)', + // filed: 'lgtd', + // visible: true, + // ruleTips: 'a4d3b02a466677324278a9a153fb4adb', + // type: 'number', + // toFixed: 6, + // url: '', + // unitConfig: ['Other', 'LGTD'], + // value: '101.184969', + // vlsr: '大中型电站图册、全国水雨情信息网(黄河中游水电基地)' + // }, + // { + // key: '70423E92994B4620A73BA6DCF3861669', + // name: '坝址纬度(°)', + // filed: 'lttd', + // visible: true, + // ruleTips: 'a4d3b02a466677324278a9a153fb4adb', + // type: 'number', + // toFixed: 6, + // url: '', + // unitConfig: ['Other', 'LTTD'], + // value: '36.070816', + // vlsr: '大中型电站图册、全国水雨情信息网(黄河中游水电基地)' + // }, { key: '3EAC90E681014714A32E425A7C691D7D', name: '建设状态', @@ -1910,6 +1910,7 @@ const FPPointColumns2: Array = [ filed: 'inv', visible: true, type: 'number', + toFixed: 4, url: '' }, { @@ -2115,6 +2116,7 @@ const FPPointColumns4: Array = [ filed: 'inv', visible: true, type: 'number', + toFixed: 4, url: '' }, { @@ -3325,7 +3327,7 @@ const DwPointColumnsyuan: Array = [ visible: true, type: 'select', url: '' - }, + } ]; //夹岩双层取水 const DwOnePointColumns: Array = [ @@ -4871,13 +4873,14 @@ const tableColumns5: Array = [ ]; //气象监测 const MMColumns: Array = [ - { + { name: '基本属性', visible: false, ruleTips: '', type: '', url: '' - }, { + }, + { name: '测站名称', filed: 'stnm', visible: true, @@ -4905,7 +4908,7 @@ const MMColumns: Array = [ type: 'select', url: '' }, - { + { name: '所在水系', filed: 'addvcdName', visible: true, @@ -4919,7 +4922,7 @@ const MMColumns: Array = [ type: 'date', format: 'YYYY-MM-DD', url: '' - }, + } ]; //生态流量 diff --git a/frontend/src/components/MapModal/components/BasicInfo.vue b/frontend/src/components/MapModal/components/BasicInfo.vue index 93b8a5bb..9f9f28c0 100644 --- a/frontend/src/components/MapModal/components/BasicInfo.vue +++ b/frontend/src/components/MapModal/components/BasicInfo.vue @@ -425,8 +425,8 @@ const getData = async () => { } return stcdItem.attrKey == str; }); - if (stcdItem && stcdItem.attrKey == 'rgcp') { - } + // if (stcdItem && stcdItem.attrKey == 'rgcp') { + // } if (stcdItem && stcdItem.vlsr) { item.vlsr = stcdItem.vlsr; } diff --git a/frontend/src/components/MapModal/components/MonitorInfo.vue b/frontend/src/components/MapModal/components/MonitorInfo.vue index cb84f74f..4898a5f7 100644 --- a/frontend/src/components/MapModal/components/MonitorInfo.vue +++ b/frontend/src/components/MapModal/components/MonitorInfo.vue @@ -23,7 +23,7 @@
-
+ diff --git a/frontend/src/components/SidePanelItem/index.vue b/frontend/src/components/SidePanelItem/index.vue index 085b7300..7741a801 100644 --- a/frontend/src/components/SidePanelItem/index.vue +++ b/frontend/src/components/SidePanelItem/index.vue @@ -51,6 +51,7 @@
+
{ + console.log(_regionId, isAll); if (!this.viewer || !this.hydropBaseConfig) { console.warn('地图未初始化或 hydropBaseConfig 未配置'); return; } + console.log(_regionId, isAll); // 取消正在进行的裁切请求 if (this.clipRequestController) { this.clipRequestController.abort(); this.clipRequestController = null; } + console.log(this.BASEID); this.BASEID = _regionId; diff --git a/frontend/src/components/gis/map.ol.ts b/frontend/src/components/gis/map.ol.ts index d3dceb50..ac65bf55 100644 --- a/frontend/src/components/gis/map.ol.ts +++ b/frontend/src/components/gis/map.ol.ts @@ -205,7 +205,6 @@ export class MapOl implements MapInterface { } this.popupManager.showPopup(undefined, undefined); this.popupManager.handleMapClick(evt.pixel, detectedFeature => { - console.log(detectedFeature); if (detectedFeature.values_.sttpMap == 'ylfb') { modelStore.ylfbModalVisible = true; modelStore.params = detectedFeature.values_; @@ -1876,6 +1875,8 @@ export class MapOl implements MapInterface { this.layerRegistry.delete(layer.key); } + console.log(layer); + if (layer.type === 'wmts') { if (!layer.url) return; const url = !isCache ? layer.url : layer.url_3d; @@ -1993,7 +1994,8 @@ export class MapOl implements MapInterface { this.layerRegistry.set(layer.key, tileLayer); this.map.addLayer(tileLayer); } else if (layer.type === 'vector') { - if (layer.key === 'hydropBase') { + console.log(layer); + if (layer.id === 'hydropBase') { this.hydropBaseConfig = layer; } } @@ -2089,15 +2091,19 @@ export class MapOl implements MapInterface { _regionId: string, isAll: boolean ): Promise { + console.log(_regionId, isAll); + console.log(_regionId, this.hydropBaseConfig); if (!this.map || !this.hydropBaseConfig) { console.warn('地图未初始化或 hydropBaseConfig 未配置'); return; } + console.log(123, 444); if (this.clipRequestController) { this.clipRequestController.abort(); this.clipRequestController = null; } + console.log(this.BASEID); this.BASEID = _regionId; diff --git a/frontend/src/components/mapFilter/index.vue b/frontend/src/components/mapFilter/index.vue index 93af03ad..73aa3fdf 100644 --- a/frontend/src/components/mapFilter/index.vue +++ b/frontend/src/components/mapFilter/index.vue @@ -125,6 +125,7 @@ import { useMapViewStore } from '@/modules/map/stores/map-view.store'; import { useJidiSelectEventStore } from '@/store/modules/jidiSelectEvent'; import { useUiStore } from '@/store/modules/ui'; import { useMapStore } from '@/store/modules/map'; +import { useModelStore } from '@/store/modules/model'; import { DateSetting } from '@/utils/enumeration'; import { getFishList, getFishPointList } from '@/api/map'; @@ -135,6 +136,7 @@ const mapViewStore = useMapViewStore(); const uiStore = useUiStore(); const jidiSelectEventStore = useJidiSelectEventStore(); const mapStore = useMapStore(); +const modelStore = useModelStore(); const mapClass = MapClass.getInstance(); const ENG_POINT_LAYER_KEY = 'eng_point'; const YLFB_POINT_LAYER_KEY = 'ylfb_point'; @@ -206,6 +208,15 @@ const anchorPointSelectValue = computed({ } }); +// 备注:下拉检索选中点位后同步到 modelStore.selectedAnchorPoint,供基本信息等面板消费。 +watch(anchorPointSelectValue, value => { + if (!value) return; + const matched = anchorPointOptions.value.find(item => item.stcd === value); + if (matched) { + modelStore.selectedAnchorPoint = matched; + } +}); + // 备注:切页时只重置本地表单输入,并通过编排器复位时间范围,不再直接改运行态 store。 watch( () => route.path, @@ -220,6 +231,7 @@ watch( anchorPointSelect: null, fishSurveyZhuanZhi: false }; + handleSearch(false); resetFishSurveyState(); } ); @@ -587,6 +599,7 @@ watch( return; } formModel.value.anchorPointSelect = null; + handleSearch(false); }, { immediate: true } ); @@ -628,6 +641,7 @@ watch( const handleCapacityChange = (value: string) => { formModel.value.anchorPointSelect = null; + handleSearch(false); mapOrchestrator.changeEngPointCapacity(value); }; @@ -645,19 +659,32 @@ const focusSelectedAnchorPoint = () => { return; } - mapOrchestrator.focusPoint( - selectedValue, - uiStore.mapType === '3D' ? 8 : 14, - isFishSurveyMode.value ? anchorPointOptions.value : undefined - ); + // mapOrchestrator.focusPoint( + // selectedValue, + // uiStore.mapType === '3D' ? 8 : 14, + // isFishSurveyMode.value ? anchorPointOptions.value : undefined + // ); }; // 备注:搜索定位只分发定位命令,不在筛选组件里直接操作地图实例。 const handleAnchorPointChange = (value: string) => { + if (value == null) handleSearch(false); if (!value) return; focusSelectedAnchorPoint(); + handleSearch(true); }; +// 备注:用 function 声明以提升到作用域顶部,供上方 immediate watch 安全调用。 +function handleSearch(open: boolean) { + if (uiStore.searchDrawerOpen === open) { + return; + } + uiStore.setDrawerOpen(false); + setTimeout(() => { + uiStore.setSearchDrawerOpen(open); + uiStore.setDrawerOpen(true); + }, 500); +} watch( () => uiStore.mapSwitchCompletedTick, async (newVal, oldVal) => { diff --git a/frontend/src/modules/map/application/map-orchestrator.ts b/frontend/src/modules/map/application/map-orchestrator.ts index 0ca5c4be..3aa4d9d9 100644 --- a/frontend/src/modules/map/application/map-orchestrator.ts +++ b/frontend/src/modules/map/application/map-orchestrator.ts @@ -133,6 +133,7 @@ export const useMapOrchestrator = () => { } if (!initializedBaseLayerKeys.has(item.key)) { + console.log(item.config); mapClass.addBaseDataLayer(item.config, item.checked === 1); initializedBaseLayerKeys.add(item.key); } diff --git a/frontend/src/modules/rightSearchDrawer/basicInfo/config.ts b/frontend/src/modules/rightSearchDrawer/basicInfo/config.ts new file mode 100644 index 00000000..64733972 --- /dev/null +++ b/frontend/src/modules/rightSearchDrawer/basicInfo/config.ts @@ -0,0 +1,382 @@ +const ENGInfo = [ + { + label: '电站名称', + value: 'ennm', + col: 12 + }, + { + label: '所属基地', + value: 'baseName', + col: 12 + }, + { + label: '所在河段', + value: 'hbrvcdName', + col: 24 + }, + { + label: '详细地址', + value: 'stlc', + col: 24 + }, + { + label: '所属集团', + value: 'topHynm', + col: 24 + }, + { + label: '所属公司', + value: 'hynm', + col: 24 + }, + { + label: '装机容量(万kW)', + value: 'ttpwr', + col: 24 + }, + { + label: '多年平均年发电量(亿kW·h)', + value: 'yrge', + col: 24 + }, + { + label: '建设时间', + value: 'jcdt', + type: 'date', + col: 24 + } +]; + +const DWInfo = [ + { + label: '设施名称', + value: 'stnm', + col: 12 + }, + { + label: '设施类型', + value: 'sttpName', + col: 12 + }, + { + label: '所属基地', + value: 'baseName', + col: 24 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + } +]; + +const EQInfo = [ + { + label: '设施名称', + value: 'stnm', + col: 24 + }, + { + label: '所属基地', + value: 'baseName', + col: 24 + }, + { + label: '所属电站', + value: 'ennm', + col: 24 + } +]; +const FBInfo = [ + { + label: '增殖站名称', + value: 'stnm', + col: 24 + }, + { + label: '所属基地', + value: 'baseName', + col: 24 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 24 + } +]; +const VPInfo = [ + { + label: '植物园名称', + value: 'stnm', + col: 24 + }, + { + label: '站址', + value: 'stlc', + col: 24 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 12 + }, + { + label: '面积(km²)', + value: 'area', + col: 12 + }, + { + label: '保护对象', + value: 'protObj', + col: 24 + }, + { + label: '保护方式', + value: 'bhfs', + col: 24 + } +]; +const VAInfo = [ + { + label: '救助站名称', + value: 'stnm', + col: 24 + }, + { + label: '站址', + value: 'stlc', + col: 24 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 12 + }, + { + label: '保护对象', + value: 'protobj', + col: 24 + }, + { + label: '保护方式', + value: 'bhfs', + col: 24 + } +]; +const WTInfo = [ + { + label: '测站名称', + value: 'stnm', + col: 12 + }, + { + label: '测站类型', + value: 'sttpName', + col: 12 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 12 + }, + { + label: '监测方式', + value: 'mwayName', + col: 12 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '所属电站', + value: 'ennm', + col: 24 + } +]; + +const WQInfo = [ + { + label: '测站名称', + value: 'stnm', + col: 12 + }, + { + label: '测站类型', + value: 'sttpName', + col: 12 + }, + { + label: '水质要求', + value: 'wwqtgName', + col: 12 + }, + { + label: '监测方式', + value: 'mwayName', + col: 12 + }, + { + label: '类别', + value: 'dtinTypeName', + col: 12 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 12 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '所属电站', + value: 'ennm', + col: 24 + }, + { + label: '站址', + value: 'stlc', + col: 24 + } +]; +const ZQInfo = [ + { + label: '测站名称', + value: 'stnm', + col: 12 + }, + { + label: '测站类型', + value: 'sttpName', + col: 12 + }, + { + label: '建成日期', + value: 'jcdt', + type: 'date', + col: 12 + }, + { + label: '监测方式', + value: 'mwayName', + col: 12 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '站址', + value: 'stlc', + col: 24 + } +]; + +const VDInfo = [ + { + label: '监控点名', + value: 'stnm', + col: 24 + }, + { + label: '监控内容类型', + value: 'sttpName', + col: 12 + }, + { + label: '所属行政区', + value: 'addvcdName', + col: 24 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '监控点站址', + value: 'stlc', + col: 24 + } +]; +const FHInfo = [ + // 栖息地 + { + label: '栖息地名称', + value: 'stnm', + col: 24 + }, + { + label: '保护对象', + value: 'protobj', + col: 24 + }, + { + label: '保护范围', + value: 'qxdbhfw', + col: 24 + }, + { + label: '保护方式', + value: 'bhfs', + col: 24 + }, + { + label: '保护河流', + value: 'bhhl', + col: 12 + }, + { + label: '保护河段', + value: 'bhhd', + col: 12 + }, + { + label: '所属流域', + value: 'hbrvcdName', + col: 24 + }, + { + label: '站址', + value: 'stlc', + col: 24 + } +]; +export { + ENGInfo, + DWInfo, + EQInfo, + FBInfo, + VPInfo, + VAInfo, + WTInfo, + WQInfo, + ZQInfo, + VDInfo, + FHInfo +}; diff --git a/frontend/src/modules/rightSearchDrawer/basicInfo/index.vue b/frontend/src/modules/rightSearchDrawer/basicInfo/index.vue new file mode 100644 index 00000000..dafe8631 --- /dev/null +++ b/frontend/src/modules/rightSearchDrawer/basicInfo/index.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/frontend/src/modules/rightSearchDrawer/monitorInfo/index.vue b/frontend/src/modules/rightSearchDrawer/monitorInfo/index.vue new file mode 100644 index 00000000..ce5d581a --- /dev/null +++ b/frontend/src/modules/rightSearchDrawer/monitorInfo/index.vue @@ -0,0 +1,151 @@ + + + + + diff --git a/frontend/src/store/modules/model.ts b/frontend/src/store/modules/model.ts index ada3f354..f0de1029 100644 --- a/frontend/src/store/modules/model.ts +++ b/frontend/src/store/modules/model.ts @@ -21,6 +21,7 @@ export const useModelStore = defineStore('model', () => { const wtConfig = ref<{ ioWtrv?: boolean; hasRstcdWtvt?: boolean }>({}); // 水温配置 const wqShow = ref(false); // 水质 AI 预测显示 const fishTabInfo = ref(null); // 鱼类监测数据信息 + const selectedAnchorPoint = ref(null); // 地图筛选下拉选中的点位对象(供基本信息等面板消费) const params = ref<{ sttp: string; @@ -47,14 +48,14 @@ export const useModelStore = defineStore('model', () => { sttpMap: '', dtinType: '', bldstt: '', - bldsttCcode:'' + bldsttCcode: '' }); const filter = ref({ stllgzlx: '', // 生态流量 - 规则类型 stllTmType: '', // 生态流量 - 时间类型 tm: '', rangeTm: [], - year:'', + year: '' }); return { params, @@ -75,6 +76,7 @@ export const useModelStore = defineStore('model', () => { aiSites, wtConfig, wqShow, - fishTabInfo + fishTabInfo, + selectedAnchorPoint }; }); diff --git a/frontend/src/store/modules/ui.ts b/frontend/src/store/modules/ui.ts index 31992ca2..b00fa19f 100644 --- a/frontend/src/store/modules/ui.ts +++ b/frontend/src/store/modules/ui.ts @@ -10,16 +10,23 @@ export const useUiStore = defineStore('ui', () => { const isRoaming = ref(false); // dim 切换时跳过漫游相机还原(由地图模式切换自行处理) const skipRoamCameraRestore = ref(false); + // 搜索抽屉状态 + const searchDrawerOpen = ref(false); // 切换抽屉状态 const toggleDrawer = () => { drawerOpen.value = !drawerOpen.value; }; - // 设置抽屉状态 const setDrawerOpen = (open: boolean) => { drawerOpen.value = open; }; + // 设置搜索抽屉状态 + const setSearchDrawerOpen = (open: boolean) => { + console.log(open); + + searchDrawerOpen.value = open; + }; const markMapSwitchCompleted = () => { mapSwitchCompletedTick.value += 1; @@ -31,6 +38,8 @@ export const useUiStore = defineStore('ui', () => { skipRoamCameraRestore, toggleDrawer, setDrawerOpen, + setSearchDrawerOpen, + searchDrawerOpen, mapType, mapSwitchCompletedTick, markMapSwitchCompleted diff --git a/frontend/src/views/guoYuSheShi/sheShiZhuangKuang.vue b/frontend/src/views/guoYuSheShi/sheShiZhuangKuang.vue index f2ffa96c..35c95a28 100644 --- a/frontend/src/views/guoYuSheShi/sheShiZhuangKuang.vue +++ b/frontend/src/views/guoYuSheShi/sheShiZhuangKuang.vue @@ -1,20 +1,23 @@ @@ -25,10 +28,15 @@ watch(
- - - - +
+ +
+
+ + + + +
diff --git a/frontend/src/views/home/huanBaoSheShiYunXingZhuangKuang.vue b/frontend/src/views/home/huanBaoSheShiYunXingZhuangKuang.vue index db3e01d6..e6ef66a3 100644 --- a/frontend/src/views/home/huanBaoSheShiYunXingZhuangKuang.vue +++ b/frontend/src/views/home/huanBaoSheShiYunXingZhuangKuang.vue @@ -1,21 +1,31 @@ - + diff --git a/frontend/src/views/home/huanBaoZhiLiangZhuangKuang.vue b/frontend/src/views/home/huanBaoZhiLiangZhuangKuang.vue index 96a04bc4..51d1f0dd 100644 --- a/frontend/src/views/home/huanBaoZhiLiangZhuangKuang.vue +++ b/frontend/src/views/home/huanBaoZhiLiangZhuangKuang.vue @@ -1,32 +1,40 @@ diff --git a/frontend/src/views/home/shuiDianKaiFaZhuangKuang.vue b/frontend/src/views/home/shuiDianKaiFaZhuangKuang.vue index 72ad15be..8e5474d4 100644 --- a/frontend/src/views/home/shuiDianKaiFaZhuangKuang.vue +++ b/frontend/src/views/home/shuiDianKaiFaZhuangKuang.vue @@ -1,10 +1,12 @@