Commit 73e9a9ae LN

增加csv文件导入功能。语言设置增加名称和图标字段。

1 个父辈 746e03c3
...@@ -10,6 +10,9 @@ import com.neotel.smfcore.common.utils.StringUtils; ...@@ -10,6 +10,9 @@ import com.neotel.smfcore.common.utils.StringUtils;
import com.neotel.smfcore.common.utils.YmlUpdateUtil; import com.neotel.smfcore.common.utils.YmlUpdateUtil;
import com.neotel.smfcore.core.barcode.service.po.Barcode; import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.barcode.utils.CodeResolve; import com.neotel.smfcore.core.barcode.utils.CodeResolve;
import com.neotel.smfcore.core.language.service.bean.LanguageInfo;
import com.neotel.smfcore.core.language.service.po.LanguageMsg;
import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.core.storage.bean.InventoryItem; import com.neotel.smfcore.core.storage.bean.InventoryItem;
import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE; import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE;
import com.neotel.smfcore.core.storage.service.po.StoragePos; import com.neotel.smfcore.core.storage.service.po.StoragePos;
...@@ -102,6 +105,15 @@ public class DataCache { ...@@ -102,6 +105,15 @@ public class DataCache {
return null; return null;
} }
public List<LanguageInfo> getLanguageList(){
List<LanguageInfo> lanList = getCache(Constants.CACHE_languageType);
if (lanList == null || lanList.size() <= 0) {
lanList = MessageUtils.getDefaultLanList();
updateCache(Constants.CACHE_languageType, lanList);
}
return lanList;
}
/** /**
* 更新缓存信息 * 更新缓存信息
*/ */
......
...@@ -22,6 +22,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -22,6 +22,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Set; import java.util.Set;
@Slf4j @Slf4j
...@@ -36,27 +37,12 @@ public class LanguageSetController { ...@@ -36,27 +37,12 @@ public class LanguageSetController {
public List<LanguageInfo> getAllLanList() { public List<LanguageInfo> getAllLanList() {
// List<String> lanList = dataCache.getCache(Constants.CACHE_languageType); // List<LanguageInfo> lanList = dataCache.getCache(Constants.CACHE_languageType);
// if (lanList == null || lanList.size() <= 0) { // if (lanList == null || lanList.size() <= 0) {
// lanList=new ArrayList<>(); // lanList = MessageUtils.getDefaultLanList();
// lanList.add(MessageUtils.ZH_CN);
// lanList.add(MessageUtils.ZH_TW);
// lanList.add(MessageUtils.EN_US);
// lanList.add(MessageUtils.JA_JP);
// dataCache.updateCache(Constants.CACHE_languageType, lanList); // dataCache.updateCache(Constants.CACHE_languageType, lanList);
// } // }
// return lanList; return dataCache.getLanguageList();
List<LanguageInfo> lanList = dataCache.getCache(Constants.CACHE_languageType);
if (lanList == null || lanList.size() <= 0) {
lanList=new ArrayList<>();
lanList.add(new LanguageInfo(MessageUtils.ZH_CN,"简体中文",""));
lanList.add(new LanguageInfo(MessageUtils.ZH_TW,"简体中文",""));
lanList.add(new LanguageInfo(MessageUtils.EN_US,"简体中文",""));
lanList.add(new LanguageInfo(MessageUtils.JA_JP,"简体中文",""));
dataCache.updateCache(Constants.CACHE_languageType, lanList);
}
return lanList;
} }
@ApiOperation("获取语言列表") @ApiOperation("获取语言列表")
...@@ -111,12 +97,25 @@ public class LanguageSetController { ...@@ -111,12 +97,25 @@ public class LanguageSetController {
} }
} }
List<LanguageInfo> newList=new ArrayList<>();
for (LanguageInfo lan : for (LanguageInfo lan :
languageTypeList) { languageTypeList) {
if(lanCodes.contains(lan.getLanCode())){
log.info("用户["+SecurityUtils.getCurrentUsername()+"] 删除语言:"+lan.getLanCode()); //如果是四种默认语言,不能删除
}else{ String lancode = lan.getLanCode();
if (lancode.equals(MessageUtils.ZH_CN) ||
lancode.equals(MessageUtils.ZH_TW) ||
lancode.equals(MessageUtils.JA_JP) ||
lancode.equals(MessageUtils.EN_US)
) {
throw new ValidateException("smfcode.canotRemove", "不能删除此语言");
}
}
List<LanguageInfo> newList = new ArrayList<>();
for (LanguageInfo lan :
languageTypeList) {
if (lanCodes.contains(lan.getLanCode())) {
log.info("用户[" + SecurityUtils.getCurrentUsername() + "] 删除语言:" + lan.getLanCode());
} else {
newList.add(lan); newList.add(lan);
} }
} }
...@@ -124,6 +123,7 @@ public class LanguageSetController { ...@@ -124,6 +123,7 @@ public class LanguageSetController {
throw new ValidateException("smfcode.languageCanotRemoveAll", "不能删除所有语言"); throw new ValidateException("smfcode.languageCanotRemoveAll", "不能删除所有语言");
} }
dataCache.updateCache(Constants.CACHE_languageType, newList); dataCache.updateCache(Constants.CACHE_languageType, newList);
return new ResponseEntity<>(HttpStatus.OK); return new ResponseEntity<>(HttpStatus.OK);
} }
......
...@@ -9,6 +9,7 @@ import com.neotel.smfcore.core.barcode.bean.PlateSizeBean; ...@@ -9,6 +9,7 @@ import com.neotel.smfcore.core.barcode.bean.PlateSizeBean;
import com.neotel.smfcore.core.barcode.service.po.Barcode; import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.device.util.DataCache; import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.language.service.bean.Content; import com.neotel.smfcore.core.language.service.bean.Content;
import com.neotel.smfcore.core.language.service.bean.LanguageInfo;
import com.neotel.smfcore.core.language.service.dao.ILanguageMsgDao; import com.neotel.smfcore.core.language.service.dao.ILanguageMsgDao;
import com.neotel.smfcore.core.language.service.nanager.ILanguageMsgManager; import com.neotel.smfcore.core.language.service.nanager.ILanguageMsgManager;
import com.neotel.smfcore.core.language.service.po.LanguageMsg; import com.neotel.smfcore.core.language.service.po.LanguageMsg;
...@@ -64,18 +65,6 @@ public class LanguageMsgManagerImpl implements ILanguageMsgManager { ...@@ -64,18 +65,6 @@ public class LanguageMsgManagerImpl implements ILanguageMsgManager {
@Autowired @Autowired
DataCache dataCache; DataCache dataCache;
public List<String> getAllLanList(){
List<String> lanList=dataCache.getCache(Constants.CACHE_languageType);
if(lanList==null||lanList.size()<=0){
lanList.add(MessageUtils. ZH_CN);
lanList.add(MessageUtils.ZH_TW);
lanList.add(MessageUtils.EN_US);
lanList.add(MessageUtils.JA_JP);
dataCache.updateCache(Constants.CACHE_languageType,lanList);
}
return lanList;
}
@Override @Override
public void download(List<LanguageMsg> msgList, HttpServletResponse response) throws IOException { public void download(List<LanguageMsg> msgList, HttpServletResponse response) throws IOException {
List<Map<String, Object>> list = new ArrayList<>(); List<Map<String, Object>> list = new ArrayList<>();
...@@ -83,16 +72,16 @@ public class LanguageMsgManagerImpl implements ILanguageMsgManager { ...@@ -83,16 +72,16 @@ public class LanguageMsgManagerImpl implements ILanguageMsgManager {
Map<String, Object> map = new LinkedHashMap<>(); Map<String, Object> map = new LinkedHashMap<>();
map.put("编号", msg.getCode()); map.put("编号", msg.getCode());
map.put("类型", msg.getType()); map.put("类型", msg.getType());
map.put("默认值", msg.getMsg()); map.put("内容", msg.getMsg());
List<String> lanList=getAllLanList(); List<LanguageInfo> lanList=dataCache.getLanguageList();
for (String lanType : for (LanguageInfo languageInfo :
lanList) { lanList) {
map.put(lanType,msg.getContent(lanType)); String title=languageInfo.getLanCode() ;
if(ObjectUtil.isNotEmpty(languageInfo.getLanName())){
title=languageInfo.getLanName();
}
map.put(title,msg.getContent(languageInfo.getLanCode()));
} }
// map.put("简体中文", msg.getContent(MessageUtils.ZH_CN));
// map.put("繁体中文", msg.getContent(MessageUtils.ZH_TW));
// map.put("英文", msg.getContent(MessageUtils.EN_US));
// map.put("日文", msg.getContent(MessageUtils.JA_JP));
list.add(map); list.add(map);
} }
FileUtil.downloadExcel(list, response); FileUtil.downloadExcel(list, response);
......
package com.neotel.smfcore.core.language.util; package com.neotel.smfcore.core.language.util;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.neotel.smfcore.common.utils.Constants;
import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.language.service.bean.Content; import com.neotel.smfcore.core.language.service.bean.Content;
import com.neotel.smfcore.core.language.service.bean.LanguageInfo;
import com.neotel.smfcore.core.language.service.nanager.ILanguageMsgManager; import com.neotel.smfcore.core.language.service.nanager.ILanguageMsgManager;
import com.neotel.smfcore.core.language.service.po.LanguageMsg; import com.neotel.smfcore.core.language.service.po.LanguageMsg;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -27,11 +30,11 @@ public class MessageUtils { ...@@ -27,11 +30,11 @@ public class MessageUtils {
// return new Locale("zh-CH"); // return new Locale("zh-CH");
// } // }
private static MessageSource messageSource; // private static MessageSource messageSource;
public MessageUtils(MessageSource messageSource) { // public MessageUtils(MessageSource messageSource) {
MessageUtils.messageSource = messageSource; // MessageUtils.messageSource = messageSource;
} // }
// public static String getText(String msgKey, Locale locale,String defaultMsg) { // public static String getText(String msgKey, Locale locale,String defaultMsg) {
// return getText(msgKey,null, locale,defaultMsg); // return getText(msgKey,null, locale,defaultMsg);
...@@ -57,13 +60,15 @@ public class MessageUtils { ...@@ -57,13 +60,15 @@ public class MessageUtils {
/** /**
* key=code * 资源集合,key=code
*/ */
private static Map<String, LanguageMsg> msgMap = new HashMap<>(); private static Map<String, LanguageMsg> msgMap = new HashMap<>();
@Autowired @Autowired
ILanguageMsgManager languageMsgManager; ILanguageMsgManager languageMsgManager;
public static final String ZH_CN = "zh-CN"; public static final String ZH_CN = "zh-CN";
public static final String ZH_TW = "zh-TW"; public static final String ZH_TW = "zh-TW";
public static final String EN_US = "en-US"; public static final String EN_US = "en-US";
...@@ -75,18 +80,6 @@ public class MessageUtils { ...@@ -75,18 +80,6 @@ public class MessageUtils {
initLanguageMsgList(); initLanguageMsgList();
} }
// public static List<String> getAllLanList(){
//
//
// List<String> lanList=new ArrayList<>();
// lanList.add(ZH_CN);
// lanList.add(ZH_TW);
// lanList.add(EN_US);
// lanList.add(JA_JP);
// return lanList;
// }
public static Locale getDefaultLocal(){ public static Locale getDefaultLocal(){
return new Locale("zh-CH"); return new Locale("zh-CH");
} }
...@@ -164,6 +157,19 @@ public class MessageUtils { ...@@ -164,6 +157,19 @@ public class MessageUtils {
return msgMap; return msgMap;
} }
public static List<LanguageInfo> getDefaultLanList() {
List<LanguageInfo> lanList = new ArrayList<>();
if (lanList == null || lanList.size() <= 0) {
lanList=new ArrayList<>();
lanList.add(new LanguageInfo(MessageUtils.ZH_CN,"简体中文",""));
lanList.add(new LanguageInfo(MessageUtils.ZH_TW,"繁体中文",""));
lanList.add(new LanguageInfo(MessageUtils.EN_US,"English",""));
lanList.add(new LanguageInfo(MessageUtils.JA_JP,"日本语",""));
}
return lanList;
}
private void initLanguageMsgList() { private void initLanguageMsgList() {
msgMap = loadMsgMap(); msgMap = loadMsgMap();
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!