hmm 7 mēneši atpakaļ
vecāks
revīzija
6ea9bb95cc

+ 53 - 0
src/api/globalMap/layerAnalysis.ts

@@ -116,3 +116,56 @@ export const getDroneType = (data) => {
     data: data
   });
 };
+
+// 旅游场所分类统计
+export const getTouristAttractionType = (data) => {
+  return request({
+    url: '/api/gateway/v2/get_count_point_info_type_tourist_attraction',
+    method: 'post',
+    data: data
+  });
+};
+
+// 堆场分类统计
+export const getYardSitesType = (data) => {
+  return request({
+    url: '/api/gateway/v2/get_count_point_info_type_yard_sites',
+    method: 'post',
+    data: data
+  });
+};
+//在建工地类统计-有问题
+export const getConstructionSitesType = (data) =>
+  request({
+    url: '/api/gateway/v2/get_count_point_info_type_under_construction_sites',
+    method: 'post',
+    data: data
+  });
+
+// 客运站分类统计
+export const getStationInfoType = (data) => {
+  return request({
+    url: '/api/gateway/v2/get_count_point_info_type_station_info',
+    method: 'post',
+    data: data
+  });
+};
+
+// 建筑工程分类统计
+export const getBuildingProjectType = (data) => {
+  return request({
+    url: '/api/gateway/v2/get_count_point_info_type_building_project_info',
+    method: 'post',
+    data: data
+  });
+};
+
+// 重大危险源分类统计
+export const getMajorHazardSourceType = (data) => {
+  return request({
+    url: '/api/gateway/v2/get_count_point_info_type_major_hazard_source',
+    method: 'post',
+    data: data
+  });
+};
+

+ 78 - 0
src/api/globalMap/spatialAnalysis.ts

@@ -153,3 +153,81 @@ export const getRainbowDetails = (id: string) => {
     }
   });
 };
+
+//旅游场所
+export const getTouristAttractionDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_tourist_attraction',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};
+
+//在建工地详情
+export const getConstructionSitesDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_under_construction_sites',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};
+
+//堆场详情
+export const getYardSitesDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_yard_sites',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};
+
+//客运站详情
+export const getStationInfoDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_station_info',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};
+
+//重大危险源详情
+export const getMajorHazardSourceDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_major_hazard_source',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};
+
+//建筑工程详情
+export const getBuildingProjectDetails = (id: string) => {
+  return request({
+    url: '/api/gateway/v2/get_point_info_building_project_info',
+    method: 'post',
+    data: {
+      query: {
+        id: id
+      }
+    }
+  });
+};

+ 0 - 0
src/assets/images/dotIcon/客运站.png → src/assets/images/dotIcon/24_stationinfo.png


+ 0 - 0
src/assets/images/dotIcon/客运站-高亮.png → src/assets/images/dotIcon/24_stationinfo_hover.png


+ 0 - 0
src/assets/images/dotIcon/堆场.png → src/assets/images/dotIcon/25_yardsites.png


+ 0 - 0
src/assets/images/dotIcon/堆场-高亮.png → src/assets/images/dotIcon/25_yardsites_hover.png


+ 28 - 4
src/components/Map/index.vue

@@ -32,8 +32,14 @@ import {
   getSchoolDetails,
   getWaterloggedRoadsDetails,
   getShipRealtilmePositionDetails,
-  getPeratingEenterpriseDetails,
-  getUAVDetails, getRainbowDetails
+  getUAVDetails,
+  getRainbowDetails,
+  getTouristAttractionDetails,
+  getConstructionSitesDetails,
+  getYardSitesDetails,
+  getStationInfoDetails,
+  getMajorHazardSourceDetails,
+  getBuildingProjectDetails
 } from "@/api/globalMap/spatialAnalysis";
 import { pointDetailTemplate } from '@/views/globalMap/data/mapData';
 import ElementResizeDetectorMaker from 'element-resize-detector';
