diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/DataSourceConstant.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/DataSourceConstant.java
index 8ae93cc5d4..f02e5faa46 100644
--- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/DataSourceConstant.java
+++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/DataSourceConstant.java
@@ -37,4 +37,5 @@ public interface DataSourceConstant {
 
     String EPMET_T_DUCK = "epmettduck";
     String EPMETTDUCK="epmettduck";
+    String EPMET_HEART="heart";
 }
diff --git a/epmet-module/data-aggregator/data-aggregator-server/pom.xml b/epmet-module/data-aggregator/data-aggregator-server/pom.xml
index 1246e8e2e0..4cc34ba06f 100644
--- a/epmet-module/data-aggregator/data-aggregator-server/pom.xml
+++ b/epmet-module/data-aggregator/data-aggregator-server/pom.xml
@@ -242,6 +242,13 @@
                 epmet_tduck_user
                 EpmEt-db-UsEr
 
+                
+                
+                    
+                
+                epmet_heart_user
+                EpmEt-db-UsEr
+
                 
                 0
                 192.168.1.140
@@ -367,6 +374,12 @@
                 epmet_tduck_user
                 EpmEt-db-UsEr
 
+                
+                    
+                
+                epmet_heart_user
+                EpmEt-db-UsEr
+
                 
                 0
                 192.168.1.140
@@ -492,6 +505,13 @@
                 epmet
                 elink@833066
 
+                
+                
+                    
+                
+                epmet
+                elink@833066
+
                 
                 0
                 192.168.10.150
@@ -617,6 +637,13 @@
                 epmet_tduck
                 EpmEt-db-UsEr
 
+                
+                
+                    
+                
+                epmet_heart_user
+                EpmEt-db-UsEr
+
                 
                 0
                 r-m5ez3n1j0qc3ykq2ut.redis.rds.aliyuncs.com
diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/heart/impl/HeartServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/heart/impl/HeartServiceImpl.java
index 6774ae9b0d..351bfca067 100644
--- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/heart/impl/HeartServiceImpl.java
+++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/heart/impl/HeartServiceImpl.java
@@ -1,6 +1,8 @@
 package com.epmet.dataaggre.service.heart.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.epmet.commons.dynamic.datasource.annotation.DataSource;
+import com.epmet.dataaggre.constant.DataSourceConstant;
 import com.epmet.dataaggre.dao.heart.IcCommunitySelfOrganizationDao;
 import com.epmet.dataaggre.entity.heart.IcCommunitySelfOrganizationEntity;
 import com.epmet.dataaggre.service.heart.HeartService;
@@ -12,6 +14,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.List;
 
+@DataSource(value = DataSourceConstant.EPMET_HEART)
 @Service
 public class HeartServiceImpl implements HeartService {
 
diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/CoverageServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/CoverageServiceImpl.java
index bd3456f43b..5e9fd31621 100644
--- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/CoverageServiceImpl.java
+++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/impl/CoverageServiceImpl.java
@@ -11,6 +11,7 @@ import com.epmet.dataaggre.dto.govorg.result.CoverageAnalisisDataListResultDTO;
 import com.epmet.dataaggre.entity.epmetuser.IcResiUserEntity;
 import com.epmet.dataaggre.entity.govorg.IcCityManagementEntity;
 import com.epmet.dataaggre.entity.govorg.IcDangerousChemicalsEntity;
+import com.epmet.dataaggre.entity.govorg.IcHouseEntity;
 import com.epmet.dataaggre.entity.heart.IcCommunitySelfOrganizationEntity;
 import com.epmet.dataaggre.service.CoverageService;
 import com.epmet.dataaggre.service.epmetuser.IcResiService;
@@ -145,14 +146,26 @@ public class CoverageServiceImpl implements CoverageService {
             return resiEntities.stream().map(re -> {
                 // 使用楼栋的坐标补充居民的坐标信息
                 BuildingInfoCache resiBuilding = getBuildingInfo(re.getId(), re.getBuildId());
-                return new CoverageAnalisisDataListResultDTO(re.getId(), categoryKey, placeType, re.getName(), resiBuilding.getLatitude(), resiBuilding.getLongitude());
+                String buildingLatitude = null;
+                String buildingLongitude = null;
+                if (resiBuilding != null) {
+                    buildingLatitude = resiBuilding.getLatitude();
+                    buildingLongitude = resiBuilding.getLongitude();
+                }
+                return new CoverageAnalisisDataListResultDTO(re.getId(), categoryKey, placeType, re.getName(), buildingLatitude, buildingLongitude);
             }).collect(Collectors.toList());
         } else if (PLACE_TYPE_SPECIAL_RESI.equals(placeType)) {
             // 特殊人群
             List resiInfos = icResiService.listSpecialResisBySpecialType(customerId, agencyId, staffOrgIds, categoryKey, search, pageNo, pageSize, isPage);
             return resiInfos.stream().map(re -> {
                 BuildingInfoCache resiBuilding = getBuildingInfo(re.getId(), re.getBuildId());
-                return new CoverageAnalisisDataListResultDTO(re.getId(), categoryKey, placeType, re.getName(), resiBuilding.getLatitude(), resiBuilding.getLongitude());
+                String buildingLatitude = null;
+                String buildingLongitude = null;
+                if (resiBuilding != null) {
+                    buildingLatitude = resiBuilding.getLatitude();
+                    buildingLongitude = resiBuilding.getLongitude();
+                }
+                return new CoverageAnalisisDataListResultDTO(re.getId(), categoryKey, placeType, re.getName(), buildingLatitude, buildingLongitude);
             }).collect(Collectors.toList());
         } else if (PLACE_TYPE_EVENT.equals(placeType)) {
             // 难点痛点 todo
@@ -181,8 +194,8 @@ public class CoverageServiceImpl implements CoverageService {
 
         } else if (PLACE_TYPE_GROUP_RENT.equals(placeType)) {
             // 群租房。出租的房屋,住的人口超过5人属于群租房(是个规定)
-
-
+            List icHouseEntities = orgCoverageService.searchGroupRentHouseEntities(customerId, staffOrgIds, search, isPage, pageNo, pageSize);
+            //icHouseEntities
 
         } else if (PLACE_TYPE_PUBLIC_SERVICE.equals(placeType)) {
             // 公共服务
@@ -193,7 +206,7 @@ public class CoverageServiceImpl implements CoverageService {
 
 
         }
-        return null;
+        return new ArrayList<>();
     }
 
     /**
diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/bootstrap.yml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/bootstrap.yml
index 9df581e38f..aa857a1eaf 100644
--- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/bootstrap.yml
@@ -156,6 +156,11 @@ dynamic:
       url: @datasource.druid.epmettduck.url@
       username: @datasource.druid.epmettduck.username@
       password: @datasource.druid.epmettduck.password@
+    heart:
+      driver-class-name: com.mysql.cj.jdbc.Driver
+      url: @datasource.druid.heart.url@
+      username: @datasource.druid.heart.username@
+      password: @datasource.druid.heart.password@
 feign:
   hystrix:
     enabled: true