Commit e5c42ed3 authored by Tkunkun's avatar Tkunkun

修改--邮箱信息从数据库中获取

parent ff3650a1
......@@ -8,7 +8,7 @@ import lombok.Data;
@Data
@Component
@ConfigurationProperties(prefix = "avic.email")
//@ConfigurationProperties(prefix = "avic.email")
public class EMailModel {
String host;
int port;
......
......@@ -22,7 +22,9 @@ import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.DependsOn;
import org.springframework.stereotype.Component;
import org.typroject.tyboot.core.rdbms.service.BaseService;
......@@ -34,17 +36,28 @@ import com.yeejoin.amos.avic.face.orm.entity.AvicEMail;
@Component
@DependsOn("systemctl")
public class EMailSenderService extends BaseService<AvicEMailModel,AvicEMail, AvicEMailMapper>{
private Transport transport;
@Autowired
private EMailModel eMailModel;
public EMailSenderService() throws Exception {
init(eMailModel.getHost(), eMailModel.getPort(), eMailModel.getUsername(), eMailModel.getPassword(), eMailModel.isValipwd(), eMailModel.isEnabledStarttls());
//初始化该类拿不到配置文件里的东西
//init(eMailModel.getHost(), eMailModel.getPort(), eMailModel.getUsername(), eMailModel.getPassword(), eMailModel.isValipwd(), eMailModel.isEnabledStarttls());
}
public void start(List<DictionarieValueModel> result) throws Exception{
eMailModel.setHost(result.get(0).getDictDataValue());
eMailModel.setPort(Integer.parseInt(result.get(1).getDictDataValue()));
eMailModel.setUsername(result.get(2).getDictDataValue());
eMailModel.setPassword(result.get(3).getDictDataValue());
init(eMailModel.getHost(), eMailModel.getPort(), eMailModel.getUsername(), eMailModel.getPassword(), eMailModel.isValipwd(), eMailModel.isEnabledStarttls());
}
public void init(String host, int port, final String username, final String password, boolean valipwd , boolean enabledStarttls) throws Exception {
Properties props = System.getProperties();
......@@ -85,8 +98,8 @@ public class EMailSenderService extends BaseService<AvicEMailModel,AvicEMail, Av
transport.sendMessage(mimeMessage, addresses);
transport.close();
}
public void send(String avicCode, String targetAddress, String text, String file) throws Exception {
MimeMessage mimeMessage = new MimeMessage(Session.getInstance(new Properties()));
......@@ -94,25 +107,25 @@ public class EMailSenderService extends BaseService<AvicEMailModel,AvicEMail, Av
mimeMessage.setRecipients(Message.RecipientType.TO, new Address[]{
new InternetAddress(targetAddress, avicCode)
});
mimeMessage.setSubject(11111111 + UUID.randomUUID().toString());
mimeMessage.setSentDate(new Date());
mimeMessage.setHeader("X-Mailer", "LOTONtechEmail");
mimeMessage.setHeader("usercode_header", "xUnMI9FGtWvuFYjHZAlWdmjh58sWfyZOOJNa+HwaJfELrqMvJg3iuIjRAhpuccf5");
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setText(text);
Multipart mp = new MimeMultipart();
mimeMessage.setContent(mp);
mimeMessage.writeTo(new FileOutputStream(new File("D:\\temp.eml")));
for (int i = 0; i < 1; i++) {
doSend(mimeMessage, new Address[]{
new InternetAddress("ccc<user4@test.com>"),
});
}
}
public String getEmailTemplate() {
List<AvicEMailModel> list = this.queryForList(null, false);
for (AvicEMailModel model : list) {
......
......@@ -3,9 +3,13 @@ package com.yeejoin.amos.avic.config;
import java.util.HashMap;
import java.util.List;
import javax.annotation.PostConstruct;
import com.yeejoin.amos.avic.face.service.EMailSenderService;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.scheduling.annotation.EnableScheduling;
......@@ -32,6 +36,9 @@ public class AmosAuth {
@Autowired
Privilege privilege;
/*用于加载邮箱信息*/
@Autowired
private EMailSenderService eMailSenderService;
HashMap<String, Object> model = null;
......@@ -85,5 +92,19 @@ public class AmosAuth {
RequestContext.setProduct(product);
RequestContext.setAppKey(appKey);
Privilege.agencyUserClient.getme();
//配置发送方邮箱信息
configureEmail();
}
private void configureEmail() {
FeignClientResult<List<DictionarieValueModel>> emailbox = Systemctl.dictionarieClient.dictValues("EMAIL_BOX");
List<DictionarieValueModel> result = emailbox.getResult();
try {
eMailSenderService.start(result);
}catch (java.lang.Exception e) {
e.printStackTrace();
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment