OWL ITS + 탐지시스템(인터넷 진흥원)
이민희
2021-11-24 fde64479e1c100a9667c40d5d1ae07cba4713959
src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -2627,28 +2627,23 @@
    @Transactional
    @Override
    public void modifyParentIssue(IssueForm issueDownForm) {
        System.out.println(issueDownForm.getTitle());
        Issue issue = this.getIssue(issueDownForm.getId());
        Issue parentIssue = issue.getParentIssue();
        Issue issue = this.getIssue(issueDownForm.getId()); //하위 이슈
        Issue parentIssue = issue.getParentIssue(); //변경 전 하위이슈의 상위이슈
        Long newParentIssueId = issueDownForm.getParentIssueId();
        Long newParentIssueId = issueDownForm.getParentIssueId(); //변경할 하위이슈의 상위이슈
        StringBuilder sb = new StringBuilder();
        IssueHistoryType type =  IssueHistoryType.ADD;
        if (newParentIssueId != null) {
        if (newParentIssueId != null) { // 추가 할 경우
           // todo 이전 하위 일감 히스토리기록 필요
            type = IssueHistoryType.ADD;
            parentIssue = this.getIssue(newParentIssueId);
            issue.setParentIssue(parentIssue);
            this.issueHistoryService.detectDownIssues(type, issue, sb);
            parentIssue = this.getIssue(newParentIssueId); //상위이슈(myIssue)
            issue.setParentIssue(parentIssue); //myIssue를 하위이슈의 상위이슈로 set
            this.issueHistoryService.detectDownIssues(IssueHistoryType.ADD, issue, sb); //issue = 하위이슈
        } else  {
            // remove
            type = IssueHistoryType.DELETE;
            this.issueHistoryService.detectDownIssues(type, issue, sb);
            // 삭제 할 경우
            this.issueHistoryService.detectDownIssues(IssueHistoryType.DELETE, issue, sb);
            issue.setParentIssue(null);
        }
        this.issueHistoryService.addIssueHistory(parentIssue, IssueHistoryType.MODIFY, sb.toString());
        this.issueHistoryService.addIssueHistory(parentIssue, IssueHistoryType.MODIFY, sb.toString()); //parentIssue = myIssue(기록은 현재 상세페이지에 해야하니까)
        this.issueRepository.saveAndFlush(issue);
    }