获取MDM省市数据
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
package com.cool.store.service;
|
||||
|
||||
import com.cool.store.entity.MDMAreaDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface MDMAreaService {
|
||||
|
||||
/**
|
||||
* 获取省级数据
|
||||
*/
|
||||
List<MDMAreaDO> getProvince();
|
||||
|
||||
/**
|
||||
* 获取子级地区
|
||||
* @param code 父级 code
|
||||
*/
|
||||
List<MDMAreaDO> getSonArea(String code);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package com.cool.store.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.RedisConstant;
|
||||
import com.cool.store.entity.MDMAreaDO;
|
||||
import com.cool.store.mapper.MdmAreaMapper;
|
||||
import com.cool.store.service.MDMAreaService;
|
||||
import com.cool.store.utils.RedisUtilPool;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class MDMAreaServiceImpl implements MDMAreaService {
|
||||
|
||||
@Autowired
|
||||
private RedisUtilPool redisUtilPool;
|
||||
|
||||
@Autowired
|
||||
private MdmAreaMapper mdmAreaMapper;
|
||||
|
||||
/**
|
||||
* 获取省级数据
|
||||
*/
|
||||
@Override
|
||||
public List<MDMAreaDO> getProvince() {
|
||||
String provincesJson = redisUtilPool.getString(RedisConstant.MDM_AREA_PROVINCE);
|
||||
if (StringUtils.isNotEmpty(provincesJson)) {
|
||||
return (List<MDMAreaDO>) JSONObject.parseObject(provincesJson, List.class);
|
||||
}
|
||||
List<MDMAreaDO> areaDOList = mdmAreaMapper.getProvince();
|
||||
//过期时间三小时
|
||||
redisUtilPool.setString(RedisConstant.MDM_AREA_PROVINCE, JSONObject.toJSONString(areaDOList), 3 * 60 * 60);
|
||||
return areaDOList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取子级地区
|
||||
* @param code 父级 code
|
||||
*/
|
||||
@Override
|
||||
public List<MDMAreaDO> getSonArea(String code) {
|
||||
String provincesJson = redisUtilPool.getString(RedisConstant.MDM_AREA_OTHERS);
|
||||
if (StringUtils.isNotEmpty(provincesJson)) {
|
||||
return (List<MDMAreaDO>) JSONObject.parseObject(provincesJson, List.class);
|
||||
}
|
||||
List<MDMAreaDO> areaDOList = mdmAreaMapper.getSonArea(code);
|
||||
//过期时间三小时
|
||||
redisUtilPool.setString(RedisConstant.MDM_AREA_PROVINCE, JSONObject.toJSONString(areaDOList), 3 * 60 * 60);
|
||||
return areaDOList;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user