INFRA-3232 | Dhruv | Code cleanup and current state update for manifest post close

This commit is contained in:
dhruvjoshi
2024-08-22 17:12:28 +05:30
parent 08c71ac36e
commit a80f4029bc
4 changed files with 9 additions and 45 deletions

View File

@@ -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);

View File

@@ -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());
}

View File

@@ -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);
}

View File

@@ -172,20 +172,6 @@ public class ChangeRequestSlackServiceImpl implements ChangeRequestSlackService
+ "teamId: {}", changeRequestId, approvalRequestId, userId, teamId);
List<SlackChangeRequest> 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<SlackChangeRequest> requests =
changeRequestSlackRepository.findAllNonApprovedByChangeRequestId(changeRequestId);
handleSlackMessageUpdatePostReviewerAction(changeRequestId, statusToSet, requests);
}
private void handleSlackMessageUpdatePostReviewerAction(Long changeRequestId,
RequestStatus statusToSet, List<SlackChangeRequest> 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<SlackChangeRequest> requests = changeRequestSlackRepository