Resolved conflicts

This commit is contained in:
nisha
2024-11-13 12:21:44 +05:30
20 changed files with 741 additions and 205 deletions

View File

@@ -6,7 +6,10 @@ import net.gepafin.tendermanagement.enums.StatusTypeEnum;
import net.gepafin.tendermanagement.model.request.EmailConfig;
import net.gepafin.tendermanagement.model.request.EmailLogRequest;
import net.gepafin.tendermanagement.service.feignClient.MailgunFeignClient;
import net.gepafin.tendermanagement.util.Validator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
@@ -18,24 +21,37 @@ public class MailgunEmailService implements EmailService {
@Autowired
private MailgunFeignClient mailgunFeignClient;
@Value("${isMailSendingEnabled}")
private String isEmailSendingEnabled;
@Autowired
private Validator validator;
@Autowired
private EmailLogDao emailLogDao;
@Override
public void sendEmail(String subject, String body, List<String> recipientEmails, EmailConfig emailConfig, EmailLogRequest emailLogRequest) {
if (Boolean.FALSE.equals(Boolean.parseBoolean(isEmailSendingEnabled))) {
return;
}
String domain = emailConfig.getDomain();
String from = emailConfig.getSender();
String apiKey = emailConfig.getApiKey();
String authHeader = "Basic " + Base64.getEncoder().encodeToString(("api:" + apiKey).getBytes());
// Send email via Mailgun API
ResponseEntity<Void> response = mailgunFeignClient.sendEmail(domain, from, recipientEmails, subject, body, authHeader);
if (!response.getStatusCode().is2xxSuccessful()) {
emailLogRequest.setSendStatus(StatusTypeEnum.FAILED.getValue());
emailLogRequest.setErrorMessage(String.valueOf(response.getStatusCode()));
EmailLogEntity emailLogEntity= emailLogDao.createEmailLog(emailLogRequest);
throw new RuntimeException("Failed to send email via Mailgun: " + response.getStatusCode());
if (Boolean.FALSE.equals(validator.isTestProfileActivated())) {
ResponseEntity<Void> response = mailgunFeignClient.sendEmail(domain, from, recipientEmails, subject, body, authHeader);
if (!response.getStatusCode().is2xxSuccessful()) {
emailLogRequest.setSendStatus(StatusTypeEnum.FAILED.getValue());
emailLogRequest.setErrorMessage(String.valueOf(response.getStatusCode()));
EmailLogEntity emailLogEntity= emailLogDao.createEmailLog(emailLogRequest);
throw new RuntimeException("Failed to send email via Mailgun: " + response.getStatusCode());
}
}
EmailLogEntity emailLogEntity= emailLogDao.createEmailLog(emailLogRequest);