From 1fac1465cdef9f3b4573edf1869af120c5cbee79 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 15 12월 2021 15:27:07 +0900 Subject: [PATCH] api 이슈 추가시 업체/isp/호스팅에 해당 도메인이 포함되면 해당 업체 자동 입력 --- src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 56 insertions(+), 0 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java index c2d6601..d259bbe 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java @@ -82,6 +82,15 @@ private ApiTokenService apiTokenService; @Autowired + private CompanyFieldService companyFieldService; + + @Autowired + private IspFieldService ispFieldService; + + @Autowired + private HostingFieldService hostingFieldService; + + @Autowired private CommonConfiguration configuration; @Autowired @@ -282,6 +291,8 @@ // �궗�슜�옄 �젙�쓽 �븘�뱶 �꽕�젙 issueForm.setIssueCustomFields(issueApiForm.getCustomFieldValues()); + // 媛숈� �룄硫붿씤 �뾽泥� 李얘린 + this.findCompanyField(issueForm); // api �엯�젰媛� �쟻�슜 ConvertUtil.copyProperties(issueApiForm, issueForm); @@ -293,6 +304,51 @@ } } + private void findCompanyField(IssueForm issueForm) { + if(issueForm.getIssueCustomFields() != null && issueForm.getIssueCustomFields().size() > 0) { + CompanyFieldCondition condition = new CompanyFieldCondition(); + List<Map<String, Object>> companyFields = this.companyFieldService.find(condition); + List<Map<String, Object>> issueCompanyFields = Lists.newArrayList(); + List<Map<String, Object>> issueIspFields = Lists.newArrayList(); + List<Map<String, Object>> issueHostingFields = Lists.newArrayList(); + + for (Map<String, Object> issueCustomField : issueForm.getIssueCustomFields()) { + int customFieldId = (Integer) issueCustomField.get("customFieldId"); + Long customId = (long) customFieldId; + CustomField customField = this.customFieldService.getCustomField(customId); + if(customField != null && customField.getCustomFieldType().toString().equals("SITE") && customField.getName().equals("�룄硫붿씤")) { + String useValue = issueCustomField.get("useValue").toString(); + if(companyFields != null && companyFields.size() > 0) { + for (Map<String, Object> companyField : companyFields) { + CompanyFieldVo companyFieldVo = ConvertUtil.convertMapToClass(companyField, CompanyFieldVo.class); + if(useValue.equals(companyFieldVo.getUrl())) { + companyField.put("companyId", companyField.get("id")); + issueCompanyFields.add(companyField); + if(companyFieldVo.getIspId() != null) { + Map<String, Object> ispField = this.ispFieldService.find(companyFieldVo.getIspId()); + if (ispField != null) { + ispField.put("ispId", ispField.get("id")); + issueIspFields.add(ispField); + } + } + if(companyFieldVo.getHostingId() != null) { + Map<String, Object> hostingField = this.hostingFieldService.find(companyFieldVo.getHostingId()); + if (hostingField != null) { + hostingField.put("hostingId", hostingField.get("id")); + issueHostingFields.add(hostingField); + } + } + } + } + } + } + issueForm.setIssueCompanyFields(issueCompanyFields); + issueForm.setIssueIspFields(issueIspFields); + issueForm.setIssueHostingFields(issueHostingFields); + } + } + } + private User convertToUser(String token) { // �넗�겙�쑝濡� �쑀�� �젙蹂� 媛��졇�삤湲� UserVo userVo = this.apiTokenService.certification(token); -- Gitblit v1.8.0