| | |
| | | private WorkflowService workflowService; |
| | | |
| | | @Autowired |
| | | private WorkflowDepartmentService workflowDepartmentService; |
| | | |
| | | @Autowired |
| | | private ProjectService projectService; |
| | | |
| | | @Autowired |
| | | private ProjectRoleService projectRoleService; |
| | | |
| | | @Autowired |
| | | private WorkspaceService workspaceService; |
| | |
| | | |
| | | switch (projectType) { |
| | | case BTS_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, "악성 도메인", "", "#ff5f99", 0L)); // 버그 |
| | | issueTypes.add(new IssueType(workspace, workflow, "경유지 대응", "", "#3598fe", 0L)); // 개선 |
| | | issueTypes.add(new IssueType(workspace, workflow, "악성 도메인", "", "#ff5f99", 0L, false)); // 버그 |
| | | issueTypes.add(new IssueType(workspace, workflow, "경유지 대응", "", "#3598fe", 0L, false)); // 개선 |
| | | break; |
| | | |
| | | case RMS_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, "유포지 대응", "", "#3bcde2", 0L)); // 요구 사항 |
| | | issueTypes.add(new IssueType(workspace, workflow, "유포지 대응", "", "#3bcde2", 0L, false)); // 요구 사항 |
| | | break; |
| | | |
| | | case TCM_PROJECT: |
| | | issueTypes.add(new IssueType(workspace, workflow, "분석결과 대응", "", "#008ca7", 0L)); // 테스트 케이스, 실행 순서, 전제 조건, 기대 결과 |
| | | issueTypes.add(new IssueType(workspace, workflow, "분석결과 대응", "", "#008ca7", 0L, false)); // 테스트 케이스, 실행 순서, 전제 조건, 기대 결과 |
| | | break; |
| | | } |
| | | this.issueTypeRepository.saveAll(issueTypes); |
| | |
| | | Project project = this.projectService.getProject(issueTypeForm.getProjectId()); |
| | | issueType.setProject(project); |
| | | |
| | | // 워크플로우의 담당부서와 동일하게 세팅 |
| | | this.setDepartmentOfProject(project, workflow); |
| | | |
| | | issueType.setUsePartner(issueTypeForm.getUsePartner()); |
| | | |
| | | issueType.setInheritPartners(issueTypeForm.getInheritPartners()); |
| | | |
| | | return this.issueTypeRepository.saveAndFlush(issueType); |
| | | } |
| | | |
| | | /** |
| | | * 워크플로우의 담당부서와 동일하게 세팅 |
| | | * @param project Project |
| | | * @param workflow Workflow |
| | | */ |
| | | private void setDepartmentOfProject(Project project, Workflow workflow) { |
| | | List<WorkflowDepartment> workflowDepartments = this.workflowDepartmentService.find(workflow.getId()); |
| | | |
| | | // 해당 워크플로우의 담당부서가 존재 할 경우 해당 프로젝트의 담당부서에도 추가 |
| | | if (workflowDepartments != null && workflowDepartments.size() > 0) { |
| | | ProjectRole projectRole = this.projectRoleService.findByProjectIdAndRoleType(project.getId(), ProjectRole.TYPE_DEFAULT); |
| | | |
| | | for (WorkflowDepartment workflowDepartment : workflowDepartments) { |
| | | // 프로젝트 담당부서로 추가 |
| | | projectRole.addDepartment(workflowDepartment.getDepartment()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 이름 유효성 체크 |
| | |
| | | Project project = this.projectService.getProject(issueTypeForm.getProjectId()); |
| | | issueType.setProject(project); |
| | | |
| | | // 워크플로우의 담당부서와 동일하게 세팅 |
| | | this.setDepartmentOfProject(project, workflow); |
| | | |
| | | issueType.setUsePartner(issueTypeForm.getUsePartner()); |
| | | |
| | | issueType.setInheritPartners(issueTypeForm.getInheritPartners()); |
| | | |
| | | /*if(issueTypeForm.getCompanyId() != null){ |
| | | CompanyField companyField = this.companyFieldService.getCompany(issueTypeForm.getCompanyId()); |
| | |
| | | return this.issueTypeRepository.findByWorkspaceId(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId()); |
| | | } |
| | | |
| | | // 워크플로우 ID로 이슈 유형 조회 |
| | | @Override |
| | | @Transactional(readOnly = true) |
| | | public List<IssueType> findByWorkflowId(Long id) { |
| | | return this.issueTypeRepository.findByWorkflowId(id); |
| | | } |
| | | |
| | | // 이슈 타입 필드 목록을 엑셀로 다운로드 한다. |
| | | @Override |
| | | @Transactional |