fix: 88182 外来标准法规文本库--导入--操作失败
This commit is contained in:
@@ -686,13 +686,20 @@ public class ImportUtil {
|
|||||||
// 字典转换
|
// 字典转换
|
||||||
public String convertDictValue(String dictCode, String cellValue) {
|
public String convertDictValue(String dictCode, String cellValue) {
|
||||||
String[] valueList = cellValue.split(",");
|
String[] valueList = cellValue.split(",");
|
||||||
Map<String, DictModel> sexDictModelMap =
|
Map<String, List<DictModel>> sexDictModelMap =
|
||||||
sysBaseAPI.getDictItems(dictCode).stream()
|
sysBaseAPI.getDictItems(dictCode).stream()
|
||||||
.collect(Collectors.toMap(DictModel::getText, d -> d));
|
.collect(Collectors.groupingBy(DictModel::getText));
|
||||||
|
|
||||||
StringBuilder result = new StringBuilder();
|
StringBuilder result = new StringBuilder();
|
||||||
for (String value : valueList) {
|
for (String value : valueList) {
|
||||||
result.append(sexDictModelMap.get(value).getValue()).append(",");
|
List<DictModel> dictModels = sexDictModelMap.get(value);
|
||||||
|
if (dictModels.size() == 1) {
|
||||||
|
result.append(dictModels.get(0).getValue()).append(",");
|
||||||
|
} else {
|
||||||
|
// 找到value值最长的那个
|
||||||
|
result.append(dictModels.stream()
|
||||||
|
.max(Comparator.comparingInt(e -> e.getValue().length())).get().getValue()).append(",");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 去除掉最后的逗号
|
// 去除掉最后的逗号
|
||||||
return result.substring(0, result.length() - 1);
|
return result.substring(0, result.length() - 1);
|
||||||
@@ -718,9 +725,9 @@ public class ImportUtil {
|
|||||||
// 字典验证(判断填写的是否是中的一个)
|
// 字典验证(判断填写的是否是中的一个)
|
||||||
public boolean dictValid(String dictCode, String cellValue) {
|
public boolean dictValid(String dictCode, String cellValue) {
|
||||||
String[] valueList = cellValue.split(",");
|
String[] valueList = cellValue.split(",");
|
||||||
Map<String, DictModel> sexDictModelMap =
|
Map<String, List<DictModel>> sexDictModelMap =
|
||||||
sysBaseAPI.getDictItems(dictCode).stream()
|
sysBaseAPI.getDictItems(dictCode).stream()
|
||||||
.collect(Collectors.toMap(DictModel::getText, d -> d));
|
.collect(Collectors.groupingBy(DictModel::getText));
|
||||||
|
|
||||||
for (String value : valueList) {
|
for (String value : valueList) {
|
||||||
if (sexDictModelMap.get(value) == null) {
|
if (sexDictModelMap.get(value) == null) {
|
||||||
|
|||||||
Reference in New Issue
Block a user