记得上下班打卡 | git大法好,push需谨慎

Commit 2db92a23 authored by 张国柄's avatar 张国柄

~收货地址扩展(针对旧版本、历史数据兼容处理:添加、查询);

parent f572b6be
...@@ -4,6 +4,7 @@ public class AdamRedisConst { ...@@ -4,6 +4,7 @@ public class AdamRedisConst {
public static final String PREFIX = "adam:"; public static final String PREFIX = "adam:";
public static final String LIB_DICT_LOCATE_MOBILE = PREFIX.concat("lib_dict:locate_mobile:"); public static final String LIB_DICT_LOCATE_MOBILE = PREFIX.concat("lib_dict:locate_mobile:");
public static final String LIB_DICT_ADCODE_REGION = PREFIX.concat("lib_dict:adcode_region:");
public static final String VALID_SMS_CODE_MOBILE = PREFIX.concat("valid:sms:code:mobile"); public static final String VALID_SMS_CODE_MOBILE = PREFIX.concat("valid:sms:code:mobile");
......
...@@ -410,6 +410,26 @@ public class AdamRdmService { ...@@ -410,6 +410,26 @@ public class AdamRdmService {
// if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos); // if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
// } // }
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (!CollectionUtils.isEmpty(vos)) {// TODO: 2021/12/1 兼容处理老版本,识别行政码并记录(历史数据处理完,删除该逻辑)
for (int i = 0; i < vos.size(); i++) {
AdamAddressesVo r = vos.get(i);
if (StringUtils.isEmpty(r.getCountyId())) {
String adcodeStr = (String) redisUtil.get(AdamRedisConst.LIB_DICT_ADCODE_REGION.concat(r.getProvince()).concat(r.getCity()).concat(r.getCounty()));
if (!StringUtils.isEmpty(adcodeStr)) {
String[] adcodeArr = adcodeStr.split("-");
switch (adcodeArr.length) {
case 3:
r.setProvinceId(adcodeArr[2]);
case 2:
r.setCityId(adcodeArr[1]);
case 1:
r.setCountyId(adcodeArr[0]);
}
}
}
}
}
return vos; return vos;
} }
...@@ -417,6 +437,20 @@ public class AdamRdmService { ...@@ -417,6 +437,20 @@ public class AdamRdmService {
if (null == vos) { if (null == vos) {
vos = ObjectUtil.getAdamAddressesVoArrayList(); vos = ObjectUtil.getAdamAddressesVoArrayList();
} }
if (org.apache.commons.lang3.StringUtils.isBlank(vo.getCountyId())) {// 兼容处理老版本,识别行政码并记录
String adcodeStr = (String) redisUtil.get(AdamRedisConst.LIB_DICT_ADCODE_REGION.concat(vo.getProvince()).concat(vo.getCity()).concat(vo.getCounty()));
if (!StringUtils.isEmpty(adcodeStr)) {
String[] adcodeArr = adcodeStr.split("-");
switch (adcodeArr.length) {
case 3:
vo.setProvinceId(adcodeArr[2]);
case 2:
vo.setCityId(adcodeArr[1]);
case 1:
vo.setCountyId(adcodeArr[0]);
}
}
}
vos.add(vo); vos.add(vo);
return redisUtil.set(AdamRedisConst.INFO_ADDRESSES + uid, vos); return redisUtil.set(AdamRedisConst.INFO_ADDRESSES + uid, vos);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment