Merge remote-tracking branch 'websoft/master'

This commit is contained in:
2026-07-21 13:18:39 +08:00
4 changed files with 25 additions and 6 deletions

View File

@@ -111,6 +111,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', country, city) AS region_name,
NULL AS region_code,
city AS detail_address,
longitude,
latitude
@@ -124,6 +125,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', province_name, city_name) AS region_name,
city_code AS region_code,
CONCAT_WS('', province_name, city_name, name) AS detail_address,
longitude,
latitude
@@ -137,6 +139,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', province_name, city_name) AS region_name,
city_code AS region_code,
CONCAT_WS('', province_name, city_name, name) AS detail_address,
longitude,
latitude
@@ -152,6 +155,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', country, city) AS region_name,
NULL AS region_code,
city AS detail_address,
longitude,
latitude
@@ -170,6 +174,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', province_name, city_name) AS region_name,
city_code AS region_code,
CONCAT_WS('', province_name, city_name, name) AS detail_address,
longitude,
latitude
@@ -188,6 +193,7 @@
code AS site_code,
name AS address_name,
CONCAT_WS('', province_name, city_name) AS region_name,
city_code AS region_code,
CONCAT_WS('', province_name, city_name, name) AS detail_address,
longitude,
latitude
@@ -202,6 +208,7 @@
</when>
<otherwise>
SELECT NULL AS source_id, NULL AS site_code, NULL AS address_name, NULL AS region_name,
NULL AS region_code,
NULL AS detail_address, NULL AS longitude, NULL AS latitude
WHERE 1 = 0
</otherwise>

View File

@@ -64,6 +64,7 @@ public class CommonAddressServiceImpl extends BaseServiceImpl<CommonAddressMappe
private static final int ADDRESS_CODE_LENGTH = 5;
private static final int NAME_MAX_LENGTH = 100;
private static final int DETAIL_MAX_LENGTH = 255;
private static final int REGION_CODE_MAX_LENGTH = 32;
private static final int REGION_MAX_LENGTH = 100;
private static final int CONTACT_MAX_LENGTH = 50;
private static final int PHONE_MAX_LENGTH = 30;
@@ -209,6 +210,7 @@ public class CommonAddressServiceImpl extends BaseServiceImpl<CommonAddressMappe
address.setSourceId(source.getSourceId());
address.setSiteCode(source.getSiteCode());
address.setDetailAddress(source.getDetailAddress());
address.setRegionCode(source.getRegionCode());
address.setRegionName(source.getRegionName());
address.setLongitude(scale(source.getLongitude()));
address.setLatitude(scale(source.getLatitude()));
@@ -255,8 +257,18 @@ public class CommonAddressServiceImpl extends BaseServiceImpl<CommonAddressMappe
if (Func.isEmpty(address.getDetailAddress())) {
throw new ServiceException("详细地址不能为空");
}
if (Func.isEmpty(address.getRegionName())) {
throw new ServiceException("行政区划不能为空");
}
if (Func.isEmpty(address.getLongitude())) {
throw new ServiceException("经度不能为空");
}
if (Func.isEmpty(address.getLatitude())) {
throw new ServiceException("纬度不能为空");
}
validateLength(address.getAddressName(), NAME_MAX_LENGTH, "地址名称不能超过100字");
validateLength(address.getDetailAddress(), DETAIL_MAX_LENGTH, "详细地址不能超过255字");
validateLength(address.getRegionCode(), REGION_CODE_MAX_LENGTH, "行政区划编码不能超过32字");
validateLength(address.getRegionName(), REGION_MAX_LENGTH, "行政区划不能超过100字");
validateLength(address.getContactName(), CONTACT_MAX_LENGTH, "联系人不能超过50字");
validateLength(address.getContactPhone(), PHONE_MAX_LENGTH, "联系方式不能超过30字");