Commit 2147749d authored by 刘林's avatar 刘林

fix(jg):超设计使用年限功能开发

parent 894b5621
......@@ -171,4 +171,10 @@ public class JgOverDesignServiceLife extends BaseEntity {
*/
@TableField("use_registration_code")
private String useRegistrationCode;
@TableField(exist = false)
private String equList;
@TableField(exist = false)
private String equCategory;
}
......@@ -2282,8 +2282,8 @@ public class CommonServiceImpl implements ICommonService {
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
Pattern timePattern = Pattern.compile("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}");
//如果是历史无证的修改类型为SP_TT并且枚举没有在登记类型中
if(Objects.isNull(RegistrationTypeEnum.getNameByType(formData.getString("type"))) && "jg_his_black".equals(formData.getString("dataSource"))){
formData.put("type","SP_TT");
if (Objects.isNull(RegistrationTypeEnum.getNameByType(formData.getString("type"))) && "jg_his_black".equals(formData.getString("dataSource"))) {
formData.put("type", "SP_TT");
}
//如果是历史无证的修改类型为SP_TT并且枚举没有在登记类型中
......@@ -2588,31 +2588,46 @@ public class CommonServiceImpl implements ICommonService {
File mergedPdfFile = null;
try {
List<File> pdfFiles = new ArrayList<>();
for (JSONObject formData : formDataList) {
File pdfFile = wordToPdf(fileName, wordPath, formData);
pdfFiles.add(pdfFile);
generatedFiles.add(pdfFile);
List<File> pdfFiles = formDataList.stream()
.map(formData -> {
File pdfFile = null;
try {
pdfFile = wordToPdf(fileName, wordPath, formData);
} catch (Exception e) {
throw new RuntimeException(e);
}
if (pdfFile != null && pdfFile.exists()) {
generatedFiles.add(pdfFile);
}
return pdfFile;
})
.filter(Objects::nonNull)
.collect(Collectors.toList());
if (!pdfFiles.isEmpty()) {
mergedPdfFile = mergePdfFiles(pdfFiles, fileName + "合并.pdf");
if (mergedPdfFile.exists()) {
generatedFiles.add(mergedPdfFile);
}
}
mergedPdfFile = mergePdfFiles(pdfFiles, fileName + "合并.pdf");
String uploadedUrl = uploadFile(mergedPdfFile, "useRegistrationFormFiles");
return MapBuilder.<String, Object>create().put("useRegistrationFormUrl", uploadedUrl).build();
return Collections.singletonMap("useRegistrationFormUrl", uploadedUrl);
} catch (Exception e) {
throw new RuntimeException(e);
log.error("生成或上传文件失败", e);
throw new RuntimeException("文件处理失败", e);
} finally {
for (File file : generatedFiles) {
try {
Files.deleteIfExists(file.toPath());
} catch (Exception e) {
log.error("文件找不到,删除失败:{}", e);
}
}
if (mergedPdfFile != null) {
try {
Files.deleteIfExists(mergedPdfFile.toPath());
} catch (Exception e) {
log.error("合并 PDF 文件删除失败:{}", e);
}
generatedFiles.forEach(this::deleteFileSafely);
}
}
/**
* 安全删除文件方法
*/
private void deleteFileSafely(File file) {
if (file != null && file.exists()) {
try {
Files.deleteIfExists(file.toPath());
} catch (IOException e) {
log.error("删除文件失败: {}", file.getAbsolutePath(), e);
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment