构建一个三级地址(思路)

本文介绍了构建一个地址匹配和补全的流程,包括基于名称的匹配、基于坐标的匹配和地址补全逻辑。首先尝试使用省、市、区县名称匹配地区ID,若失败则通过坐标匹配,匹配后仍缺失的地址信息会进行补全。同时,文章强调了数据同步、性能优化和错误处理的重要性,以及报警机制的实现。
摘要由CSDN通过智能技术生成

经过月GMV过亿项目考验过的方案

匹配场景:基于百度地图、高低地图获取的区划地址与地区表名称匹配

目录

构建一个地址匹配和补全的流程(基于名称的匹配和基于坐标的匹配):

1. 基于名称的匹配步骤一: 优先使用省、市、区县名称进行匹配。

2. 基于坐标的匹配步骤二: 如果基于名称的匹配失败,则使用坐标进行匹配。

3. 地址补全逻辑步骤三: 如果基于坐标的匹配后三级地址中仍有缺失,则进行补全。

注意


行政区划体系层级

  • 第一级:省
  • 第二集:地级市、自治州
  • 第三级:县市区(县级市)
  • 第四级:乡镇街

组装一个三级地址流程:


1. 优先使用省、市、区县名称进行匹配

输入:省、市、区县名称。
操作:省、市、区县分别查询Area地区表,尝试匹配这些名称到对应的地区明细。
结果:
如果三级地区(省、市、区县)都成功匹配到,则正常编辑地区,流程结束。
如果有一级或多级地区没有匹配到,使用坐标匹配。

2. 使用坐标进行匹配

输入:坐标点(经纬度)。
操作:
调用高德地图的地址解析API,获取该坐标点对应的省、市、区县、街道/乡镇。
将解析出的地址与Area地区表进行匹配。
结果:
如果成功匹配到地区ID,则使用该ID进行地区编辑。
如果匹配失败,则进入补全逻辑。
报警机制:如果基于坐标的匹配失败,触发报警机制。

3. 区划名称匹配Area逻辑

  在地区(区划名称)匹配Area地区表过程中,需要删除行政单位,按照层级货上级ID,依次like匹配Area表area_name、alias_1、alias_2,获取区划信息(为匹配到)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值