Jenkins自动合并

yun-zuoyi
jenkins 5 years ago
commit 71d431dbd1

@ -100,4 +100,11 @@ public interface ISystemResourceService {
* @return * @return
*/ */
SysLocaleResource getSysLocaleResourceByLanguage(int resourceType,String langCode,String langKey); SysLocaleResource getSysLocaleResourceByLanguage(int resourceType,String langCode,String langKey);
/**
*
* @param res
* @return
*/
Integer getSysLocaleResourceCount(SysLocaleResource res);
} }

@ -278,9 +278,10 @@ public class WhiteController extends CoreBaseController {
@GetMapping(value = "/white/find-language-code-soft-type") @GetMapping(value = "/find-language-code-soft-type")
@ApiOperation(value = "根据语言代码查询资源") @ApiOperation(value = "根据语言代码查询资源")
public ResultBean findSysLocaleResourceByLanguageCode(String languageCode,Integer softType){ public ResultBean findSysLocaleResourceByLanguageCode(String languageCode,Integer softType,
@RequestParam(defaultValue = "2") Integer needPlatformRes){
try { try {
startMultiService(); startMultiService();
@ -302,6 +303,12 @@ public class WhiteController extends CoreBaseController {
resourceMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + languageCode + ":" + softType); resourceMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + languageCode + ":" + softType);
} }
if(needPlatformRes.intValue() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){
Map<Object, Object> platformResMap =
redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + languageCode + ":" + CommonEnumUtil.SOFT_TYPE.IMPP.getValue());;
}
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(resourceMap); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultMap(resourceMap);
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);

