feat(material): 支持下载多个PLM文件并打包成ZIP
This commit is contained in:
parent
9ab10106a0
commit
744905acca
|
|
@ -170,27 +170,28 @@ public class MaterialPlmDownloadAction implements ICommonAction {
|
||||||
logger.error("物料编码 " + materialCode + " 未查询到" + fileType + "类型文件");
|
logger.error("物料编码 " + materialCode + " 未查询到" + fileType + "类型文件");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
for (int i = 0; i < jsonArray.size(); i++) {
|
||||||
|
JSONObject plmFileJson = (JSONObject) jsonArray.get(i);
|
||||||
|
String objId = plmFileJson.getString("objId");
|
||||||
|
if (objId == null || objId.isEmpty()) {
|
||||||
|
logger.error("物料编码 " + materialCode + " 的" + fileType + "文件ID为空");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
JSONObject plmFileJson = jsonArray.getJSONObject(0);
|
String name = plmFileJson.getString("name");
|
||||||
String objId = plmFileJson.getString("objId");
|
String suffix = plmFileJson.getString("suffix");
|
||||||
if (objId == null || objId.isEmpty()) {
|
byte[] fileBytes = downloadPlmFileByType(objId, fileType);
|
||||||
logger.error("物料编码 " + materialCode + " 的" + fileType + "文件ID为空");
|
if (fileBytes.length == 0) {
|
||||||
return false;
|
logger.error("物料编码 " + materialCode + " 的" + fileType + "文件字节流为空");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 生成带类型标识的文件名,避免重复
|
||||||
|
String fname = name + "_" + materialCode + "_" + getTypeName(fileType) + "_" + (index + i) + "." + suffix;
|
||||||
|
zipStream.putNextEntry(new ZipEntry(fname));
|
||||||
|
zipStream.write(fileBytes);
|
||||||
|
zipStream.closeEntry();
|
||||||
}
|
}
|
||||||
|
|
||||||
String name = plmFileJson.getString("name");
|
|
||||||
String suffix = plmFileJson.getString("suffix");
|
|
||||||
byte[] fileBytes = downloadPlmFileByType(objId, fileType);
|
|
||||||
if (fileBytes.length == 0) {
|
|
||||||
logger.error("物料编码 " + materialCode + " 的" + fileType + "文件字节流为空");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 生成带类型标识的文件名,避免重复
|
|
||||||
String fname = name + "_" + materialCode + "_" + getTypeName(fileType) + "_" + index + "." + suffix;
|
|
||||||
zipStream.putNextEntry(new ZipEntry(fname));
|
|
||||||
zipStream.write(fileBytes);
|
|
||||||
zipStream.closeEntry();
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue