消息发送

main
HUOJIN\92525 2024-09-14 10:59:01 +08:00
parent 83e6a80e1f
commit 0549acbd0d
5 changed files with 49 additions and 17 deletions

View File

@ -202,4 +202,12 @@ public class StockController {
return new ResponseEntity<>(HttpStatus.OK); return new ResponseEntity<>(HttpStatus.OK);
} }
@PostMapping(value = "/stockMsg")
@AnonymousAccess
public ResponseEntity<Object> stockMsg() {
String stockMsg = stockService.stockMsg();
return new ResponseEntity<>(stockMsg, HttpStatus.OK);
}
} }

View File

@ -132,4 +132,9 @@ public interface StockService {
List<Stock> findByKStockList(String areaName); List<Stock> findByKStockList(String areaName);
/**
*
*/
String stockMsg();
} }

View File

@ -21,6 +21,9 @@ import com.youchain.basicdata.domain.Point;
import com.youchain.basicdata.domain.Stock; import com.youchain.basicdata.domain.Stock;
import com.youchain.basicdata.service.dto.ItemDto; import com.youchain.basicdata.service.dto.ItemDto;
import com.youchain.businessdata.domain.AsnDetail; import com.youchain.businessdata.domain.AsnDetail;
import com.youchain.modules.mnt.websocket.MsgType;
import com.youchain.modules.mnt.websocket.SocketMsg;
import com.youchain.modules.mnt.websocket.WebSocketServer;
import com.youchain.utils.*; import com.youchain.utils.*;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import com.youchain.basicdata.repository.StockRepository; import com.youchain.basicdata.repository.StockRepository;
@ -216,4 +219,14 @@ public class StockServiceImpl implements StockService {
} }
return null; return null;
} }
@Override
public String stockMsg() {
try {
WebSocketServer.sendInfo(new SocketMsg("欢迎来到AI智能平台", MsgType.INFO), "stock");
} catch (Exception e) {
e.printStackTrace();
}
return "ok";
}
} }

View File

@ -30,7 +30,7 @@ public class EmailUtils {
public static ApiResult sendByCurrUser(String title,String msg,String[] to){ public static ApiResult sendByCurrUser(String title,String msg,String[] to){
try{ try{
//*****获取当前登录用户 //*****获取当前登录用户
Long userID =SecurityUtils.getCurrentUserId(); /*Long userID =SecurityUtils.getCurrentUserId();
UserServiceImpl userService = SpringContextHolder.getBean(UserServiceImpl.class); UserServiceImpl userService = SpringContextHolder.getBean(UserServiceImpl.class);
UserQueryCriteria userQueryCriteria =new UserQueryCriteria(); UserQueryCriteria userQueryCriteria =new UserQueryCriteria();
userQueryCriteria.setId(userID); userQueryCriteria.setId(userID);
@ -38,8 +38,8 @@ public class EmailUtils {
if(users.size()<=0){ if(users.size()<=0){
return ApiResult.fail(400,"用户验证失败",""); return ApiResult.fail(400,"用户验证失败","");
} }
UserDto userDto=users.get(0); UserDto userDto=users.get(0);*/
ApiResult re_str=send(userDto,title,msg,to); ApiResult re_str=send(title,msg,to);
return re_str; return re_str;
}catch(Exception e){ }catch(Exception e){
System.out.println("异常:"+e.toString()); System.out.println("异常:"+e.toString());
@ -48,11 +48,13 @@ public class EmailUtils {
} }
public static ApiResult send(UserDto userDto,String title,String msg,String[] to){ public static ApiResult send(String title,String msg,String[] to){
try{ try{
String password = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,userDto.getEmailPwd()); String email = "huoj@youchain56.com";
userDto.setEmailPwd(password); String emailPwd = "Jin982011";
System.out.println(password); String password = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,emailPwd);
//设置SSL连接、邮件环境 //设置SSL连接、邮件环境
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory"; final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
@ -68,9 +70,9 @@ public class EmailUtils {
props.setProperty("mail.smtp.socketFactory.port", "465"); props.setProperty("mail.smtp.socketFactory.port", "465");
props.setProperty("mail.smtp.auth", "true");//表示SMTP发送邮件需要进行身份验证 props.setProperty("mail.smtp.auth", "true");//表示SMTP发送邮件需要进行身份验证
props.setProperty("mail.smtp.from", userDto.getEmail());//mailfrom 参数 props.setProperty("mail.smtp.from",email);//mailfrom 参数
props.setProperty("mail.user",userDto.getEmail());//发件人的账号 props.setProperty("mail.user",email);//发件人的账号
props.setProperty("mail.password",userDto.getEmailPwd());// 发件人的账号的密码,如果开启三方客户端安全密码请使用新生产的密码 props.setProperty("mail.password",emailPwd);// 发件人的账号的密码,如果开启三方客户端安全密码请使用新生产的密码
//建立邮件会话 //建立邮件会话
Session session = Session.getInstance(props, new Authenticator() { Session session = Session.getInstance(props, new Authenticator() {
//身份认证 //身份认证
@ -84,7 +86,7 @@ public class EmailUtils {
//建立邮件对象 //建立邮件对象
MimeMessage message = new MimeMessage(session); MimeMessage message = new MimeMessage(session);
//设置邮件的发件人 //设置邮件的发件人
InternetAddress from = new InternetAddress(userDto.getEmail(),userDto.getEmail()); //from 参数,可实现代发,注意:代发容易被收信方拒信或进入垃圾箱。 InternetAddress from = new InternetAddress(email,email); //from 参数,可实现代发,注意:代发容易被收信方拒信或进入垃圾箱。
message.setFrom(from); message.setFrom(from);
//设置邮件的收件人 //设置邮件的收件人
//to = new String []{"768863620@qq.com"};//收件人列表 //to = new String []{"768863620@qq.com"};//收件人列表
@ -117,9 +119,11 @@ public class EmailUtils {
} }
public static ApiResult sendNodecrypPwd(UserDto userDto,String title,String msg,String[] to){ public static ApiResult sendNodecrypPwd(String title,String msg,String[] to){
try{ try{
//邮箱账号密码
String email = "huoj@youchain56.com";
String emailPwd = "Jin982011";
//设置SSL连接、邮件环境 //设置SSL连接、邮件环境
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory"; final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
@ -135,9 +139,9 @@ public class EmailUtils {
props.setProperty("mail.smtp.socketFactory.port", "465"); props.setProperty("mail.smtp.socketFactory.port", "465");
props.setProperty("mail.smtp.auth", "true");//表示SMTP发送邮件需要进行身份验证 props.setProperty("mail.smtp.auth", "true");//表示SMTP发送邮件需要进行身份验证
props.setProperty("mail.smtp.from", userDto.getEmail());//mailfrom 参数 props.setProperty("mail.smtp.from", email);//mailfrom 参数
props.setProperty("mail.user",userDto.getEmail());//发件人的账号 props.setProperty("mail.user",email);//发件人的账号
props.setProperty("mail.password",userDto.getEmailPwd());// 发件人的账号的密码,如果开启三方客户端安全密码请使用新生产的密码 props.setProperty("mail.password",emailPwd);// 发件人的账号的密码,如果开启三方客户端安全密码请使用新生产的密码
//建立邮件会话 //建立邮件会话
Session session = Session.getDefaultInstance(props, new Authenticator() { Session session = Session.getDefaultInstance(props, new Authenticator() {
//身份认证 //身份认证
@ -151,7 +155,7 @@ public class EmailUtils {
//建立邮件对象 //建立邮件对象
MimeMessage message = new MimeMessage(session); MimeMessage message = new MimeMessage(session);
//设置邮件的发件人 //设置邮件的发件人
InternetAddress from = new InternetAddress(userDto.getEmail(),userDto.getEmail()); //from 参数,可实现代发,注意:代发容易被收信方拒信或进入垃圾箱。 InternetAddress from = new InternetAddress(email,email); //from 参数,可实现代发,注意:代发容易被收信方拒信或进入垃圾箱。
message.setFrom(from); message.setFrom(from);
//设置邮件的收件人 //设置邮件的收件人
//to = new String []{"768863620@qq.com"};//收件人列表 //to = new String []{"768863620@qq.com"};//收件人列表

View File

@ -1,5 +1,6 @@
package com.youchain; package com.youchain;
import com.youchain.utils.Email.EmailUtils;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import java.util.ArrayList; import java.util.ArrayList;
@ -13,6 +14,7 @@ public class EladminSystemApplicationTests {
} }
public static void main(String[] args) { public static void main(String[] args) {
EmailUtils.sendNodecrypPwd("测试邮件","姚大哥好呀",new String[]{"623461519@qq.com"});
} }
private static final int MAX_TASK_COUNT = 4; private static final int MAX_TASK_COUNT = 4;