行政区接口

This commit is contained in:
张松
2025-03-11 15:17:00 +08:00
parent efb1ff7f75
commit 91da9aa0de
6 changed files with 103 additions and 0 deletions

View File

@@ -7,4 +7,6 @@ import jakarta.validation.constraints.NotEmpty;
*/
public interface GeoService {
Object getAddress(@NotEmpty String lat, @NotEmpty String lng);
String district(String keywords, String subdistrict);
}

View File

@@ -0,0 +1,42 @@
package com.czg.account.vo;
import lombok.Data;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
import java.util.List;
/**
* 行政区域返回vo
*/
@Data
public class DistrictVo {
private Object citycode;
private String adcode;
private String name;
private String center;
private String level;
private List<DistrictVo> districts;
public String getNameAsPY() {
return getPinYin(name);
}
public String getPinYin(String name){
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
// 设置声调类型为WITH_TONE_MARK
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
// 设置拼音输出的大小写格式为小写
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
String pinyin = "";
try {
pinyin = PinyinHelper.toHanYuPinyinString(name,format , "", false);
} catch (BadHanyuPinyinOutputFormatCombination e) {
return pinyin;
}
return pinyin;
}
}