新版仿ok交易所-后端
1
zyy
2025-09-18 8f6cab15fc562f1a0279f918ed29cf4312f06374
1
3 files modified
1 files added
111 ■■■■■ changed files
trading-order-admin/src/main/resources/config/system.properties 11 ●●●●● patch | view | raw | blame | history
trading-order-common/src/main/java/com/yami/trading/common/manager/sms/BUKASmsUtils.java 63 ●●●●● patch | view | raw | blame | history
trading-order-service/src/main/java/com/yami/trading/service/impl/IdentifyingCodeServiceImpl.java 9 ●●●●● patch | view | raw | blame | history
trading-order-service/src/main/java/com/yami/trading/service/impl/InternalEmailSenderServiceImpl.java 28 ●●●●● patch | view | raw | blame | history
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 {