| | |
| | | issueRelation.setRelationIssueType(condition.getRelationIssueType()); |
| | | |
| | | issueRelationRepository.saveAndFlush(issueRelation); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | issueHistoryService.detectRelationIssue(IssueHistoryType.ADD, issueRelation, sb); |
| | | issueHistoryService.addIssueHistory(issue, IssueHistoryType.MODIFY, sb.toString()); |
| | | } |
| | | } |
| | | |
| | | // 연관 일감 가져오기 |
| | | @Override |
| | | public List<IssueVo> findRelationIssue(Map<String, Object> resJsonData, IssueRelationCondition condition, Pageable pageable) { |
| | | List<IssueRelation> issueRelations = issueRelationRepository.findAllByIssueId(condition.getIssueId()); |
| | | List<IssueVo> issueVos = new ArrayList<>(); |
| | | List<IssueVo> issueVos = findRelationIssue(condition.getIssueId()); |
| | | |
| | | if (issueRelations != null) { |
| | | for (IssueRelation issueRelation : issueRelations) { |
| | | issueVos.add(ConvertUtil.copyProperties(issueRelation.getRelationIssue(), IssueVo.class)); |
| | | } |
| | | |
| | | int totalCount = issueVos.size(); |
| | | |
| | | resJsonData.put(Constants.RES_KEY_CONTENTS, issueVos); |
| | | resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(), |
| | | 1, totalCount)); |
| | | } |
| | | resJsonData.put(Constants.RES_KEY_CONTENTS, issueVos); |
| | | resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(), |
| | | 1, issueVos.size())); |
| | | |
| | | return issueVos; |
| | | } |
| | | |
| | | |
| | | // 연관 일감 가져오기 |
| | | @Override |
| | |
| | | @Override |
| | | @Transactional |
| | | public boolean removeRelationIssue(Map<String, Object> resJsonData, IssueRelationCondition condition) { |
| | | Long id = condition.getId(); |
| | | if (id != null) { |
| | | IssueRelation issueRelation = findOne(id); |
| | | if (issueRelation != null) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | issueHistoryService.detectRelationIssue(IssueHistoryType.DELETE, issueRelation, sb); |
| | | issueHistoryService.addIssueHistory(issueRelation.getIssue(), IssueHistoryType.MODIFY, sb.toString()); |
| | | //Long id = condition.getId(); |
| | | List<Long> relRemoveIds = condition.getRemoveIds(); |
| | | if (relRemoveIds != null && relRemoveIds.size() > 0) { |
| | | for (Long relId : relRemoveIds) { |
| | | IssueRelation issueRelation = findOne(relId); |
| | | if (issueRelation != null) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | issueHistoryService.detectRelationIssue(IssueHistoryType.DELETE, issueRelation, sb); |
| | | issueHistoryService.addIssueHistory(issueRelation.getIssue(), IssueHistoryType.MODIFY, sb.toString()); |
| | | |
| | | this.issueRelationRepository.deleteById(id); |
| | | |
| | | return true; |
| | | this.issueRelationRepository.deleteById(relId); |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | return false; |
| | | } |
| | | } |