Fix nome variavile immagine scheda prodotto

This commit is contained in:
2024-07-12 17:20:56 +02:00
parent e04e5166ce
commit 6a03fd5010

View File

@@ -150,23 +150,28 @@ public class DataSheetServices {
List<StbFilesAttached> stbFilesAttacheds = UtilityDB.executeSimpleQueryDTO(conn, sql, StbFilesAttached.class);
if (!UtilityList.isNullOrEmpty(stbFilesAttacheds)) {
Map<String, byte[]> fileBytesMap = stbFilesAttacheds.stream()
.collect(Collectors.toMap(
StbFilesAttached::getFileName,
stbFilesAttached -> {
try {
return minIOService.downloadObject(stbFilesAttached.getRefUuid(), conn);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
));
if (!UtilityList.isNullOrEmpty(stbFilesAttacheds) && !UtilityList.isNullOrEmpty(allImgVariables)) {
Map<String, Map<String, Object>> fileBytesMap = new HashMap<>();
int counter = 0;
allImgVariables.stream()
.filter(imageData -> fileBytesMap.containsKey(imageData.getFileName()))
for (StbFilesAttached stbFilesAttached : stbFilesAttacheds) {
String key = String.format("%02d", counter);
byte[] fileData = minIOService.downloadObject(stbFilesAttached.getRefUuid(), conn);
Map<String, Object> innerMap = new HashMap<>();
innerMap.put("fileName", stbFilesAttached.getFileName());
innerMap.put("byte", fileData);
fileBytesMap.put(key, innerMap);
counter++;
}
allImgVariables
.forEach(imageData -> {
imageData.setBytes(fileBytesMap.get(imageData.getFileName()));
imageData.setBytes((byte[]) fileBytesMap.get(imageData.getFileName()).get("byte"));
imageData.setFileName((String) fileBytesMap.get(imageData.getFileName()).get("fileName"));
resultMap.put(imageData.getFileName(), imageData);
});
}