| | |
| | | package com.vincent.rsf.server.common.service; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.vincent.rsf.common.utils.Utils; |
| | | import com.vincent.rsf.framework.common.Cools; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | |
| | | |
| | | import javax.mail.MessagingException; |
| | | import javax.mail.internet.MimeMessage; |
| | | import java.util.Map; |
| | | |
| | | @Slf4j |
| | | @Service |
| | |
| | | @Value("${spring.mail.username}") |
| | | private String from; |
| | | |
| | | private final static String TEMPLATE = "Your verification code is: ${code}"; |
| | | |
| | | @Autowired |
| | | @SuppressWarnings("all") |
| | | private JavaMailSender mailSender; |
| | | |
| | | public boolean sendVerificationEmail(String to, String verificationCode) { |
| | | public boolean sendEmail(String to, String subject, Map<String, Object> param) { |
| | | |
| | | String content = "Your verification code is: ${code}"; |
| | | if (!Cools.isEmpty(param) && !param.isEmpty()) { |
| | | content = Utils.processTemplate(content, param); |
| | | } |
| | | |
| | | boolean sendRes = this.send(this.from, to, subject, content); |
| | | if (sendRes) { |
| | | log.info("Email sent successfully. To: {}, Subject: {}, Parameter: {}" |
| | | , to |
| | | , subject |
| | | , JSON.toJSONString(param)); |
| | | } |
| | | return sendRes; |
| | | } |
| | | |
| | | public boolean send(String from, String to, String subject, String content) { |
| | | try { |
| | | MimeMessage message = mailSender.createMimeMessage(); |
| | | message.setFrom(from); |
| | | MimeMessageHelper helper = new MimeMessageHelper(message, true); |
| | | |
| | | // 邮件主题和内容 |
| | | MimeMessageHelper helper = new MimeMessageHelper(message, true); |
| | | helper.setTo(to); |
| | | helper.setSubject("Email Verification Code"); |
| | | helper.setText("Your verification code is: " + verificationCode); |
| | | helper.setSubject(subject); |
| | | helper.setText(content); |
| | | |
| | | mailSender.send(message); |
| | | return true; |