From 9f955be440cad5e6b868800ff0a0acd17c0a3004 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 목, 13 1월 2022 15:30:35 +0900 Subject: [PATCH] - issue_company 테이블에 컬럼 추가 및 'tel' 컬럼 사이즈 변경 - 이슈 추가,수정 시 업체 추가된 항목들 추가 - 하위이슈 페이징 오류 수정 --- src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java | 78 +++++++++++++++++++++++++++------------ 1 files changed, 54 insertions(+), 24 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 d91bec3..95d5d2b 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IspFieldServiceImpl.java @@ -6,9 +6,11 @@ import kr.wisestone.owl.constant.MsgConstants; import kr.wisestone.owl.domain.CompanyField; import kr.wisestone.owl.domain.IspField; +import kr.wisestone.owl.domain.Priority; 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; @@ -24,10 +26,12 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.ui.Model; 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 +49,9 @@ private WorkspaceService workspaceService; @Autowired + private CompanyFieldService companyFieldService; + + @Autowired private ExcelView excelView; @Autowired @@ -58,14 +65,28 @@ // Isp 異붽� @Override public IspField add(IspFieldForm IspFieldForm) { - // url �쑀�슚�꽦 泥댄겕 - if(IspFieldForm.getUrl() != null){ - this.verifyUrl(IspFieldForm.getUrl(), null); + if (IspFieldForm.getTelList() != null && IspFieldForm.getTelList().size() > 0) { + String tels = IspFieldForm.getTelList().toString(); + if (tels.contains("[")) { + tels = tels.substring(1, tels.indexOf("]")); + } + IspFieldForm.setTel(tels.trim()); + } + if (IspFieldForm.getEmailList() != null && IspFieldForm.getEmailList().size() > 0) { + String emails = IspFieldForm.getEmailList().toString(); + if (emails.contains("[")) { + emails = emails.substring(1, emails.indexOf("]")); + } + IspFieldForm.setEmail(emails.trim()); } - 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 紐⑸줉�쓣 媛��졇�삩�떎. @@ -81,22 +102,9 @@ return this.convertIspVoToMap(results, totalIspCount, pageable, resJsonData); } - // url �쑀�슚�꽦 泥댄겕 - private void verifyUrl(String url, Long id) { - 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 @@ -114,9 +122,19 @@ // Isp �젙濡쒕�� �닔�젙�븳�떎. @Override public void modify(IspFieldForm IspFieldForm) { - if(IspFieldForm.getUrl() != null){ - // url �쑀�슚�꽦 泥댄겕 - this.verifyUrl(IspFieldForm.getUrl(), IspFieldForm.getId()); + if (IspFieldForm.getTelList() != null && IspFieldForm.getTelList().size() > 0) { + String tels = IspFieldForm.getTelList().toString(); + if (tels.contains("[")) { + tels = tels.substring(1, tels.indexOf("]")); + } + IspFieldForm.setTel(tels.trim()); + } + if (IspFieldForm.getEmailList() != null && IspFieldForm.getEmailList().size() > 0) { + String emails = IspFieldForm.getEmailList().toString(); + if (emails.contains("[")) { + emails = emails.substring(1, emails.indexOf("]")); + } + IspFieldForm.setEmail(emails.trim()); } IspField IspField = ConvertUtil.copyProperties(IspFieldForm, IspField.class); @@ -132,11 +150,23 @@ 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(); } + @Override + @Transactional(readOnly = true) + public List<IspField> findAll() { + return this.ispFieldRepository.findAll(); + } + // Isp 紐⑸줉�쓣 �뿊��濡� �떎�슫濡쒕뱶 �븳�떎. @Override public ModelAndView downloadExcel(HttpServletRequest request, Model model) { -- Gitblit v1.8.0