diff --git a/src/main/java/com/navi/infra/portal/v2/approvalflow/service/ApprovalRequestServiceImpl.java b/src/main/java/com/navi/infra/portal/v2/approvalflow/service/ApprovalRequestServiceImpl.java index 4b9f1d6c..aa008af6 100644 --- a/src/main/java/com/navi/infra/portal/v2/approvalflow/service/ApprovalRequestServiceImpl.java +++ b/src/main/java/com/navi/infra/portal/v2/approvalflow/service/ApprovalRequestServiceImpl.java @@ -204,9 +204,10 @@ public class ApprovalRequestServiceImpl implements ApprovalRequestService { RequestType requestType = approvalRequest.getRequestType(); if (requestType.equals(CHANGE_REQUEST)) { try { - changeRequestService.reject(approvalRequest.getRequestId()); - changeRequestSlackService.handleRejectRequest(savedApproval.getRequestId(), - approvalRequestId, userId, approvalRequest.getTeamId()); + var changeRequest = changeRequestService.reject(approvalRequest.getRequestId()); + changeRequestSlackService.handleChangeRequestUpdate( + getManifest(approvalRequest).orElseThrow(), changeRequest + ); } catch (Exception e) { log.error("Error while updating reviewer DM on slack for approvalRequest {}", approvalRequestId, e); diff --git a/src/main/java/com/navi/infra/portal/v2/changerequest/service/ChangeRequestServiceImpl.java b/src/main/java/com/navi/infra/portal/v2/changerequest/service/ChangeRequestServiceImpl.java index 60685376..a88f9091 100644 --- a/src/main/java/com/navi/infra/portal/v2/changerequest/service/ChangeRequestServiceImpl.java +++ b/src/main/java/com/navi/infra/portal/v2/changerequest/service/ChangeRequestServiceImpl.java @@ -138,7 +138,9 @@ public class ChangeRequestServiceImpl implements ChangeRequestService { approvalService.saveAll(approvalRequests); try { - changeRequestSlackService.handleCloseRequest(crId, userId); + changeRequestSlackService.handleChangeRequestUpdate( + manifestService.fetchById(changeRequest.getManifestId()), changeRequest + ); } catch (Exception e) { log.error("Error while closing CR: {}", e.getMessage()); } diff --git a/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackService.java b/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackService.java index e18885d0..8cad366a 100644 --- a/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackService.java +++ b/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackService.java @@ -15,11 +15,6 @@ public interface ChangeRequestSlackService { void handleApproveRequest(Long changeRequestId, Long approvalRequestId, Long userId, Long teamId) throws IOException; - void handleRejectRequest(Long changeRequestId, Long approvalRequestId, Long userId, - Long teamId) throws IOException; - - void handleCloseRequest(Long changeRequestId, Long userId) throws IOException; - void handleChangeRequestUpdate(Manifest manifest, ChangeRequest changeRequest) throws IOException; @@ -27,5 +22,4 @@ public interface ChangeRequestSlackService { void closeRequest(String userEmail, Long requestId); - } diff --git a/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackServiceImpl.java b/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackServiceImpl.java index 9d8e47d7..ee139abe 100644 --- a/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackServiceImpl.java +++ b/src/main/java/com/navi/infra/portal/v2/jit/service/ChangeRequestSlackServiceImpl.java @@ -172,20 +172,6 @@ public class ChangeRequestSlackServiceImpl implements ChangeRequestSlackService + "teamId: {}", changeRequestId, approvalRequestId, userId, teamId); List requests = changeRequestSlackRepository .findAllPendingByApprovalRequestIdAndTeam(approvalRequestId, teamId); - handleSlackMessageUpdatePostReviewerAction(changeRequestId, RequestStatus.APPROVED, requests); - } - - private void handleCloseOrReject(Long changeRequestId, Long userId, RequestStatus statusToSet) - throws IOException { - log.info("Handling {} for changeRequestId: {}, userId: {}", statusToSet, changeRequestId, - userId); - List requests = - changeRequestSlackRepository.findAllNonApprovedByChangeRequestId(changeRequestId); - handleSlackMessageUpdatePostReviewerAction(changeRequestId, statusToSet, requests); - } - - private void handleSlackMessageUpdatePostReviewerAction(Long changeRequestId, - RequestStatus statusToSet, List requests) { var changeRequest = changeRequestService.findById(changeRequestId) .orElseThrow(() -> new IllegalStateException( String.format("Change request not found for id: %s", changeRequestId)) @@ -201,8 +187,8 @@ public class ChangeRequestSlackServiceImpl implements ChangeRequestSlackService updateReviewerDmOnSlack(request, changeRequestSlackUtil.getReviewerDm( manifestDiff, manifest.getEnvironment(), manifest.getTeam(), changeRequest, request.getApprovalRequest(), false, - SlackColor.fromStatus(statusToSet))); - request.setStatus(statusToSet); + SlackColor.fromStatus(RequestStatus.APPROVED))); + request.setStatus(RequestStatus.APPROVED); changeRequestSlackRepository.save(request); }); @@ -345,25 +331,6 @@ public class ChangeRequestSlackServiceImpl implements ChangeRequestSlackService handleApproval(changeRequestId, approvalRequestId, userId, teamId); } - @Transactional - public void handleRejectRequest(Long changeRequestId, Long approvalRequestId, Long userId, - Long teamId) throws IOException { - if (noSlackRequestsExistsForRequest(changeRequestId)) { - throw new IllegalStateException( - String.format("No slack messages found for CR id: %s", changeRequestId)); - } - handleCloseOrReject(changeRequestId, userId, RequestStatus.REJECTED); - } - - @Transactional - public void handleCloseRequest(Long changeRequestId, Long userId) throws IOException { - if (noSlackRequestsExistsForRequest(changeRequestId)) { - throw new IllegalStateException( - String.format("No slack messages found for CR id: %s", changeRequestId)); - } - handleCloseOrReject(changeRequestId, userId, RequestStatus.CLOSED); - } - @Transactional public void handleChangeRequestUpdate(Manifest manifest, ChangeRequest changeRequest) { List requests = changeRequestSlackRepository