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 | 62 ++++++++++++++++++------------- 1 files changed, 36 insertions(+), 26 deletions(-) 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 110f026..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; @@ -28,6 +29,7 @@ import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; +import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -45,6 +47,9 @@ private WorkspaceService workspaceService; @Autowired + private CompanyFieldService companyFieldService; + + @Autowired private ExcelView excelView; @Autowired @@ -58,12 +63,22 @@ // Isp 異붽� @Override public IspField add(IspFieldForm IspFieldForm) { - // url �쑀�슚�꽦 泥댄겕 - this.verifyUrl(IspFieldForm.getUrl(), null); + if (IspFieldForm.getTelList() != null && IspFieldForm.getTelList().size() > 0) { + String[] tels = ConvertUtil.ToArray(IspFieldForm.getTelList()); + IspFieldForm.setTel(Arrays.toString(tels)); + } + if (IspFieldForm.getEmailList() != null && IspFieldForm.getEmailList().size() > 0) { + String[] emails = ConvertUtil.ToArray(IspFieldForm.getEmailList()); + IspFieldForm.setEmail(Arrays.toString(emails)); + } - IspField IspField = ConvertUtil.copyProperties(IspFieldForm, IspField.class); - ispFieldRepository.saveAndFlush(IspField); - return IspField; + IspField ispField = ConvertUtil.copyProperties(IspFieldForm, IspField.class); + if (ispField.getCode() != null && !ispField.getCode().equals("")) { + ispFieldRepository.saveAndFlush(ispField); + } else { + throw new OwlRuntimeException(this.messageAccessor.getMessage(MsgConstants.ISP_CODE_NOT_ENTER)); + } + return ispField; } // Isp 紐⑸줉�쓣 媛��졇�삩�떎. @@ -79,26 +94,9 @@ return this.convertIspVoToMap(results, totalIspCount, pageable, resJsonData); } - // url �쑀�슚�꽦 泥댄겕 - private void verifyUrl(String url, Long id) { - if (StringUtils.isEmpty(url)) { - throw new OwlRuntimeException( - this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_NOT_URL)); - } - IspField ispField; - - if(id == null){ - ispField = this.ispFieldRepository.findByUrl(url); - } else { - ispField = this.ispFieldRepository.findByUrlAndIdNot(url,id); - } - - if (ispField != null) { - throw new OwlRuntimeException( - this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_USED_URL)); - } + public Map<String, Object> find(Long id) { + return this.ispFieldMapper.findById(id); } - // Isp �긽�꽭 議고쉶�븳�떎. @Override @@ -116,8 +114,14 @@ // Isp �젙濡쒕�� �닔�젙�븳�떎. @Override public void modify(IspFieldForm IspFieldForm) { - // url �쑀�슚�꽦 泥댄겕 - this.verifyUrl(IspFieldForm.getUrl(), IspFieldForm.getId()); + if (IspFieldForm.getTelList() != null && IspFieldForm.getTelList().size() > 0) { + String[] tels = ConvertUtil.ToArray(IspFieldForm.getTelList()); + IspFieldForm.setTel(Arrays.toString(tels)); + } + if (IspFieldForm.getEmailList() != null && IspFieldForm.getEmailList().size() > 0) { + String[] emails = ConvertUtil.ToArray(IspFieldForm.getEmailList()); + IspFieldForm.setEmail(Arrays.toString(emails)); + } IspField IspField = ConvertUtil.copyProperties(IspFieldForm, IspField.class); ispFieldRepository.saveAndFlush(IspField); @@ -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(); } -- Gitblit v1.8.0