| | |
| | | import com.google.common.collect.Lists; |
| | | import kr.wisestone.owl.common.ExcelConditionCheck; |
| | | import kr.wisestone.owl.constant.Constants; |
| | | import kr.wisestone.owl.constant.MngPermission; |
| | | import kr.wisestone.owl.constant.MsgConstants; |
| | | import kr.wisestone.owl.constant.UseCompany; |
| | | import kr.wisestone.owl.domain.*; |
| | | import kr.wisestone.owl.domain.enumType.ProjectType; |
| | | import kr.wisestone.owl.exception.OwlRuntimeException; |
| | |
| | | private WorkflowService workflowService; |
| | | |
| | | @Autowired |
| | | private ProjectService projectService; |
| | | |
| | | @Autowired |
| | | private WorkspaceService workspaceService; |
| | | |
| | | @Autowired |
| | | private CompanyFieldService companyFieldService; |
| | | |
| | | @Autowired |
| | | private IspFieldService ispFieldService; |
| | | |
| | | @Autowired |
| | | private HostingFieldService hostingFieldService; |
| | | |
| | | @Autowired |
| | | private IssueTypeMapper issueTypeMapper; |
| | |
| | | |
| | | switch (projectType) { |
| | | case BTS_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, this.messageAccessor.message("common.bug"), "", "#ff5f99")); // 버그 |
| | | issueTypes.add(new IssueType(workspace, workflow, this.messageAccessor.message("common.improvement"), "", "#3598fe")); // 개선 |
| | | issueTypes.add(new IssueType(workspace, workflow, "악성 도메인", "", "#ff5f99")); // 버그 |
| | | issueTypes.add(new IssueType(workspace, workflow, "경유지 대응", "", "#3598fe")); // 개선 |
| | | break; |
| | | |
| | | case RMS_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, this.messageAccessor.message("common.requirement"), "", "#3bcde2")); // 요구 사항 |
| | | issueTypes.add(new IssueType(workspace, workflow, "유포지 대응", "", "#3bcde2")); // 요구 사항 |
| | | break; |
| | | |
| | | case TCM_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, this.messageAccessor.message("common.testcase"), "", "#008ca7")); // 테스트 케이스, 실행 순서, 전제 조건, 기대 결과 |
| | | issueTypes.add(new IssueType(workspace, workflow, "분석결과 대응", "", "#008ca7")); // 테스트 케이스, 실행 순서, 전제 조건, 기대 결과 |
| | | break; |
| | | } |
| | | |
| | |
| | | issueType.setWorkspace(workspace); |
| | | Workflow workflow = this.workflowService.getWorkflow(issueTypeForm.getWorkflowId()); |
| | | issueType.setWorkflow(workflow); |
| | | Project project = this.projectService.getProject(issueTypeForm.getProjectId()); |
| | | issueType.setProject(project); |
| | | |
| | | issueType.setUseCompany(issueTypeForm.getUseCompany()); |
| | | |
| | | return this.issueTypeRepository.saveAndFlush(issueType); |
| | | } |
| | |
| | | this.setUseIssueTypeByWorkflow(issueTypeVos); |
| | | } |
| | | |
| | | this.setUseIssueTypeByProject(issueTypeVos); |
| | | /*this.setUseIssueTypeByCompanyField(issueTypeVos); |
| | | this.setUseIssueTypeByIspField(issueTypeVos); |
| | | this.setUseIssueTypeByHostingField(issueTypeVos);*/ |
| | | |
| | | resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(), |
| | | totalPage, totalCount)); |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | // 이슈 유형에 연결된 프로젝트 정보를 셋팅한다. |
| | | private void setUseIssueTypeByProject(List<IssueTypeVo> issueTypeVos) { |
| | | for (IssueTypeVo issueTypeVo : issueTypeVos) { |
| | | IssueType issueType = this.getIssueType(issueTypeVo.getId()); |
| | | |
| | | Project project = issueType.getProject(); |
| | | if (project != null) { |
| | | issueTypeVo.setProjectVo(ConvertUtil.copyProperties(issueType.getProject(), ProjectVo.class)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /*// 이슈 유형에 연결된 업체 정보를 셋팅한다. |
| | | private void setUseIssueTypeByCompanyField(List<IssueTypeVo> issueTypeVos) { |
| | | for (IssueTypeVo issueTypeVo : issueTypeVos){ |
| | | IssueType issueType = this.getIssueType(issueTypeVo.getId()); |
| | | CompanyField companyField = issueType.getCompanyField(); |
| | | if(companyField != null){ |
| | | issueTypeVo.setCompanyFieldVo(ConvertUtil.copyProperties(issueType.getCompanyField(), CompanyFieldVo.class)); |
| | | } |
| | | } |
| | | } |
| | | */ |
| | | |
| | | // 이슈 유형 상세 정보를 조회한다. |
| | | @Override |
| | | @Transactional(readOnly = true) |
| | |
| | | issueTypeVo.setWorkflowVo(ConvertUtil.copyProperties(issueType.getWorkflow(), WorkflowVo.class)); |
| | | break; |
| | | } |
| | | |
| | | Project project = issueType.getProject(); |
| | | if (project != null) { |
| | | issueTypeVo.setProjectVo(ConvertUtil.copyProperties(issueType.getProject(), ProjectVo.class)); |
| | | } |
| | | Integer using = issueType.getUseCompany() != null ? issueType.getUseCompany().intValue() : 0; |
| | | |
| | | List<UseCompanyVo> useCompanyVos = Lists.newArrayList(); |
| | | for (Integer useAbleCompany : UseCompany.useCompanies) {// 1 // 2 // 4 |
| | | UseCompanyVo useCompanyVo = UseCompany.checkUseCompany(using, useAbleCompany);//3, 1 / 3, 2 / 3, 4 |
| | | |
| | | if (useCompanyVo != null) { |
| | | useCompanyVos.add(useCompanyVo); |
| | | } |
| | | } |
| | | issueTypeVo.setUseCompanyVos(useCompanyVos); |
| | | } |
| | | |
| | | resJsonData.put(Constants.RES_KEY_CONTENTS, issueTypeVo); |
| | |
| | | ConvertUtil.copyProperties(issueTypeForm, issueType, "id", "issueTypeType"); |
| | | issueType.setWorkflow(workflow); |
| | | |
| | | Project project = this.projectService.getProject(issueTypeForm.getProjectId()); |
| | | issueType.setProject(project); |
| | | |
| | | issueType.setUseCompany(issueTypeForm.getUseCompany()); |
| | | |
| | | /*if(issueTypeForm.getCompanyId() != null){ |
| | | CompanyField companyField = this.companyFieldService.getCompany(issueTypeForm.getCompanyId()); |
| | | issueType.setCompanyField(companyField); |
| | | }*/ |
| | | // issueType.setCompanyYn(issueTypeForm.getCompanyYn()); |
| | | |
| | | this.issueTypeRepository.saveAndFlush(issueType); |
| | | |
| | | return issueType; |