trading-order-admin/src/main/resources/config/system.properties
@@ -5,8 +5,17 @@ images_http=https://mdimg.yanshiz.com/ loca.images.dir=/www/wwwroot/9.17/img admin_rest_url=https://enjdhdg.site/api email.host=smtp.gmail.com email.username=coinzne.com@gmail.com email.password=pqupwyxoqedhxlfq email.from= smtp.gmail.com admin_rest_url=https://enjdhdg.site/api #email.host=mail.45678.cf #email.username=support@StakeCubePro.com #email.password=@Asd156324 #email.from=support@StakeCubePro.com trading-order-common/src/main/java/com/yami/trading/common/manager/sms/BUKASmsUtils.java
New file @@ -0,0 +1,63 @@ package com.yami.trading.common.manager.sms; import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.http.Header; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONUtil; import org.springframework.stereotype.Component; import java.time.LocalDateTime; import java.time.ZoneId; @Component public class BUKASmsUtils { private static final String baseUrl = "https://api.onbuka.com/v3/sendSms"; private static final String apiKey = "M1OMJVgD"; private static final String apiPwd = "IdYtbSHH"; private static final String appId = "PC0S982D"; private static final String senderId = "56465123124"; public void sendSms(String numbers,String message){ HttpRequest request = HttpRequest.post(baseUrl); //generate md5 key final String datetime = String.valueOf(LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().getEpochSecond()); final String sign = SecureUtil.md5(apiKey.concat(apiPwd).concat(datetime)); request.header(Header.CONNECTION, "Keep-Alive") .header(Header.CONTENT_TYPE, "application/json;charset=UTF-8") .header("Sign", sign) .header("Timestamp", datetime) .header("Api-Key", apiKey); final String params = JSONUtil.createObj() .set("appId", appId) .set("numbers", numbers) .set("content", message) //.set("senderId", senderId) .toString(); HttpResponse response = request.body(params).execute(); if (response.isOk()) { String result = response.body(); System.out.println(result); } } public static void main(String[] args) { BUKASmsUtils sender = new BUKASmsUtils(); try { sender.sendSms("12133131611", "Your verification code is 123456."); // 输出响应结果 //String responseWithChinese = StringEscapeUtils.unescapeJava(response); //System.out.println("中文发送结果: " + responseWithChinese); } catch (Exception e) { e.printStackTrace(); } } } trading-order-service/src/main/java/com/yami/trading/service/impl/IdentifyingCodeServiceImpl.java
@@ -5,6 +5,7 @@ import com.yami.trading.common.http.HttpHelper; import com.yami.trading.common.manager.BlacklistIpTimeWindow; import com.yami.trading.common.manager.SendCountTimeWindow; import com.yami.trading.common.manager.sms.BUKASmsUtils; import com.yami.trading.common.manager.sms.GoToneSmsUtils; import com.yami.trading.service.EmailSendService; import com.yami.trading.service.IdentifyingCodeService; @@ -61,6 +62,9 @@ @Autowired GoToneSmsUtils goToneSmsUtils; @Autowired BUKASmsUtils bukasmsUtils; @Override public void send(String target, String ip) throws IOException { String code = null; @@ -106,6 +110,11 @@ return; } if ("buka".equals(send_code_type)) { bukasmsUtils.sendSms(target, MessageFormat.format(send_code_text, new Object[] { code })); logger.info(MessageFormat.format("buka--target:{0},code:{1},ip:{2}", target, code, ip)); } if ("GoTone".equals(send_code_type)) { String response = goToneSmsUtils.sendSms(target, MessageFormat.format(send_code_text, new Object[] { code })); logger.info(MessageFormat.format("GoTone--target:{0},code:{1},ip:{2}", target, code, ip)); trading-order-service/src/main/java/com/yami/trading/service/impl/InternalEmailSenderServiceImpl.java
@@ -63,6 +63,34 @@ freeMarkerConfigurer.setFreemarkerSettings(settings); } /*@Override public void afterPropertiesSet() throws Exception { mailSender = new JavaMailSenderImpl(); mailSender.setUsername(PropertiesUtil.getProperty("email.username")); mailSender.setPassword(PropertiesUtil.getProperty("email.password")); mailSender.setHost(PropertiesUtil.getProperty("email.host")); Properties javaMailProperties = new Properties(); javaMailProperties.setProperty("mail.smtp.port", "465"); javaMailProperties.setProperty("mail.smtp.auth", "true"); javaMailProperties.setProperty("mail.smtp.ssl.enable", "true"); javaMailProperties.setProperty("mail.smtp.ssl.protocols", "TLSv1.2"); javaMailProperties.setProperty("mail.smtp.ssl.enable", "true"); javaMailProperties.setProperty("mail.debug", "true"); mailSender.setJavaMailProperties(javaMailProperties); mailMessage = new SimpleMailMessage(); mailMessage.setFrom(PropertiesUtil.getProperty("email.from")); freeMarkerConfigurer = new FreeMarkerConfigurer(); freeMarkerConfigurer.setTemplateLoaderPath("classpath:email/ftl"); Properties settings = new Properties(); settings.setProperty("template_update_delay", "1800"); settings.setProperty("default_encoding", "UTF-8"); settings.setProperty("locale", "zh_CN"); freeMarkerConfigurer.setFreemarkerSettings(settings); freeMarkerConfigurer.afterPropertiesSet(); }*/ @Override public void send(EmailMessage emailMessage) { try {