게시판 첨부파일 버그 수정
eapim-admin CI / build (push) Has been cancelled

This commit is contained in:
eastargh
2026-09-03 10:09:29 +09:00
parent 7117420f38
commit 1ba140ddea
2 changed files with 9 additions and 1 deletions
@@ -530,6 +530,10 @@
if (confirm("<%= localeMessage.getString("common.checkSave")%>") != true) return;
var formData = new FormData($("#ajaxForm")[0]);
// Summernote 그림 다이얼로그의 내부 파일 input(name="files")이 #ajaxForm 안에 있어
// 선택한 이미지가 지워지지 않고 남아 있으면 여기서 함께 딸려 온다.
// 본 화면은 첨부파일 기능을 쓰지 않으므로 항상 제거한다.
formData.delete("files");
formData.set("useYn", $("#useYn").is(":checked") ? "Y" : "N");
formData.set("fixYn", $("#fixYn").is(":checked") ? "Y" : "N");
formData.set("noticeDetail", $('#contents').summernote('code'));
@@ -60,6 +60,9 @@ public class PortalNoticeManService extends BaseService {
private static final String MANUAL_TITLE_KEYWORD = "장애";
private String decodeString(String value) {
if (value == null) {
return null;
}
if (ContainerUtil.get() == ContainerUtil.TOMCAT) {
try {
return new String(value.getBytes("euc-kr"), StandardCharsets.UTF_8);
@@ -433,7 +436,8 @@ public class PortalNoticeManService extends BaseService {
MultipartFile file = portalNoticeUI.getFiles();
if (file != null && !file.isEmpty()) { // 새로운 파일이 업로드된 경우에만 처리
String decodedFileName = decodeString(portalNoticeUI.getFileName());
String fileName = StringUtils.defaultIfBlank(portalNoticeUI.getFileName(), file.getOriginalFilename());
String decodedFileName = decodeString(fileName);
FileTypeContext.setFileType("notice");
FileInfo fileInfo = fileService.createOrUpdateSingleFile(portalNotice.getFileId(), file, decodedFileName, true);