diff --git a/internal-common/src/main/java/com/mashibing/internalcommon/constant/AmapConfigConstants.java b/internal-common/src/main/java/com/mashibing/internalcommon/constant/AmapConfigConstants.java index 7695afe..dee9be6 100644 --- a/internal-common/src/main/java/com/mashibing/internalcommon/constant/AmapConfigConstants.java +++ b/internal-common/src/main/java/com/mashibing/internalcommon/constant/AmapConfigConstants.java @@ -2,7 +2,14 @@ package com.mashibing.internalcommon.constant; public class AmapConfigConstants { + /** + * 行车路径规划 + */ public static final String DIRECTION_URL = "https://restapi.amap.com/v3/direction/driving"; + /** + * 行政区域查询 + */ + public static final String DISTRICT_URL = "https://restapi.amap.com/v3/config/district"; /* *路径规划 json key值 */ diff --git a/internal-common/src/main/java/com/mashibing/internalcommon/dto/DicDistrict.java b/internal-common/src/main/java/com/mashibing/internalcommon/dto/DicDistrict.java new file mode 100644 index 0000000..e86fb25 --- /dev/null +++ b/internal-common/src/main/java/com/mashibing/internalcommon/dto/DicDistrict.java @@ -0,0 +1,13 @@ +package com.mashibing.internalcommon.dto; + +import lombok.Data; + +@Data +public class DicDistrict { + + private String addressCode; + private String addressName; + private String parentAddressCode; + private Integer Level; + +} diff --git a/service-map/pom.xml b/service-map/pom.xml index 34c015e..59c5a3b 100644 --- a/service-map/pom.xml +++ b/service-map/pom.xml @@ -22,6 +22,15 @@ spring-cloud-starter-alibaba-nacos-discovery + + com.baomidou + mybatis-plus-boot-starter + 3.4.1 + + + mysql + mysql-connector-java + \ No newline at end of file diff --git a/service-map/src/main/java/com/mashibing/servicemap/ServiceMapApplication.java b/service-map/src/main/java/com/mashibing/servicemap/ServiceMapApplication.java index baf0c4f..ae92ca5 100644 --- a/service-map/src/main/java/com/mashibing/servicemap/ServiceMapApplication.java +++ b/service-map/src/main/java/com/mashibing/servicemap/ServiceMapApplication.java @@ -1,5 +1,6 @@ package com.mashibing.servicemap; +import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; @@ -8,6 +9,7 @@ import org.springframework.web.client.RestTemplate; @SpringBootApplication @EnableDiscoveryClient +@MapperScan("com.mashibing.servicemap.mapper") public class ServiceMapApplication { public static void main(String[] args) { diff --git a/service-map/src/main/java/com/mashibing/servicemap/controller/DicDistrictController.java b/service-map/src/main/java/com/mashibing/servicemap/controller/DicDistrictController.java new file mode 100644 index 0000000..b5459f2 --- /dev/null +++ b/service-map/src/main/java/com/mashibing/servicemap/controller/DicDistrictController.java @@ -0,0 +1,24 @@ +package com.mashibing.servicemap.controller; + +import com.mashibing.internalcommon.constant.AmapConfigConstants; +import com.mashibing.internalcommon.dto.ResponseResult; +import com.mashibing.servicemap.service.DicDistrictService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class DicDistrictController { + + @Autowired + private DicDistrictService dicDistrictService; + + @GetMapping("/dic-district") + public ResponseResult dicDistrict(String keywords){ + + + return dicDistrictService.initDicDistrict(keywords); + } + +} diff --git a/service-map/src/main/java/com/mashibing/servicemap/controller/TestController.java b/service-map/src/main/java/com/mashibing/servicemap/controller/TestController.java index 1c91498..0aaf019 100644 --- a/service-map/src/main/java/com/mashibing/servicemap/controller/TestController.java +++ b/service-map/src/main/java/com/mashibing/servicemap/controller/TestController.java @@ -1,8 +1,15 @@ package com.mashibing.servicemap.controller; +import com.mashibing.internalcommon.dto.DicDistrict; +import com.mashibing.servicemap.mapper.DicDistrictMapper; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + @RestController public class TestController { @@ -11,4 +18,16 @@ public class TestController { return "service map"; } + @Autowired + private DicDistrictMapper mapper; + + @GetMapping("/test-map") + public String testMap() { + Map map = new HashMap<>(); + map.put("address_code", "110000"); + List dicDistricts = mapper.selectByMap(map); + System.out.println(dicDistricts); + return "test-map"; + } + } diff --git a/service-map/src/main/java/com/mashibing/servicemap/mapper/DicDistrictMapper.java b/service-map/src/main/java/com/mashibing/servicemap/mapper/DicDistrictMapper.java new file mode 100644 index 0000000..2d79b04 --- /dev/null +++ b/service-map/src/main/java/com/mashibing/servicemap/mapper/DicDistrictMapper.java @@ -0,0 +1,10 @@ +package com.mashibing.servicemap.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mashibing.internalcommon.dto.DicDistrict; +import org.springframework.stereotype.Repository; + +@Repository +public interface DicDistrictMapper extends BaseMapper { + +} diff --git a/service-map/src/main/java/com/mashibing/servicemap/remote/MapDicDistrictClient.java b/service-map/src/main/java/com/mashibing/servicemap/remote/MapDicDistrictClient.java new file mode 100644 index 0000000..15b116f --- /dev/null +++ b/service-map/src/main/java/com/mashibing/servicemap/remote/MapDicDistrictClient.java @@ -0,0 +1,40 @@ +package com.mashibing.servicemap.remote; + +import com.mashibing.internalcommon.constant.AmapConfigConstants; +import com.mashibing.internalcommon.dto.ResponseResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.web.client.RestTemplate; + +@Service +public class MapDicDistrictClient { + + @Value("${amap.key}") + private String amapKey; + + @Autowired + private RestTemplate restTemplate; + + + // 获取 第三方url 结果 + public String dicDistrict(String keywords){ + + // 拼接 请求url + StringBuilder url = new StringBuilder(AmapConfigConstants.DISTRICT_URL); + url.append("?"); + url.append("keywords="+keywords); + url.append("&"); + url.append("subdistrict=3"); + url.append("&"); + url.append("key="+amapKey); + System.out.println("url = " + url); + + // 发起 结果拉取请求 + ResponseEntity forEntity = restTemplate.getForEntity(url.toString(), String.class); + + return forEntity.toString(); + } + +} diff --git a/service-map/src/main/java/com/mashibing/servicemap/service/DicDistrictService.java b/service-map/src/main/java/com/mashibing/servicemap/service/DicDistrictService.java new file mode 100644 index 0000000..55d7762 --- /dev/null +++ b/service-map/src/main/java/com/mashibing/servicemap/service/DicDistrictService.java @@ -0,0 +1,28 @@ +package com.mashibing.servicemap.service; + +import com.mashibing.internalcommon.constant.AmapConfigConstants; +import com.mashibing.internalcommon.dto.ResponseResult; +import com.mashibing.servicemap.remote.MapDicDistrictClient; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.web.client.RestTemplate; + +@Service +public class DicDistrictService { + + @Autowired + private MapDicDistrictClient mapDicDistrictClient; + + public ResponseResult initDicDistrict(String keywords){ + + // 请求第三方接口,拉取区域编号信息 + String dicDistrict = mapDicDistrictClient.dicDistrict(keywords); + System.out.println("\n\ndicDistrict = " + dicDistrict); + + // 解析 结果 + + return ResponseResult.success(); + } + +} diff --git a/service-map/src/main/resources/application.yml b/service-map/src/main/resources/application.yml index c965e15..4a0289d 100644 --- a/service-map/src/main/resources/application.yml +++ b/service-map/src/main/resources/application.yml @@ -7,5 +7,10 @@ spring: nacos: discovery: server-addr: localhost:8848 + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://localhost:3306/service-map?characterEncoding=utf-8&serverTimezone=GMT%2B8 + username: root + password: 123456 amap: - key: c5a197858bd6d73cf94cf49430fbe9d2 \ No newline at end of file + key: c5a197858bd6d73cf94cf49430fbe9d2