bug50782-标准选择存编号
This commit is contained in:
+24
-31
@@ -366,7 +366,6 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
if (ObjectUtils.isNotEmpty(value)) {
|
||||
if("add".equals(type) || "import".equals(type)) {
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
// value = valueTemp;
|
||||
//修改文件表关联信息connect_id
|
||||
List<OSSFile> oSSFileList = new ArrayList<>();
|
||||
for (String fileId : value.toString().split(",")) {
|
||||
@@ -381,9 +380,8 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
valuesBuilder.append("," + "'" + value + "'");
|
||||
} else if("update".equals(type)){
|
||||
// 前端标识 key_flag 0-未修改, 1-已修改
|
||||
if(value.toString().contains(",")){
|
||||
if(value.toString().contains(",")){ // 新加了多个文件
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
// value = valueTemp;
|
||||
//修改文件表关联信息connect_id
|
||||
List<OSSFile> oSSFileList = new ArrayList<>();
|
||||
for (String fileId : value.toString().split(",")) {
|
||||
@@ -396,11 +394,10 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
valuesBuilder.append("," + "'" + valueTemp + "'");
|
||||
} else {
|
||||
List<OSSFile> ossFiles = ossFileService.getFileInfosByConnectId(value.toString());
|
||||
if(CollectionUtil.isNotEmpty(ossFiles)){
|
||||
if(CollectionUtil.isNotEmpty(ossFiles)){ // 没有修改文件
|
||||
valuesBuilder.append("," + "'" + value + "'");
|
||||
} else {
|
||||
} else { // 新加了一个文件
|
||||
String valueTemp = UUID.randomUUID().toString().replace("-", "");
|
||||
// value = valueTemp;
|
||||
//修改文件表关联信息connect_id
|
||||
List<OSSFile> oSSFileList = new ArrayList<>();
|
||||
for (String fileId : value.toString().split(",")) {
|
||||
@@ -418,7 +415,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
} else {
|
||||
valuesBuilder.append("," + "'" + value + "'");
|
||||
}
|
||||
} else if(fieldPersonList.contains(key) || fieldStanList.contains(key)){
|
||||
} else if(fieldPersonList.contains(key)){ // || fieldStanList.contains(key)
|
||||
// 人员选择类型 标准选择类型
|
||||
if(ObjectUtil.isNotNull(parameter.get(key+"_id"))) {
|
||||
value = parameter.get(key + "_id");
|
||||
@@ -902,7 +899,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
itemsMap.put(dbFieldName, valuesList);
|
||||
}
|
||||
}
|
||||
// 人员选择
|
||||
// 人员选择 存id(文档库存的账号)
|
||||
if (FieldTypeEnum.PERSON.getValue().equals(fieldType)) {
|
||||
if (StringUtils.isNotBlank((String)itemsMap.get(dbFieldName))) {
|
||||
List<SysUser> sysUserList = sysUserService.listByIds(Arrays.asList(itemsMap.get(dbFieldName).toString().split(",")));
|
||||
@@ -924,43 +921,39 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
}
|
||||
}
|
||||
}
|
||||
// 标准选择
|
||||
if (FieldTypeEnum.STANDARD.getValue().equals(fieldType)) {
|
||||
// 标准选择 存编号(不用返回id)
|
||||
/*if (FieldTypeEnum.STANDARD.getValue().equals(fieldType)) {
|
||||
if (StringUtils.isNotBlank((String)itemsMap.get(dbFieldName))) {
|
||||
if (itemsMap.get(dbFieldName).toString().split(",").length > 0) {
|
||||
List<Map<String, Object>> documentLibraryEOList = documentLibraryEOService.queryListByIds(itemsMap.get(dbFieldName).toString());
|
||||
List<Map<String, Object>> documentLibraryEOList = documentLibraryEOService.getListBySerialNumber(itemsMap.get(dbFieldName).toString());
|
||||
documentLibraryEOList = documentLibraryEOList.stream()
|
||||
.collect(Collectors.collectingAndThen(Collectors
|
||||
.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.get("serial_number").toString()))), ArrayList::new)); // 根据编号去重
|
||||
Map<String, String> idSerialNumberMap = new HashMap<>();
|
||||
List<String> idList = new ArrayList<>();
|
||||
List<String> nameList = new ArrayList<>();
|
||||
for (Map<String, Object> map : documentLibraryEOList) {
|
||||
String serialNumber = (String) map.get("serial_number");
|
||||
String serialNumber = (String) map.get("serial_number"); // TODO 可能存在编号相同的情况
|
||||
String documentLibraryEOId = (String) map.get("id");
|
||||
idSerialNumberMap.put(documentLibraryEOId, serialNumber);
|
||||
idList.add(documentLibraryEOId);
|
||||
idSerialNumberMap.put(serialNumber, documentLibraryEOId);
|
||||
nameList.add(serialNumber);
|
||||
}
|
||||
|
||||
List<String> valueList = Arrays.asList(itemsMap.get(dbFieldName).toString().split(","));
|
||||
List<String> newValueList = new ArrayList<>();
|
||||
|
||||
List<String> valueList = Arrays.asList(itemsMap.get(dbFieldName).toString().split(",")).stream().distinct().collect(Collectors.toList());
|
||||
for(String value : valueList) {
|
||||
if (idList.contains(value)) {
|
||||
newValueList.add(idSerialNumberMap.get(value));
|
||||
if (nameList.contains(value)) {
|
||||
idList.add(idSerialNumberMap.get(value));
|
||||
} else {
|
||||
newValueList.add(value);
|
||||
idList.add(value);
|
||||
}
|
||||
}
|
||||
String names = StringUtils.join(newValueList, ",");
|
||||
itemsMap.put(dbFieldName+"_id", itemsMap.get(dbFieldName).toString());
|
||||
itemsMap.put(dbFieldName, names);
|
||||
|
||||
String ids = StringUtils.join(idList, ",");
|
||||
itemsMap.put(dbFieldName+"_id", ids);
|
||||
itemsMap.put(dbFieldName, itemsMap.get(dbFieldName).toString());
|
||||
}
|
||||
// List<Map<String, Object>> documentLibraryEOList = documentLibraryEOService.queryListByIds(itemsMap.get(dbFieldName).toString());
|
||||
// if(CollectionUtil.isNotEmpty(documentLibraryEOList)){
|
||||
// String names = StringUtils.join(documentLibraryEOList.stream().map(map->map.get("serial_number")).collect(Collectors.toList()),",");
|
||||
// itemsMap.put(dbFieldName+"_id", itemsMap.get(dbFieldName).toString());
|
||||
// itemsMap.put(dbFieldName, names);
|
||||
//
|
||||
// }
|
||||
}
|
||||
}
|
||||
}*/
|
||||
}
|
||||
return itemsMap;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user