From eab3b913e90f709ccd7186d0fb77b095cd229c0d Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 12 1월 2022 16:01:49 +0900 Subject: [PATCH] ISP/호스팅 삭제 시 업체에 설정 되어있을경우 삭제 불가 --- src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java | 10 ++++++++++ src/main/java/kr/wisestone/owl/repository/CompanyFieldRepository.java | 6 ++++++ src/main/java/kr/wisestone/owl/service/CompanyFieldService.java | 4 ++++ src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java | 12 ++++++++++++ src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java | 13 +++++++++++-- src/main/java/kr/wisestone/owl/constant/MsgConstants.java | 2 ++ src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties | 9 ++++++++- 7 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/constant/MsgConstants.java b/src/main/java/kr/wisestone/owl/constant/MsgConstants.java index b5c9a1e..44ba22f 100644 --- a/src/main/java/kr/wisestone/owl/constant/MsgConstants.java +++ b/src/main/java/kr/wisestone/owl/constant/MsgConstants.java @@ -237,10 +237,12 @@ public static final String HOSTING_NOT_EXIST = "HOSTING_NOT_EXIST"; // �샇�뒪�똿�씠 議댁옱�븯吏� �븡�뒿�땲�떎. public static final String HOSTING_CODE_NOT_ENTER = "HOSTING_CODE_NOT_ENTER"; // �샇�뒪�똿�쓽 肄붾뱶�뒗 �븘�닔 �엯�젰 媛믪엯�땲�떎. public static final String HOSTING_REMOVE_NOT_SELECT = "HOSTING_REMOVE_NOT_SELECT"; // �궘�젣�븷 �샇�뒪�똿�씠 �꽑�깮�릺吏� �븡�븯�뒿�땲�떎. + public static final String HOSTING_EXIST_COMPANY = "HOSTING_EXIST_COMPANY"; // �뾽泥댁뿉 �꽕�젙�릺�뼱�엳�뒗 �샇�뒪�똿�씠 議댁옱�빀�땲�떎. public static final String ISP_NOT_EXIST = "ISP_NOT_EXIST"; // ISP媛� 議댁옱�븯吏� �븡�뒿�땲�떎. public static final String ISP_CODE_NOT_ENTER = "ISP_CODE_NOT_ENTER"; // ISP�쓽 肄붾뱶�뒗 �븘�닔 �엯�젰 媛믪엯�땲�떎. public static final String ISP_REMOVE_NOT_SELECT = "ISP_REMOVE_NOT_SELECT"; // �궘�젣�븷 ISP媛� �꽑�깮�릺吏� �븡�븯�뒿�땲�떎. + public static final String ISP_EXIST_COMPANY = "ISP_EXIST_COMPANY"; // �뾽泥댁뿉 �꽕�젙�릺�뼱�엳�뒗 ISP媛� 議댁옱�빀�땲�떎. public static final String PROJECT_NOT_INCLUDE_DEPARTMENT = "PROJECT_NOT_INCLUDE_DEPARTMENT"; // �꽑�깮�븳 遺��꽌 以� �봽濡쒖젥�듃�뿉 李몄뿬�븯怨� �엳吏� �븡�� 遺��꽌媛� �엳�뒿�땲�떎. public static final String EMAIL_TEMPLATE_NOT_EXIST = "EMAIL_TEMPLATE_NOT_EXIST"; // �씠硫붿씪 �뀥�뵆由우쓣 李얠쓣�닔 �뾾�뒿�땲�떎. diff --git a/src/main/java/kr/wisestone/owl/repository/CompanyFieldRepository.java b/src/main/java/kr/wisestone/owl/repository/CompanyFieldRepository.java index 3520b7e..640eb73 100644 --- a/src/main/java/kr/wisestone/owl/repository/CompanyFieldRepository.java +++ b/src/main/java/kr/wisestone/owl/repository/CompanyFieldRepository.java @@ -4,9 +4,15 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.repository.query.Param; +import java.util.List; + public interface CompanyFieldRepository extends JpaRepository<CompanyField, Long> { CompanyField findByUrl(@Param("url") String url); CompanyField findByUrlAndIdNot(@Param("url") String url, @Param("id") Long id); + + List<CompanyField> findByIspId(@Param("isp_id") Long id); + + List<CompanyField> findByHostingId(@Param("hosting_id") Long id); } diff --git a/src/main/java/kr/wisestone/owl/service/CompanyFieldService.java b/src/main/java/kr/wisestone/owl/service/CompanyFieldService.java index 7066067..746d179 100644 --- a/src/main/java/kr/wisestone/owl/service/CompanyFieldService.java +++ b/src/main/java/kr/wisestone/owl/service/CompanyFieldService.java @@ -21,6 +21,10 @@ CompanyField getCompany(Long id); + List<CompanyField> findByIsp(Long id); + + List<CompanyField> findByHosting(Long id); + void detailCompany(Map<String, Object> resJsonData, CompanyFieldCondition make); void modifyCompany(CompanyFieldForm make); diff --git a/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java index 12d42d4..e26401b 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java @@ -320,6 +320,18 @@ return companyFieldVos; } + // ISP ID 濡� 議고쉶�븳�떎 + @Override + public List<CompanyField> findByIsp(Long id) { + return this.companyFieldRepository.findByIspId(id); + } + + // HOSTING ID 濡� 議고쉶�븳�떎 + @Override + public List<CompanyField> findByHosting(Long id) { + return this.companyFieldRepository.findByHostingId(id); + } + // �뾽泥� ID 濡� 議고쉶�븳�떎 @Override public CompanyField getCompany(Long id) { diff --git a/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java index 73d49c4..4266bd9 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java @@ -9,6 +9,7 @@ import kr.wisestone.owl.exception.OwlRuntimeException; import kr.wisestone.owl.mapper.HostingFieldMapper; import kr.wisestone.owl.repository.HostingFieldRepository; +import kr.wisestone.owl.service.CompanyFieldService; import kr.wisestone.owl.service.HostingFieldService; import kr.wisestone.owl.service.WorkspaceService; import kr.wisestone.owl.util.ConvertUtil; @@ -44,6 +45,9 @@ @Autowired private WorkspaceService workspaceService; + + @Autowired + private CompanyFieldService companyFieldService; @Autowired private ExcelView excelView; @@ -127,11 +131,16 @@ public void remove(HostingFieldForm HostingFieldForm) { if (HostingFieldForm.getRemoveIds().size() < 1) { throw new OwlRuntimeException( - this.messageAccessor.getMessage(MsgConstants.COMPANY_REMOVE_NOT_SELECT)); + this.messageAccessor.getMessage(MsgConstants.HOSTING_REMOVE_NOT_SELECT)); } for (Long id : HostingFieldForm.getRemoveIds()) { + List<CompanyField> companyField = this.companyFieldService.findByHosting(id); + if (companyField != null && companyField.size() > 0) { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.HOSTING_EXIST_COMPANY)); + } else { this.hostingFieldRepository.deleteById(id); - + } } this.hostingFieldRepository.flush(); } diff --git a/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java index ff3f903..08d0ffc 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java @@ -9,6 +9,7 @@ import kr.wisestone.owl.exception.OwlRuntimeException; import kr.wisestone.owl.mapper.IspFieldMapper; import kr.wisestone.owl.repository.IspFieldRepository; +import kr.wisestone.owl.service.CompanyFieldService; import kr.wisestone.owl.service.IspFieldService; import kr.wisestone.owl.service.WorkspaceService; import kr.wisestone.owl.util.ConvertUtil; @@ -44,6 +45,9 @@ @Autowired private WorkspaceService workspaceService; + + @Autowired + private CompanyFieldService companyFieldService; @Autowired private ExcelView excelView; @@ -132,7 +136,13 @@ this.messageAccessor.getMessage(MsgConstants.ISP_REMOVE_NOT_SELECT)); } for (Long id : IspFieldForm.getRemoveIds()) { + List<CompanyField> companyField = this.companyFieldService.findByIsp(id); + if (companyField != null && companyField.size() > 0) { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.ISP_EXIST_COMPANY)); + } else { this.ispFieldRepository.deleteById(id); + } } this.ispFieldRepository.flush(); } diff --git a/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties b/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties index 23bcf21..90f9b48 100644 --- a/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties +++ b/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties @@ -215,5 +215,12 @@ COMPANYFIELD_NOT_URL = URL\uC774 \uC785\uB825\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. COMPANYFIELD_USED_URL = URL\uC774 \uC774\uBBF8 \uC0AC\uC6A9\uB418\uACE0 \uC788\uC2B5\uB2C8\uB2E4. +HOSTING_NOT_EXIST = \uD638\uC2A4\uD305\uC774 \uC874\uC7AC\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. HOSTING_CODE_NOT_ENTER = \uD638\uC2A4\uD305\uC758 \uCF54\uB4DC\uB294 \uD544\uC218 \uC785\uB825 \uAC12\uC785\uB2C8\uB2E4. -ISP_CODE_NOT_ENTER = ISP\uC758 \uCF54\uB4DC\uB294 \uD544\uC218 \uC785\uB825 \uAC12\uC785\uB2C8\uB2E4. \ No newline at end of file +HOSTING_REMOVE_NOT_SELECT = \uC0AD\uC81C\uD560 \uD638\uC2A4\uD305\uC774 \uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. +HOSTING_EXIST_COMPANY = \uC5C5\uCCB4\uC5D0 \uC124\uC815\uB418\uC5B4\uC788\uB294 \uD638\uC2A4\uD305\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4. + +ISP_NOT_EXIST = ISP\uAC00 \uC874\uC7AC\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. +ISP_CODE_NOT_ENTER = ISP\uC758 \uCF54\uB4DC\uB294 \uD544\uC218 \uC785\uB825 \uAC12\uC785\uB2C8\uB2E4. +ISP_EXIST_COMPANY = \uC5C5\uCCB4\uC5D0 \uC124\uC815\uB418\uC5B4\uC788\uB294 ISP\uAC00 \uC874\uC7AC\uD569\uB2C8\uB2E4. +ISP_REMOVE_NOT_SELECT = \uC0AD\uC81C\uD560 ISP\uAC00 \uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \ No newline at end of file -- Gitblit v1.8.0