yun-zuoyi
wei.peng 6 years ago
commit 6e17755a7c

@ -306,7 +306,7 @@ public class WhiteController extends CoreBaseController {
if(needPlatformRes.intValue() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ if(needPlatformRes.intValue() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){
Map<Object, Object> platformResMap = Map<Object, Object> platformResMap =
redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + languageCode + ":" + CommonEnumUtil.SOFT_TYPE.IMPP.getValue());; redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + languageCode + ":" + CommonEnumUtil.SOFT_TYPE.IMPP.getValue());;
resourceMap.putAll(platformResMap);
} }
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(resourceMap); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(resourceMap);

@ -370,6 +370,7 @@ public class SysLocaleResourceController extends CoreBaseController {
public ResultBean incrementImportSysLocaleResource(@RequestParam("file") MultipartFile file){ public ResultBean incrementImportSysLocaleResource(@RequestParam("file") MultipartFile file){
try { try {
Long startTime = System.currentTimeMillis(); Long startTime = System.currentTimeMillis();
// 提取Excel数据
LOGGER.info("开始增量导入 {}",file.getOriginalFilename()); LOGGER.info("开始增量导入 {}",file.getOriginalFilename());
ExcelTool excelTool = new ExcelTool(entityManager, redisRes); ExcelTool excelTool = new ExcelTool(entityManager, redisRes);
List<SysLocaleResource> sysLocaleResourceList = excelTool.importData(file.getOriginalFilename(), file.getInputStream(), List<SysLocaleResource> sysLocaleResourceList = excelTool.importData(file.getOriginalFilename(), file.getInputStream(),
@ -378,13 +379,18 @@ public class SysLocaleResourceController extends CoreBaseController {
long excelToolExecuteTime = System.currentTimeMillis(); long excelToolExecuteTime = System.currentTimeMillis();
LOGGER.info("增量导入 数据量 {}, ExcelTool耗时 {}", sysLocaleResourceList.size(), excelToolExecuteTime - startTime); LOGGER.info("增量导入 数据量 {}, ExcelTool耗时 {}", sysLocaleResourceList.size(), excelToolExecuteTime - startTime);
// 初始化数据 // 数据去重并初始化
boolean d = false; Set<String> resourceSet = new HashSet<>();
if(d){ String resourceKey;
return ResultBean.success();
}
for (SysLocaleResource resource : sysLocaleResourceList) { for (SysLocaleResource resource : sysLocaleResourceList) {
// 资源去重
resourceKey = resource.getResourceKey() + resource.getLanguageCode();
if(resourceSet.contains(resourceKey)){
continue;
} else {
resourceSet.add(resourceKey);
}
// 初始化
resource.setId(getResourceKey(resource.getResourceKey(),resource.getLanguageCode())); resource.setId(getResourceKey(resource.getResourceKey(),resource.getLanguageCode()));
resource.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); resource.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
ConvertBean.modelInitialize(resource, AuthUtil.getSessionUser()); ConvertBean.modelInitialize(resource, AuthUtil.getSessionUser());
@ -393,6 +399,7 @@ public class SysLocaleResourceController extends CoreBaseController {
long deduplicationExecuteTime = System.currentTimeMillis(); long deduplicationExecuteTime = System.currentTimeMillis();
LOGGER.info("数据去重完毕, 数据去重耗时 {}", deduplicationExecuteTime - excelToolExecuteTime); LOGGER.info("数据去重完毕, 数据去重耗时 {}", deduplicationExecuteTime - excelToolExecuteTime);
// 分批导入
for (List<SysLocaleResource> resourceList : splitList(sysLocaleResourceList, 1000)) { for (List<SysLocaleResource> resourceList : splitList(sysLocaleResourceList, 1000)) {
sysLocaleResourceService.saveSysLocaleResource(resourceList); sysLocaleResourceService.saveSysLocaleResource(resourceList);
} }
@ -412,7 +419,7 @@ public class SysLocaleResourceController extends CoreBaseController {
} }
private Long getResourceKey(String resKey, String languageCode) { private Long getResourceKey(String resKey, String languageCode) {
if (redisRes.checkKey("CACHE_LANGUAGE:"+resKey,languageCode)) { if (redisRes.checkKey(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + resKey, languageCode)) {
LOGGER.info("查询到已存在资源 {}{}",resKey,languageCode); LOGGER.info("查询到已存在资源 {}{}",resKey,languageCode);
SysLocaleResource sysLocaleResource =sysLocaleResourceService.getSysLocaleResourceByLanguageCodeAndResKey( SysLocaleResource sysLocaleResource =sysLocaleResourceService.getSysLocaleResourceByLanguageCodeAndResKey(
languageCode, resKey languageCode, resKey

@ -165,25 +165,21 @@ public class SystemInitService implements ISystemInitService {
lanMap.put(res.getLanguageCode(), res.getResourceValue()); lanMap.put(res.getLanguageCode(), res.getResourceValue());
// web 资源 // web 资源
if(res.getResourceType() == CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.WEB.getValue() if (!webLangMap.containsKey(res.getLanguageCode())) {
||res.getResourceType() == CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.MENU.getValue()) { webLangMap.put(res.getLanguageCode(), new HashMap<>());
// web 资源
if (!webLangMap.containsKey(res.getLanguageCode())) {
webLangMap.put(res.getLanguageCode(), new HashMap<>());
}
// 放入资源信息
webResMap = webLangMap.get(res.getLanguageCode());
webResMap.put(res.getResourceKey(), res.getResourceValue());
// web 模块资源
softResKey = res.getLanguageCode() + ":" + res.getSoftTypeVal();
if (!webSoftLangMap.containsKey(softResKey)) {
webSoftLangMap.put(softResKey, new HashMap<>());
}
// 放入模块资源信息
webSoftResMap = webSoftLangMap.get(softResKey);
webSoftResMap.put(res.getResourceKey(), res.getResourceValue());
} }
// 放入资源信息
webResMap = webLangMap.get(res.getLanguageCode());
webResMap.put(res.getResourceKey(), res.getResourceValue());
// web 模块资源
softResKey = res.getLanguageCode() + ":" + res.getSoftTypeVal();
if (!webSoftLangMap.containsKey(softResKey)) {
webSoftLangMap.put(softResKey, new HashMap<>());
}
// 放入模块资源信息
webSoftResMap = webSoftLangMap.get(softResKey);
webSoftResMap.put(res.getResourceKey(), res.getResourceValue());
} }
for (String key : resMap.keySet()) { for (String key : resMap.keySet()) {

@ -80,7 +80,10 @@ public class SysLocaleResourceService implements ISysLocaleResourceService {
@Override @Override
public List<SysLocaleResource> saveSysLocaleResource(List<SysLocaleResource> list) { public List<SysLocaleResource> saveSysLocaleResource(List<SysLocaleResource> list) {
LOGGER.info("系统资源 SYS_LOCALE_RESOURCE list{}",list); LOGGER.info("系统资源 SYS_LOCALE_RESOURCE list{}",list);
return sysLocaleResourceRDao.saveAll(list); for (SysLocaleResource sysLocaleResource : list) {
sysLocaleResourceRDao.insert(sysLocaleResource);
}
return list;
} }
@Override @Override

Loading…
Cancel
Save