From 8267d62b7d89e101669e20e66d6b94420fb82c85 Mon Sep 17 00:00:00 2001
From: ludc <ludc@vci-tech.com>
Date: 星期四, 26 十二月 2024 17:26:54 +0800
Subject: [PATCH] 方法重名修改
---
Source/BladeX-Tool/blade-starter-sms/src/main/java/org/springblade/core/sms/SmsTemplate.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 111 insertions(+), 0 deletions(-)
diff --git a/Source/BladeX-Tool/blade-starter-sms/src/main/java/org/springblade/core/sms/SmsTemplate.java b/Source/BladeX-Tool/blade-starter-sms/src/main/java/org/springblade/core/sms/SmsTemplate.java
new file mode 100644
index 0000000..ae3f87c
--- /dev/null
+++ b/Source/BladeX-Tool/blade-starter-sms/src/main/java/org/springblade/core/sms/SmsTemplate.java
@@ -0,0 +1,111 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package org.springblade.core.sms;
+
+import org.springblade.core.sms.model.SmsCode;
+import org.springblade.core.sms.model.SmsData;
+import org.springblade.core.sms.model.SmsInfo;
+import org.springblade.core.sms.model.SmsResponse;
+import org.springblade.core.tool.utils.StringPool;
+import org.springframework.util.StringUtils;
+
+import java.util.Collection;
+import java.util.Collections;
+
+import static org.springblade.core.sms.constant.SmsConstant.CAPTCHA_KEY;
+
+/**
+ * 鐭俊閫氱敤灏佽
+ *
+ * @author Chill
+ */
+public interface SmsTemplate {
+
+ /**
+ * 缂撳瓨閿��
+ *
+ * @param phone 鎵嬫満鍙�
+ * @param id 閿��
+ * @return 缂撳瓨閿�艰繑鍥�
+ */
+ default String cacheKey(String phone, String id) {
+ return CAPTCHA_KEY + phone + StringPool.COLON + id;
+ }
+
+ /**
+ * 鍙戦�佺煭淇�
+ *
+ * @param smsInfo 鐭俊淇℃伅
+ * @return 鍙戦�佽繑鍥�
+ */
+ default boolean send(SmsInfo smsInfo) {
+ return sendMulti(smsInfo.getSmsData(), smsInfo.getPhones());
+ }
+
+ /**
+ * 鍙戦�佺煭淇�
+ *
+ * @param smsData 鐭俊鍐呭
+ * @param phone 鎵嬫満鍙�
+ * @return 鍙戦�佽繑鍥�
+ */
+ default boolean sendSingle(SmsData smsData, String phone) {
+ if (StringUtils.isEmpty(phone)) {
+ return Boolean.FALSE;
+ }
+ return sendMulti(smsData, Collections.singletonList(phone));
+ }
+
+ /**
+ * 鍙戦�佺煭淇�
+ *
+ * @param smsData 鐭俊鍐呭
+ * @param phones 鎵嬫満鍙峰垪琛�
+ * @return 鍙戦�佽繑鍥�
+ */
+ default boolean sendMulti(SmsData smsData, Collection<String> phones) {
+ SmsResponse response = sendMessage(smsData, phones);
+ return response.isSuccess();
+ }
+
+ /**
+ * 鍙戦�佺煭淇�
+ *
+ * @param smsData 鐭俊鍐呭
+ * @param phones 鎵嬫満鍙峰垪琛�
+ * @return 鍙戦�佽繑鍥�
+ */
+ SmsResponse sendMessage(SmsData smsData, Collection<String> phones);
+
+ /**
+ * 鍙戦�侀獙璇佺爜
+ *
+ * @param smsData 鐭俊鍐呭
+ * @param phone 鎵嬫満鍙�
+ * @return 鍙戦�佽繑鍥�
+ */
+ SmsCode sendValidate(SmsData smsData, String phone);
+
+ /**
+ * 鏍¢獙楠岃瘉鐮�
+ *
+ * @param smsCode 楠岃瘉鐮佸唴瀹�
+ * @return 鏄惁鏍¢獙鎴愬姛
+ */
+ boolean validateMessage(SmsCode smsCode);
+
+}
--
Gitblit v1.9.3