@@ -164,7 +170,13 @@ const handlePointDetails = (data) => {
     '13': getChemicalcompanyDetails,
     '14': getChemicalcompanyDetails,
     '15': getUAVDetails,
-    '16': getRainbowDetails
+    '16': getRainbowDetails,
+    '21': getBuildingProjectDetails,
+    '23': getMajorHazardSourceDetails,
+    '24': getStationInfoDetails,
+    '25': getYardSitesDetails,
+    '26': getTouristAttractionDetails,
+    '27': getConstructionSitesDetails
   };
   let titleList = {
     '1': '专家信息',
@@ -182,7 +194,19 @@ const handlePointDetails = (data) => {
     '13': '危险化学品使用企业(使用许可)信息',
     '14': '化工企业(不发使用许可)信息',
     '15': '无人机信息',
-    '16': '雨窝点'
+    '16': '雨窝点',
+    '17': '地质灾害隐患点',
+    '18': '矿山施工',
+    '19': '工矿商贸',
+    '20': '气象灾害防御重点单位',
+    '21': '建筑工程',
+    '22': '储罐',
+    '23': '重大危险源',
+    '24': '客运站',
+    '25': '堆场',
+    '26': '旅游场所',
+    '27': '在建工地',
+    '28': '运输资源'
   };
   let method = methodList[data.dataType];
   let title = !!titleList[data.dataType] ? titleList[data.dataType] : '信息';

+ 0 - 17
src/types/components.d.ts

@@ -17,13 +17,9 @@ declare module 'vue' {
     Dialog: typeof import('./../components/Dialog/index.vue')['default']
     DictTag: typeof import('./../components/DictTag/index.vue')['default']
     Editor: typeof import('./../components/Editor/index.vue')['default']
-    ElAnchor: typeof import('element-plus/es')['ElAnchor']
-    ElAnchorLink: typeof import('element-plus/es')['ElAnchorLink']
     ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb']
     ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem']
     ElButton: typeof import('element-plus/es')['ElButton']
-    ElCard: typeof import('element-plus/es')['ElCard']
-    ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
     ElCol: typeof import('element-plus/es')['ElCol']
     ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
     ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
@@ -44,28 +40,17 @@ declare module 'vue' {
     ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
     ElOption: typeof import('element-plus/es')['ElOption']
     ElPagination: typeof import('element-plus/es')['ElPagination']
-    ElPopover: typeof import('element-plus/es')['ElPopover']
-    ElRadio: typeof import('element-plus/es')['ElRadio']
-    ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
     ElRow: typeof import('element-plus/es')['ElRow']
     ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
     ElSelect: typeof import('element-plus/es')['ElSelect']
-    ElSkeleton: typeof import('element-plus/es')['ElSkeleton']
-    ElSkeletonItem: typeof import('element-plus/es')['ElSkeletonItem']
     ElSlider: typeof import('element-plus/es')['ElSlider']
-    ElStep: typeof import('element-plus/es')['ElStep']
-    ElSteps: typeof import('element-plus/es')['ElSteps']
     ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
     ElSwitch: typeof import('element-plus/es')['ElSwitch']
     ElTable: typeof import('element-plus/es')['ElTable']
     ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
-    ElTabPane: typeof import('element-plus/es')['ElTabPane']
-    ElTabs: typeof import('element-plus/es')['ElTabs']
     ElTimeline: typeof import('element-plus/es')['ElTimeline']
     ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem']
     ElTooltip: typeof import('element-plus/es')['ElTooltip']
-    ElTree: typeof import('element-plus/es')['ElTree']
-    ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect']
     ElUpload: typeof import('element-plus/es')['ElUpload']
     FileUpload: typeof import('./../components/FileUpload/index.vue')['default']
     FooterSection: typeof import('./../components/FooterSection/index.vue')['default']
@@ -76,7 +61,6 @@ declare module 'vue' {
     HikvisionPlayer: typeof import('./../components/HKVideo/hikvision-player.vue')['default']
     HKVideo: typeof import('./../components/HKVideo/index.vue')['default']
     IconSelect: typeof import('./../components/IconSelect/index.vue')['default']
-    IEpUploadFilled: typeof import('~icons/ep/upload-filled')['default']
     IFrame: typeof import('./../components/iFrame/index.vue')['default']
     ImagePreview: typeof import('./../components/ImagePreview/index.vue')['default']
     ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default']
@@ -108,7 +92,6 @@ declare module 'vue' {
     VideoContainer: typeof import('./../components/HKVideo/video-container.vue')['default']
     VideoContainer2: typeof import('./../components/HKVideo/video-container2.vue')['default']
     YMap: typeof import('./../components/Map/YMap.vue')['default']
-    YMapold: typeof import('./../components/Map/YMapold.vue')['default']
     YztMap: typeof import('./../components/Map/YztMap/index.vue')['default']
   }
   export interface ComponentCustomProperties {

+ 13 - 6
src/views/globalMap/RightMenu/LayerAnalysis.vue

@@ -27,20 +27,21 @@
 <script lang="ts" setup>
 import { PointType } from '@/api/globalMap/type';
 import {
-  getChemicalType,
+  getBuildingProjectType,
+  getChemicalType, getConstructionSitesType,
   getCountPointInfo,
   getCountPointInfoAreaList,
   getDroneType,
   getEmergencyExpertType,
   getEmergencyShelterType,
   getGasolineType,
-  getHospitalType,
+  getHospitalType, getMajorHazardSourceType,
   getMiningType,
   getRescueMateriaType,
   getSchoolType,
-  getShipType,
-  getWaterloggedRoadsType
-} from '@/api/globalMap/layerAnalysis';
+  getShipType, getStationInfoType, getTouristAttractionType,
+  getWaterloggedRoadsType, getYardSitesType
+} from "@/api/globalMap/layerAnalysis";
 import { option4, option5 } from './echartOptions';
 import BigNumber from 'bignumber.js';
 
@@ -177,7 +178,13 @@ watch(
         '12': getChemicalType,
         '13': getChemicalType,
         '14': getChemicalType,
-        '15': getDroneType
+        '15': getDroneType,
+        '21': getBuildingProjectType,
+        '23': getMajorHazardSourceType,
+        '24': getStationInfoType,
+        '25': getYardSitesType,
+        '26': getTouristAttractionType,
+        '27': getConstructionSitesType
       };
       let method = methodList[dataList.value[0].dataType];
       if (!method) return;

+ 178 - 0
src/views/globalMap/data/mapData.ts

@@ -4201,6 +4201,21 @@ export const iconList = {
     image: getImageUrl('15_UAV.png'),
     imageHover: getImageUrl('15_UAV_hover.png'),
     size: [40, 40]
+  },
+  '16': {
+    image: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png',
+    imageHover: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png',
+    size: [19, 31]
+  },
+  '24': {
+    image: getImageUrl('24_stationinfo.png'),
+    imageHover: getImageUrl('24_stationinfo_hover.png'),
+    size: [40, 40]
+  },
+  '25': {
+    image: getImageUrl('25_yardsites.png'),
+    imageHover: getImageUrl('25_yardsites_hover.png'),
+    size: [40, 40]
   }
 };
 
@@ -4561,6 +4576,169 @@ export const pointDetailTemplate = {
     longitude: '经度',
     latitude: '纬度'
   },
+
+  '17': {
+    id: '编号',
+    name: '名称',
+    location: '位置',
+    district: '所属区县',
+    longitude: '经度',
+    latitude: '纬度'
+  },
+  '21': {
+    prjcode: '项目编号',
+    prjname: '项目名称',
+    prjnum: '投资项目在线审批监管平台统一项目代码',
+    letternum: '立项文号',
+    prjlevel: '立项级别',
+    issueby: '立项批复机关',
+    dtissue: '立项批复时间',
+    prjtypename: '项目类型',
+    cityid: '项目所在地区编码(地市)',
+    cityname: '项目所在地区名称(地市)',
+    countyid: '项目所在地区编码(县区)',
+    countyname: '项目所在地区名称(县区)',
+    address: '项目地址',
+    longitude: '经度',
+    latitude: '纬度',
+    prjsizedes: '建设规模',
+    allinvest: '总投资(万元)',
+    allarea: '总面积(平方米)',
+    alllength: '总长度(米)',
+    allspan: '总跨度(米)',
+    prjpropertyname: '建设性质',
+    prjusefor: '工程用途',
+    dtplans: '计划开工日期',
+    dtplane: '计划竣工日期',
+    ownername: '建设单位',
+    ownerid: '建设单位统一信用代码',
+    zjlygjzfczzjtz: '资金来源-各级政府财政资金投资',
+    zjlygyqyzjtz: '资金来源-国有企业资金投资',
+    zjlygjrz: '资金来源-国家融资',
+    zjlysygjzzhzwgzfzj: '资金来源-使用国际组织或外国',
+    zjlyjtjjzztz: '资金来源-集体经济组织投资',
+    zjlywstz: '资金来源-外商(国)投资',
+    zjlyggttz: '资金来源-港澳台投资',
+    zjlysytz: '资金来源-私(民)营投资',
+    zjlyqtzjly: '资金来源-其他资金来源'
+  },
+  '23': {
+    sourceName: '重大危险源名称',
+    useTime: '投用时间',
+    chemicalPark: '化工业园区',
+    controlMethod: '厂区边界500米内人数',
+    protectTarget: '重点防护目标',
+    accident: '近三年事故情况描述',
+    powerTreeCodes: '地市树编码',
+    uniteCode: '统一社会信用代码',
+    device: '设施及主要装置',
+    dangerGrade: '重大危险源级别',
+    address: '详细地址',
+    rvalue: 'R值',
+    area: '区县',
+    longitude: '经度',
+    latitude: '纬度'
+  },
+  '24': {
+    stationcode: '客运站代码',
+    stationstandardcode: '客运站部标代码',
+    stationname: '客运站名称',
+    stationenglishname: '客运站英文名称',
+    stationabb: '客运站简称',
+    stationalternativename: '客运站别称',
+    ownerunitcode: '组织机构代码',
+    ownerunitname: '业主单位名称',
+    businessoperatorsencode: '经营业户代码',
+    businessoperators: '经营业户名称',
+    operationpermitword: '经营许可证字',
+    operationpermitnum: '经营许可证号',
+    operationstatus: '经营状态',
+    contactperson: '联系人',
+    contactphonenum: '联系电话',
+    stationtype: '客运站类别',
+    stationgrade: '客运站级别',
+    stationgradeevaluatedate: '站级评定日期',
+    districtcode: '行政区划代码',
+    inprovincename: '所在省',
+    incityname: '所在市',
+    incountyname: '所在区(县)',
+    townorstreetname: '所在镇(街)',
+    address: '详细地址',
+    longitude: '经度',
+    latitude: '纬度',
+    positivepicture: '正面45度角照片',
+    sidepicture: '侧面45度角照片',
+    parkingareamap: '车位图',
+    whethernetworking: '是否联网',
+    whethersuppphoneorder: '联网售票取票窗口',
+    whethersuppphoneorder: '是否支持电话订票',
+    bookingtelephonenum: '订票电话',
+    getticketphonenum: '取票电话',
+    servicetype: '服务类型',
+    onlinebookticket: '是否支持网上订票',
+    bookingwebsiteurl: '订票网址',
+    onlinegetticket: '是否支持网上取票',
+    paymode: '支付方式',
+    serviceduration: '营业时间',
+    servicedepartment: '对外服务部门',
+    servicephonenum: '对外服务电话',
+    fax: '传真',
+    mailbox: '邮箱',
+    complaintphonenum: '投诉电话',
+    website: '门户网站网址',
+    servicesdistrictandscope: '进站班车服务地域及范围',
+    mainlines: '主要客运线路',
+    maxvehiclenum: '最大安排车辆总数',
+    maxdailyshift: '最大安排日发班次',
+    bustransitinfo: '公交换乘信息',
+    remotegetticketstationlist: '异地取票车站列表',
+    getremotestationlist: '取异地车票站列表'
+  },
+  '25': {
+    name: '堆场名称',
+    address: '地址',
+    longitude: '经度',
+    latitude: '纬度',
+    administrative_code: '行政区域编码',
+    district: '所属区县',
+    town: '所属镇街',
+    material_type: '堆物种类',
+    yard_level: '堆场级别',
+    max_height: '最大高度',
+    wind_protection_level: '防风雨级别',
+    contact_name: '联系人姓名',
+    contact_phone: '联系人手机',
+    survey_date: '调查日期',
+    remarks: '备注'
+  },
+  '26': {
+    jqmc: '景区名称',
+    szcs: '所在城市',
+    dj: '等级',
+    pdsj: '判定时间',
+    area: '区县',
+    longitude: '经度',
+    latitude: '纬度'
+  },
+  '27': {
+    name: '在建工地名称',
+    address: '地址',
+    longitude: '经度',
+    latitude: '纬度',
+    completion_date: '完工时间',
+    building_type: '建筑类型',
+    construction_area: '建筑面积',
+    hazard_type: '隐患灾害类型',
+    district: '所属区县',
+    town: '所属镇街',
+    area_code: '地区编码',
+    supervisory_authority: '主管部门',
+    construction_company: '建设单位',
+    safety_officer: '安全责任人',
+    safety_officer_phone: '安全责任人手机号',
+    survey_date: '调查日期',
+    remarks: '备注'
+  },
 };
 
 export const creatDetailTemplate = (data, type) => {};