Fix nome variavile immagine scheda prodotto
This commit is contained in:
@@ -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);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user