文档库--详情中除文本信息,关联信息之外的区域中文件类型字段处理

This commit is contained in:
zhn
2022-03-31 14:22:53 +08:00
parent 42c6b9f00f
commit ff28ea5237
@@ -904,66 +904,76 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
Map<String, Object> map = new HashMap<>();
//处理文件
if (FieldTypeEnum.FILE.getValue().equals(fieldShowType)) {
if (StringUtils.isNotBlank(value)) {
//处理文本信息和关联信息区域之外的区域中文件类型字段返归结果格式
if(!"文本信息".equals(onlCgformAreaTemp.getShowArea()) || !"关联信息".equals(onlCgformAreaTemp.getShowArea())){
List<OSSFile> fileInfos = iOSSFileService.getFileInfosByConnectId(value);
//多文件处理
if (fileInfos.size() > 1) {
if (fileInfos.size() != 0) {
int i = 0;
for (OSSFile fileInfo : fileInfos) {
if (i == 0) {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
mapNew.put("count", fileInfos.size());
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
List<String> fileIdList = fileInfos.stream().map(OSSFile::getId).collect(Collectors.toList());
Map<String, Object> mapNew = new HashMap<>();
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
mapNew.put("value",fileIdList);
resultTemp.add(mapNew);
}else{
if (StringUtils.isNotBlank(value)) {
List<OSSFile> fileInfos = iOSSFileService.getFileInfosByConnectId(value);
//多文件处理
if (fileInfos.size() > 1) {
if (fileInfos.size() != 0) {
int i = 0;
for (OSSFile fileInfo : fileInfos) {
if (i == 0) {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
mapNew.put("count", fileInfos.size());
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
i++;
} else {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
resultTemp.add(mapNew);
i++;
} else {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
}
resultTemp.add(mapNew);
}
}
} else if (fileInfos.size() == 1) {
//单个文件处理
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("count", fileInfos.size());
mapNew.put("value", fileInfos.get(0));
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfos.get(0).getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
}
} else if (fileInfos.size() == 1) {
//单个文件处理
} else {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("count", fileInfos.size());
mapNew.put("value", fileInfos.get(0));
mapNew.put("value", "");
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfos.get(0).getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
}
} else {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", "");
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
resultTemp.add(mapNew);
}
} else {
//处理字段类型为文件之外的字段