@ -35,6 +35,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream; import java.io.BufferedInputStream;
import java.io.IOException; import java.io.IOException;
@ -295,7 +297,7 @@ public class SysFileController extends CoreBaseController {
*/ */
@GetMapping("/download/{id}") @GetMapping("/download/{id}")
@ApiOperation(value = "文件下载", notes = "文件下载") @ApiOperation(value = "文件下载", notes = "文件下载")
public void singleDownload(@PathVariable("id") String id, HttpServletResponse response) { public void singleDownload(@PathVariable("id") String id, HttpServletRequest request, HttpServletResponse response) {
try { try {
startMultiService(); startMultiService();
@ -320,8 +322,19 @@ public class SysFileController extends CoreBaseController {
.build(); .build();
} }
String userAgent = request.getHeader("User-Agent");
String formFileName = sysFile.getFileOriginalName();
// 针对IE或者以IE为内核的浏览器
if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
formFileName = java.net.URLEncoder.encode(formFileName, "UTF-8");
} else {
// 非IE浏览器的处理
formFileName = new String(formFileName.getBytes("UTF-8"), "ISO-8859-1");
}
response.setContentType("application/force-download"); // 设置强制下载不打开 response.setContentType("application/force-download"); // 设置强制下载不打开
response.addHeader("Content-Disposition", "attachment;fileName=" + sysFile.getFileOriginalName()); // 设置文件名 response.addHeader("Content-Disposition", "attachment;fileName=" + formFileName); // 设置文件名
response.addHeader("Content-type", FileContentTypeTool.getContentType(StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), true))); // 设置文件名 response.addHeader("Content-type", FileContentTypeTool.getContentType(StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), true))); // 设置文件名
BufferedInputStream bis = null; BufferedInputStream bis = null;

@ -14,10 +14,11 @@ import org.slf4j.LoggerFactory;
import org.springframework.amqp.core.Message; import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import static cn.estsh.i3plus.platform.common.util.PlatformConstWords.QUEUE_IMPP_RESOURCE; import static cn.estsh.i3plus.platform.common.util.PlatformConstWords.QUEUE_IMPP_RESOURCE;
@ -28,7 +29,7 @@ import static cn.estsh.i3plus.platform.common.util.PlatformConstWords.QUEUE_IMPP
* @CreateDate : 19-8-23 3:12 * @CreateDate : 19-8-23 3:12
* @Modify: * @Modify:
**/ **/
@Component //@Component
public class SysLocalResourceQueue { public class SysLocalResourceQueue {
private static final Logger LOGGER = LoggerFactory.getLogger(SysLocalResourceQueue.class); private static final Logger LOGGER = LoggerFactory.getLogger(SysLocalResourceQueue.class);

@ -7,13 +7,11 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISystemResourceService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysConfig; import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource;
import cn.estsh.i3plus.pojo.platform.bean.SysMenu;
import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository; import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository; import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository; import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
@ -25,6 +23,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
@ -120,8 +119,15 @@ public class SystemInitService implements ISystemInitService {
if (type == ImppEnumUtil.SYS_CACHE_TYPE.REDIS.getValue()) { if (type == ImppEnumUtil.SYS_CACHE_TYPE.REDIS.getValue()) {
/** /**
* *
* code <lang : value> * code <langCode : value>
* code * code
*
* hashMap
* langCode < code : value>
*
* + hashMap
* langCode + softType < code : value>
*
*/ */
HashMap<String, HashMap<String, String>> resMap = new HashMap(); HashMap<String, HashMap<String, String>> resMap = new HashMap();
HashMap<String, String> lanMap = null; HashMap<String, String> lanMap = null;
@ -130,15 +136,24 @@ public class SystemInitService implements ISystemInitService {
HashMap<String, HashMap<String, String>> webSoftLangMap = new HashMap<>(); HashMap<String, HashMap<String, String>> webSoftLangMap = new HashMap<>();
HashMap<String, String> webSoftResMap; HashMap<String, String> webSoftResMap;
String softResKey = null; String softResKey = null;
Integer resCount = systemResourceService.getSysLocaleResourceCount(null);
//语言数量 //语言数量
List<SysLocaleLanguage> langList = systemResourceService.listSysLocaleLanguage(null); List<SysLocaleLanguage> langList = systemResourceService.listSysLocaleLanguage(null);
LOGGER.info("【加载平台资源】共有{}个资源,{}种语言。", resCount, langList.size());
Pager pager = new Pager(resCount, 5000);
pager.setCurrentPage(0);
//查询所有资源 //查询所有资源
List<SysLocaleResource> resourceList = systemResourceService.listSysLocaleResource(null); ListPager<SysLocaleResource> resourceList;
LOGGER.info("【加载平台资源】共有{}个资源,{}种语言。", resourceList.size(), langList.size()); do {
for (SysLocaleResource res : resourceList) { pager.next();
//遍历资源放入map中 resourceList = systemResourceService.listSysLocaleResourceByPager(null, pager);
resMap = new HashMap();
webLangMap = new HashMap<>();
webSoftLangMap = new HashMap<>();
for (SysLocaleResource res : resourceList.getObjectList()) {
lanMap = resMap.get(res.getResourceKey()); lanMap = resMap.get(res.getResourceKey());
//判断是否已存在资源信息 //判断是否已存在资源信息
if (lanMap == null) { if (lanMap == null) {
@ -150,6 +165,8 @@ 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()) {
// web 资源
if (!webLangMap.containsKey(res.getLanguageCode())) { if (!webLangMap.containsKey(res.getLanguageCode())) {
webLangMap.put(res.getLanguageCode(), new HashMap<>()); webLangMap.put(res.getLanguageCode(), new HashMap<>());
} }
@ -166,6 +183,7 @@ public class SystemInitService implements ISystemInitService {
webSoftResMap = webSoftLangMap.get(softResKey); webSoftResMap = webSoftLangMap.get(softResKey);
webSoftResMap.put(res.getResourceKey(), res.getResourceValue()); webSoftResMap.put(res.getResourceKey(), res.getResourceValue());
} }
}
for (String key : resMap.keySet()) { for (String key : resMap.keySet()) {
//放入缓存 //放入缓存
@ -177,6 +195,7 @@ public class SystemInitService implements ISystemInitService {
for (String key : webLangMap.keySet()) { for (String key : webLangMap.keySet()) {
//放入缓存 //放入缓存
if (webLangMap.get(key) != null) { if (webLangMap.get(key) != null) {
redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + key, webLangMap.get(key), 0);
redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + key, webLangMap.get(key), 0); redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_WEB + ":" + key, webLangMap.get(key), 0);
} }
} }
@ -188,8 +207,12 @@ public class SystemInitService implements ISystemInitService {
} }
} }
} LOGGER.info("【加载平台资源】加载中 {} / {} ", pager.getEndRow(), pager.getTotalRows());
} while (pager.hasNext());
LOGGER.info("【加载平台资源】加载完成。");
}
//加载语言数据 //加载语言数据
putAndLoadSysMenu(); putAndLoadSysMenu();
} }
@ -207,12 +230,11 @@ public class SystemInitService implements ISystemInitService {
List<SysLocaleResource> insertList = new ArrayList<>(); List<SysLocaleResource> insertList = new ArrayList<>();
Map<String,String> redisCacheMap = new HashMap<>(); Map<String,String> redisCacheMap = new HashMap<>();
if(resource != null && resources.size() > 0){ if(resources != null && resources.size() > 0){
resources.forEach(res -> resourceKeyMap.put(StringUtils.join(res.getLanguageCode(),res.getResourceKey()),res)); resources.forEach(res -> resourceKeyMap.put(StringUtils.join(res.getLanguageCode(),res.getResourceKey()),res));
} }
if(menus != null && menus.size() > 0 if(menus != null && menus.size() > 0 && languages != null && languages.size() > 0){
&& languages != null && languages.size() > 0){
for (SysLocaleLanguage language : languages) { for (SysLocaleLanguage language : languages) {
String redisLanguageKey = CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_MENU + ":" + language.getLanguageCode(); String redisLanguageKey = CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE_MENU + ":" + language.getLanguageCode();

@ -154,4 +154,10 @@ public class SystemResourceService implements ISystemResourceService {
return null; return null;
} }
} }
@Override
public Integer getSysLocaleResourceCount(SysLocaleResource res) {
DdlPackBean packBean = CoreHqlPack.packHqlSysLocaleResource(res);
return sysLocaleResourceRDao.findByHqlWhereCount(packBean);
}
} }

Loading…
Cancel
Save