diff --git a/src/main/java/com/eactive/apim/portal/apps/community/partnership/controller/PartnershipApplicationController.java b/src/main/java/com/eactive/apim/portal/apps/community/partnership/controller/PartnershipApplicationController.java index 07eedda..4b053a5 100644 --- a/src/main/java/com/eactive/apim/portal/apps/community/partnership/controller/PartnershipApplicationController.java +++ b/src/main/java/com/eactive/apim/portal/apps/community/partnership/controller/PartnershipApplicationController.java @@ -3,6 +3,7 @@ package com.eactive.apim.portal.apps.community.partnership.controller; import com.eactive.apim.portal.apps.community.partnership.dto.PartnershipApplicationDTO; import com.eactive.apim.portal.apps.community.partnership.service.PartnershipApplicationFacade; import com.eactive.apim.portal.common.util.SecurityUtil; +import com.eactive.apim.portal.common.util.UserTypeUtil; import java.io.IOException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -38,6 +39,7 @@ public class PartnershipApplicationController { } model.addAttribute("partnership", new PartnershipApplicationDTO()); + model.addAttribute("isInternalUser", UserTypeUtil.isCurrentUserInternal()); return "apps/community/mainPartnershipForm"; } diff --git a/src/main/java/com/eactive/apim/portal/apps/community/partnership/service/PartnershipApplicationFacadeImpl.java b/src/main/java/com/eactive/apim/portal/apps/community/partnership/service/PartnershipApplicationFacadeImpl.java index c9019c7..0cc7d4b 100644 --- a/src/main/java/com/eactive/apim/portal/apps/community/partnership/service/PartnershipApplicationFacadeImpl.java +++ b/src/main/java/com/eactive/apim/portal/apps/community/partnership/service/PartnershipApplicationFacadeImpl.java @@ -2,6 +2,9 @@ package com.eactive.apim.portal.apps.community.partnership.service; import com.eactive.apim.portal.apps.community.partnership.dto.PartnershipApplicationDTO; import com.eactive.apim.portal.apps.community.partnership.mapper.PartnershipApplicationMapper; +import com.eactive.apim.portal.common.user.PortalAuthenticatedUser; +import com.eactive.apim.portal.common.util.SecurityUtil; +import com.eactive.apim.portal.common.util.UserTypeUtil; import com.eactive.apim.portal.file.entity.FileInfo; import com.eactive.apim.portal.file.service.FileService; import com.eactive.apim.portal.file.service.FileTypeContext; @@ -25,8 +28,15 @@ public class PartnershipApplicationFacadeImpl implements PartnershipApplicationF FileInfo file = null; if (!partnershipApplicationDTO.getFiles().isEmpty()) { - FileTypeContext.setFileType("business"); - file = fileService.createFile(partnershipApplicationDTO.getFiles()); + try { + PortalAuthenticatedUser user = SecurityUtil.getPortalAuthenticatedUser(); + FileService.setInternalUserContext(UserTypeUtil.isInternalUser(user)); + + FileTypeContext.setFileType("business"); + file = fileService.createFile(partnershipApplicationDTO.getFiles()); + } finally { + FileService.clearInternalUserContext(); + } } PartnershipApplication partnershipApplication = partnershipApplicationMapper.toEntity(partnershipApplicationDTO); if (file != null) { diff --git a/src/main/java/com/eactive/apim/portal/apps/community/qna/controller/InquiryController.java b/src/main/java/com/eactive/apim/portal/apps/community/qna/controller/InquiryController.java index 2c4eb39..5e99a18 100644 --- a/src/main/java/com/eactive/apim/portal/apps/community/qna/controller/InquiryController.java +++ b/src/main/java/com/eactive/apim/portal/apps/community/qna/controller/InquiryController.java @@ -5,6 +5,7 @@ import com.eactive.apim.portal.apps.community.qna.dto.InquirySearch; import com.eactive.apim.portal.apps.community.qna.service.InquiryFacade; import com.eactive.apim.portal.common.user.PortalAuthenticatedUser; import com.eactive.apim.portal.common.util.SecurityUtil; +import com.eactive.apim.portal.common.util.UserTypeUtil; import java.io.IOException; import org.springframework.data.domain.Page; @@ -67,6 +68,7 @@ public class InquiryController { @GetMapping("/new") public String newInquiryForm(Model model) { model.addAttribute("inquiry", new InquiryDTO()); + model.addAttribute("isInternalUser", UserTypeUtil.isCurrentUserInternal()); return APPS_COMMUNITY_MAIN_INQUIRY_FORM; } @@ -77,6 +79,7 @@ public class InquiryController { public String editInquiryForm(@RequestParam("id") String id, Model model) { InquiryDTO inquiry = inquiryFacade.getMyInquiry(SecurityUtil.getPortalAuthenticatedUser(), id); model.addAttribute("inquiry", inquiry); + model.addAttribute("isInternalUser", UserTypeUtil.isCurrentUserInternal()); return APPS_COMMUNITY_MAIN_INQUIRY_FORM; } diff --git a/src/main/java/com/eactive/apim/portal/apps/community/qna/service/InquiryFacadeImpl.java b/src/main/java/com/eactive/apim/portal/apps/community/qna/service/InquiryFacadeImpl.java index 9f84e7c..5b7af77 100644 --- a/src/main/java/com/eactive/apim/portal/apps/community/qna/service/InquiryFacadeImpl.java +++ b/src/main/java/com/eactive/apim/portal/apps/community/qna/service/InquiryFacadeImpl.java @@ -6,6 +6,7 @@ import com.eactive.apim.portal.apps.community.qna.mapper.InquiryMapper; import com.eactive.apim.portal.common.user.PortalAuthenticatedUser; import com.eactive.apim.portal.common.util.SecurityUtil; import com.eactive.apim.portal.common.util.StringMaskingUtil; +import com.eactive.apim.portal.common.util.UserTypeUtil; import com.eactive.apim.portal.file.entity.FileInfo; import com.eactive.apim.portal.file.service.FileService; import com.eactive.apim.portal.file.service.FileTypeContext; @@ -83,8 +84,15 @@ public class InquiryFacadeImpl implements InquiryFacade { FileInfo file = null; if (!inquiryDTO.getFiles().isEmpty()) { - FileTypeContext.setFileType("qna"); - file = fileService.createFile(inquiryDTO.getFiles()); + try { + PortalAuthenticatedUser user = SecurityUtil.getPortalAuthenticatedUser(); + FileService.setInternalUserContext(UserTypeUtil.isInternalUser(user)); + + FileTypeContext.setFileType("qna"); + file = fileService.createFile(inquiryDTO.getFiles()); + } finally { + FileService.clearInternalUserContext(); + } } Inquiry inquiry = inquiryMapper.toEntity(inquiryDTO); @@ -104,12 +112,17 @@ public class InquiryFacadeImpl implements InquiryFacade { public void updateUserInquiry(PortalAuthenticatedUser user, String id, InquiryDTO inquiryDTO) throws IOException { Inquiry existingInquiry = inquiryService.getMyInquiry(user, id); - // 파일이 새로 업로드된 경우 if (!inquiryDTO.getFiles().isEmpty() && !inquiryDTO.getFiles().get(0).isEmpty()) { - FileTypeContext.setFileType("qna"); - FileInfo file = fileService.createFile(inquiryDTO.getFiles()); - if(file != null) { - inquiryDTO.setAttachFile(file.getFileId()); + try { + FileService.setInternalUserContext(UserTypeUtil.isInternalUser(user)); + + FileTypeContext.setFileType("qna"); + FileInfo file = fileService.createFile(inquiryDTO.getFiles()); + if(file != null) { + inquiryDTO.setAttachFile(file.getFileId()); + } + } finally { + FileService.clearInternalUserContext(); } } else if (existingInquiry.getAttachFile() != null && inquiryDTO.getAttachFile() == null) { fileService.deleteFile(inquiryDTO.getAttachFile()); diff --git a/src/main/resources/templates/views/apps/community/mainInquiryForm.html b/src/main/resources/templates/views/apps/community/mainInquiryForm.html index dd22058..93d1aa9 100644 --- a/src/main/resources/templates/views/apps/community/mainInquiryForm.html +++ b/src/main/resources/templates/views/apps/community/mainInquiryForm.html @@ -94,7 +94,7 @@