EmailApi.java 1.44 KB
Newer Older
1
// package web.multitask.app.api;
2 3 4 5 6 7 8 9 10 11 12
 package web.multitask.trismegistoservices.api;
 import javax.mail.internet.MimeMessage;
 import lombok.AllArgsConstructor;
 import org.json.JSONObject;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.ModelAttribute;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import web.multitask.trismegistoservices.model.GmailRequest;
13
// import web.multitask.trismegistoservices.mysql.EmailMysql;
14 15 16 17 18 19 20
 import web.multitask.trismegistoservices.services.google.GmailService;


 @RestController
 @RequestMapping("/gmail")
@AllArgsConstructor
 public class EmailApi {
21

22 23 24 25 26 27 28 29 30 31 32 33 34 35
     private final GmailService emailService;

     @RequestMapping(path = "/public/generate", method = RequestMethod.POST, consumes = {MediaType.MULTIPART_FORM_DATA_VALUE})
     public ResponseEntity<?> full(@ModelAttribute GmailRequest request) {
         try {
             MimeMessage message = emailService.htmlMessage(request);
             JSONObject response = emailService.send(message);
             return ResponseEntity.ok(response.toMap());
         } catch (Exception e) {
             return ResponseEntity.internalServerError().body(new JSONObject().put("message", e.getMessage()).put("status", false).toMap());
         }
     }

 }