From 0958b0655261d6bb3aa831f2942e777b9c5c172b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B1=AA=E4=BA=91=E6=98=8A?= Date: Tue, 31 Dec 2019 16:10:43 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=B5=84=E6=BA=90=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../estsh/i3plus/core/apiservice/controller/base/WhiteController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java index fffd2f8..8f9ddb6 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java @@ -306,7 +306,7 @@ public class WhiteController extends CoreBaseController { if(needPlatformRes.intValue() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ Map platformResMap = 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); From 4b240a0d79eff71841399dbc68caa3187e3d6ad2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B1=AA=E4=BA=91=E6=98=8A?= Date: Thu, 2 Jan 2020 10:48:29 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E8=B5=84=E6=BA=90=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=20=E7=BC=93=E5=AD=98=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/base/SystemInitService.java | 32 ++++++++++------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java index b3b00da..9deddc2 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemInitService.java @@ -165,25 +165,21 @@ public class SystemInitService implements ISystemInitService { lanMap.put(res.getLanguageCode(), res.getResourceValue()); // web 资源 - if(res.getResourceType() == CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.WEB.getValue() - ||res.getResourceType() == CommonEnumUtil.SYS_LOCALE_RESOURCE_TYPE.MENU.getValue()) { - // 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()); + 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()); } for (String key : resMap.keySet()) { From e14006489d7e6a55b1eca1f2ac7ac2f66f09c20a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B1=AA=E4=BA=91=E6=98=8A?= Date: Thu, 2 Jan 2020 14:10:24 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=B5=84=E6=BA=90=E5=8E=BB=E9=87=8D=20?= =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=AF=BC=E5=85=A5=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../busi/SysLocaleResourceController.java | 21 ++++++++++++++------- .../serviceimpl/busi/SysLocaleResourceService.java | 5 ++++- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java index 451ecb4..3c4e701 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java @@ -370,6 +370,7 @@ public class SysLocaleResourceController extends CoreBaseController { public ResultBean incrementImportSysLocaleResource(@RequestParam("file") MultipartFile file){ try { Long startTime = System.currentTimeMillis(); + // 提取Excel数据 LOGGER.info("开始增量导入 {}",file.getOriginalFilename()); ExcelTool excelTool = new ExcelTool(entityManager, redisRes); List sysLocaleResourceList = excelTool.importData(file.getOriginalFilename(), file.getInputStream(), @@ -378,13 +379,18 @@ public class SysLocaleResourceController extends CoreBaseController { long excelToolExecuteTime = System.currentTimeMillis(); LOGGER.info("增量导入 数据量 {}, ExcelTool耗时 {}", sysLocaleResourceList.size(), excelToolExecuteTime - startTime); - // 初始化数据 - boolean d = false; - if(d){ - return ResultBean.success(); - } - + // 数据去重并初始化 + Set resourceSet = new HashSet<>(); + String resourceKey; 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.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); ConvertBean.modelInitialize(resource, AuthUtil.getSessionUser()); @@ -393,6 +399,7 @@ public class SysLocaleResourceController extends CoreBaseController { long deduplicationExecuteTime = System.currentTimeMillis(); LOGGER.info("数据去重完毕, 数据去重耗时 {}", deduplicationExecuteTime - excelToolExecuteTime); + // 分批导入 for (List resourceList : splitList(sysLocaleResourceList, 1000)) { sysLocaleResourceService.saveSysLocaleResource(resourceList); } @@ -412,7 +419,7 @@ public class SysLocaleResourceController extends CoreBaseController { } 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); SysLocaleResource sysLocaleResource =sysLocaleResourceService.getSysLocaleResourceByLanguageCodeAndResKey( languageCode, resKey diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java index 10f9485..9a51e1e 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysLocaleResourceService.java @@ -80,7 +80,10 @@ public class SysLocaleResourceService implements ISysLocaleResourceService { @Override public List saveSysLocaleResource(List list) { LOGGER.info("系统资源 SYS_LOCALE_RESOURCE list:{}",list); - return sysLocaleResourceRDao.saveAll(list); + for (SysLocaleResource sysLocaleResource : list) { + sysLocaleResourceRDao.insert(sysLocaleResource); + } + return list; } @Override