优化升级

This commit is contained in:
2026-09-17 12:12:55 +08:00
parent 4ecb1a0a43
commit 00cfabb822
72 changed files with 669 additions and 290 deletions
+1 -1
View File
@@ -106,7 +106,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -115,7 +115,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -106,7 +106,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -104,7 +104,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -97,7 +97,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -97,7 +97,7 @@
<img src="./image.png" alt="客服二维码"> <img src="./image.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -109,7 +109,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -109,7 +109,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -172,7 +172,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -168,7 +168,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -201,7 +201,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -201,7 +201,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -107,7 +107,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -201,7 +201,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -105,7 +105,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -176,7 +176,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -201,7 +201,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -168,7 +168,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -173,7 +173,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -173,7 +173,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -174,7 +174,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -116,7 +116,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -116,7 +116,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -109,7 +109,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -116,7 +116,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -109,7 +109,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -116,7 +116,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -109,7 +109,7 @@
<img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码"> <img src="http://images.xiaomayicloud.com/img_qq.png" alt="客服二维码">
</div> </div>
<div class="divider"></div> <div class="divider"></div>
<p>© 2025 [小蚂蚁云团队] 版权所有</p> <p>© 2026 [小蚂蚁云团队] 版权所有</p>
<p>此为系统邮件,请勿直接回复</p> <p>此为系统邮件,请勿直接回复</p>
<p>如果您未进行相关操作,请忽略此邮件</p> <p>如果您未进行相关操作,请忽略此邮件</p>
</div> </div>
+1 -1
View File
@@ -551,7 +551,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云 科技有限公司 版权所有</p> <p class="copyright">© 2026 小蚂蚁云 科技有限公司 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -571,7 +571,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -563,7 +563,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -563,7 +563,7 @@
<!-- <a href="#" class="footer-link">帮助中心</a>--> <!-- <a href="#" class="footer-link">帮助中心</a>-->
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -920,7 +920,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -1048,7 +1048,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云 科技有限公司 版权所有</p> <p class="copyright">© 2026 小蚂蚁云 科技有限公司 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -1105,7 +1105,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云 科技有限公司 版权所有</p> <p class="copyright">© 2026 小蚂蚁云 科技有限公司 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -1088,7 +1088,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云 科技有限公司 版权所有</p> <p class="copyright">© 2026 小蚂蚁云 科技有限公司 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -1047,7 +1047,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -385,7 +385,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -385,7 +385,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -377,7 +377,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -1034,7 +1034,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -377,7 +377,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -471,7 +471,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -424,7 +424,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -409,7 +409,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -431,7 +431,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -457,7 +457,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -479,7 +479,7 @@
<a href="#" class="footer-link">帮助中心</a> <a href="#" class="footer-link">帮助中心</a>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -471,7 +471,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -483,7 +483,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -477,7 +477,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -519,7 +519,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -541,7 +541,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -541,7 +541,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复。如有疑问请联系客服。</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -432,7 +432,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -432,7 +432,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -432,7 +432,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -432,7 +432,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -377,7 +377,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -377,7 +377,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -520,7 +520,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -520,7 +520,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -520,7 +520,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -430,7 +430,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -437,7 +437,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
+1 -1
View File
@@ -371,7 +371,7 @@
<p class="qrcode-text">扫码联系微信客服</p> <p class="qrcode-text">扫码联系微信客服</p>
</div> </div>
<p class="copyright">© 2025 小蚂蚁云团队 版权所有</p> <p class="copyright">© 2026 小蚂蚁云团队 版权所有</p>
<p class="copyright">本邮件为系统自动发送,请勿直接回复</p> <p class="copyright">本邮件为系统自动发送,请勿直接回复</p>
</div> </div>
</div> </div>
@@ -2062,14 +2062,30 @@ a.icon-text > .layui-icon {
.ew-vip-badge { .ew-vip-badge {
position: absolute; position: absolute;
right: 0; right: -6px;
bottom: 0; bottom: -6px;
background-color: #ff6700; background: linear-gradient(135deg, #bf953f, #fcf6ba, #b38728, #fbf5b7, #aa771c);
color: #fff; background-size: 200% 200%;
border-radius: 2px; animation: vipShimmer 3s ease infinite;
padding: 0 5px; color: #7a5a00;
font-size: 12px; border-radius: 20px;
line-height: 16px padding: 2px 12px;
font-size: 11px;
font-weight: 800;
line-height: 18px;
letter-spacing: 2px;
box-shadow: 0 2px 10px rgba(191, 149, 63, 0.5), 0 0 20px rgba(252, 246, 186, 0.3);
border: 2px solid rgba(255, 255, 255, 0.9);
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}
@keyframes vipShimmer {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
.user-info-head.vip {
border: 2px solid #f0e6d0;
box-shadow: 0 0 0 3px rgba(191, 149, 63, 0.2), 0 4px 12px rgba(191, 149, 63, 0.15);
} }
.ew-tab-coupon > .layui-tab-title { .ew-tab-coupon > .layui-tab-title {
Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

@@ -6,52 +6,180 @@
<!-- header --> <!-- header -->
<div th:replace="~{./public/common_header::common_header}"></div> <div th:replace="~{./public/common_header::common_header}"></div>
<!-- login-wrapper --> <style>
<div class="login-wrapper reg-wrapper"> .login-card-box {
<div class="layui-container"> display: flex;
<form class="layui-form"> width: 920px;
max-width: 96%;
height: 510px;
background: #fff;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 6px 30px rgba(0,0,0,0.18);
}
.login-card-pic {
flex: 1;
padding: 32px 8px;
box-sizing: border-box;
background-color: #1681fd;
background-image: url('/static/assets/images/login-img.png');
background-repeat: no-repeat;
background-position: bottom;
background-size: contain;
text-align: center;
}
.login-card-pic-text h1 {
color: #ffffff;
font-size: 28px;
margin: 0 0 6px;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-pic-text p {
color: rgba(255,255,255,0.8);
font-size: 16px;
margin: 0;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-form {
width: 400px;
padding: 32px 36px 24px !important;
box-sizing: border-box;
margin: 0 !important;
box-shadow: none !important;
background: transparent !important;
}
.login-card-form h2 {
font-size: 22px;
font-weight: 700;
color: #0b1a33;
text-align: left;
margin-bottom: 22px;
}
.login-card-form .layui-form-item {
margin-bottom: 18px;
}
.login-card-form .layui-input {
height: 44px;
border-radius: 8px;
border-color: #e8edf5;
transition: border-color 0.2s, box-shadow 0.2s;
}
.login-card-form .layui-input:focus {
border-color: #1681fd;
box-shadow: 0 0 0 3px rgba(22,129,253,0.1);
}
.login-card-form .login-captcha-group {
display: flex !important;
gap: 12px;
padding-right: 0 !important;
position: relative;
}
.login-card-form .login-captcha-group .layui-input {
flex: 1;
}
.login-card-form .login-captcha-group .layui-btn {
position: static !important;
width: 120px !important;
height: 44px !important;
border-radius: 8px !important;
background: #1681fd !important;
background-color: #1681fd !important;
color: #fff !important;
border: none !important;
flex-shrink: 0;
white-space: nowrap;
line-height: 44px !important;
}
.login-card-form .layui-text {
display: flex !important;
justify-content: flex-end !important;
margin-bottom: 18px;
padding: 0;
}
.login-card-form .layui-text a {
color: #1681fd;
font-size: 13px;
}
.login-card-form .layui-btn-fluid {
height: 46px;
border-radius: 8px;
font-size: 15px;
font-weight: 600;
letter-spacing: 4px;
background: #1681fd;
border: none;
box-shadow: 0 4px 14px rgba(22,129,253,0.3);
transition: box-shadow 0.3s, transform 0.2s;
}
.login-wrapper {
display: flex;
align-items: center;
justify-content: center;
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.login-wrapper:before { display: none; }
.login-card-form .layui-btn-fluid:hover {
background: #1270e0;
box-shadow: 0 6px 20px rgba(22,129,253,0.4);
transform: translateY(-1px);
}
@media screen and (max-width: 800px) {
.login-card-box {
flex-direction: column;
width: 400px;
height: auto;
}
.login-card-pic {
width: 100%;
padding: 20px 12px 100px;
background-size: auto 100px;
}
.login-card-form {
width: 100%;
padding: 28px 24px 24px !important;
}
}
</style>
<!-- forget -->
<div class="login-wrapper">
<div class="login-card-box">
<!-- 左侧插图 -->
<div class="login-card-pic">
<div class="login-card-pic-text">
<h1>小蚂蚁云官方网站</h1>
<p>赋能开发者,助力企业发展,全方位提供数据中台解决方案!</p>
</div>
</div>
<!-- 右侧表单 -->
<form class="layui-form login-card-form">
<h2>忘记密码</h2> <h2>忘记密码</h2>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">邮箱账号</label> <input class="layui-input" name="email" type="text" placeholder="请输入邮箱账号"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|email" maxlength="100" required/>
<input class="layui-input" name="email" type="text" placeholder="请输入邮箱账号"
lay-verType="tips" lay-verify="required|email" maxlength="100" required/>
</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">新密码</label> <input class="layui-input" name="password" type="password" placeholder="请输入新的登录密码"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|psw" maxlength="100" required/>
<input class="layui-input" name="password" type="password" placeholder="请输入新的登录密码"
lay-verType="tips" lay-verify="required|psw" maxlength="100" required/>
</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">确认密码</label> <input class="layui-input" name="rePassword" type="password" placeholder="请再次输入新的登录密码"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|repeat" data-target="input[name=password]"
<input class="layui-input" name="rePassword" type="password" placeholder="请再次输入新的登录密码" data-tips="两次密码输入不一致" required/>
lay-verType="tips" lay-verify="required|repeat" data-target="input[name=password]"
data-tips="两次密码输入不一致" required/>
</div>
</div> </div>
<div class="layui-form-item" style="margin-bottom: 18px;"> <div class="layui-form-item login-captcha-group">
<label class="layui-form-label">验证码</label> <input class="layui-input" name="captcha" type="text" placeholder="请输入验证码"
<div class="layui-input-block login-captcha-group"> autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="20" required/>
<input class="layui-input" name="captcha" type="text" placeholder="请输入验证码" <button id="btnGetCode" type="button" class="layui-btn">获取验证码</button>
autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="20" required/>
<button id="btnGetCode" type="button" class="layui-btn">获取验证码</button>
</div>
</div> </div>
<div class="layui-form-item layui-text"> <div class="layui-form-item layui-text">
<div class="layui-input-block text-right" style="min-height: unset;"> <a href="/login">返回登录</a>
<a href="login.html">返回登录</a>
</div>
</div> </div>
<div class="layui-form-item" style="margin-bottom: 35px;"> <div>
<div class="layui-input-block"> <button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="forgetSubmit" lay-submit>修改密码</button>
<button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="forgetSubmit" lay-submit>
修改密码
</button>
</div>
</div> </div>
</form> </form>
</div> </div>
@@ -79,7 +207,11 @@
var layer = layui.layer; var layer = layui.layer;
var form = layui.form; var form = layui.form;
// 表单提交 /**
* 忘记密码表单提交
* 将表单数据以JSON格式POST到/forget接口
* 成功后跳转至登录页,失败则弹出错误提示
*/
form.on('submit(forgetSubmit)', function (obj) { form.on('submit(forgetSubmit)', function (obj) {
var loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01}); var loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01});
$.ajax({ $.ajax({
@@ -88,17 +220,10 @@
data: JSON.stringify(obj.field), data: JSON.stringify(obj.field),
contentType: "application/json", contentType: "application/json",
dataType: "json", dataType: "json",
beforeSend: function () {
// TODO...
},
success: function (res) { success: function (res) {
layer.close(loadIndex); layer.close(loadIndex);
if (res.code == 0) { if (res.code == 0) {
layer.msg('找回密码成功', { layer.msg('找回密码成功', {icon: 1, time: 1500}, function () {
icon: 1,
time: 1500
}, function () {
// 跳转至登录页
location.href = '/login'; location.href = '/login';
}); });
} else { } else {
@@ -112,9 +237,16 @@
return false; return false;
}); });
// 获取邮箱验证码 /**
* 获取邮箱验证码
* 1. 校验邮箱是否为空及格式是否正确
* 2. 弹出图形验证码弹窗
* 3. 用户输入图形验证码后,调用/sendEmail接口发送邮件验证码
* 4. 发送成功后启动60秒倒计时
*/
$('#btnGetCode').click(function () { $('#btnGetCode').click(function () {
var $btn = $(this); var $btn = $(this);
// 获取并校验邮箱
var $inputEmail = $('input[name="email"]'); var $inputEmail = $('input[name="email"]');
var email = $inputEmail.val(); var email = $inputEmail.val();
if (!email) { if (!email) {
@@ -133,11 +265,11 @@
skin: 'layui-layer-admin', skin: 'layui-layer-admin',
content: $('#layerGetCode').html(), content: $('#layerGetCode').html(),
success: function () { success: function () {
// 图形验证码点击事件 // 图形验证码图片点击刷新
$('.layer-get-code>.lay-code-group>img').click(function () { $('.layer-get-code>.lay-code-group>img').click(function () {
this.src = this.src + '?t=' + new Date().getTime(); this.src = this.src + '?t=' + new Date().getTime();
}); });
// 立即发送按钮点击事件 // 弹窗内"立即发送"按钮点击事件
$('.layer-get-code .layui-btn-fluid').click(function () { $('.layer-get-code .layui-btn-fluid').click(function () {
var $input = $('.layer-get-code>.lay-code-group>input'); var $input = $('.layer-get-code>.lay-code-group>input');
var captcha = $input.val(); var captcha = $input.val();
@@ -145,8 +277,7 @@
layer.tips('请输入图形验证码', $input, {tips: [3, '#ff4c4c']}); layer.tips('请输入图形验证码', $input, {tips: [3, '#ff4c4c']});
return; return;
} }
// layer.msg('发送成功,请注意查收', {icon: 1}); // 启动倒计时并发送邮件验证码请求
// layer.close(layIndex);
startTimer($btn); startTimer($btn);
var loadIndex = layer.msg('邮件发送中...', {icon: 16, shade: 0.01, time: false}); var loadIndex = layer.msg('邮件发送中...', {icon: 16, shade: 0.01, time: false});
$.ajax({ $.ajax({
@@ -155,9 +286,6 @@
data: JSON.stringify({email: email, captcha: captcha, type: 3}), data: JSON.stringify({email: email, captcha: captcha, type: 3}),
contentType: "application/json", contentType: "application/json",
dataType: "json", dataType: "json",
beforeSend: function () {
// TODO...
},
success: function (res) { success: function (res) {
layer.close(loadIndex); layer.close(loadIndex);
if (res.code == 0) { if (res.code == 0) {
@@ -178,7 +306,11 @@
}) })
}); });
// 按钮开始倒计时 /**
* 按钮倒计时
* @param {Object} $btn - jQuery按钮对象
* @param {Number} second - 倒计时秒数,默认60秒
*/
function startTimer($btn, second) { function startTimer($btn, second) {
second || (second = 60); second || (second = 60);
$btn.attr('org-text', $btn.text()); $btn.attr('org-text', $btn.text());
@@ -198,11 +330,10 @@
}, 1000); }, 1000);
} }
/* 图形验证码 */ /* 页面加载时刷新图形验证码,点击图片也可刷新 */
$('img.forget-captcha').click(function () { $('img.forget-captcha').click(function () {
this.src = '/captcha?t=' + (new Date).getTime(); this.src = '/captcha?t=' + (new Date).getTime();
}).trigger('click'); }).trigger('click');
}); });
</script> </script>
</body> </body>
@@ -8,8 +8,16 @@
<!-- login-wrapper --> <!-- login-wrapper -->
<div class="login-wrapper"> <div class="login-wrapper">
<div class="layui-container"> <div class="login-card-box">
<form class="layui-form"> <!-- 左侧插图 -->
<div class="login-card-pic">
<div class="login-card-pic-text">
<h1>小蚂蚁云官方网站</h1>
<p>赋能开发者,助力企业发展,全方位提供数据中台解决方案!</p>
</div>
</div>
<!-- 右侧表单 -->
<form class="layui-form login-card-form">
<h2>用户登录</h2> <h2>用户登录</h2>
<div class="layui-form-item input-icon-group"> <div class="layui-form-item input-icon-group">
<i class="layui-icon layui-icon-username input-icon-left"></i> <i class="layui-icon layui-icon-username input-icon-left"></i>
@@ -29,19 +37,197 @@
</div> </div>
<div class="layui-form-item layui-text"> <div class="layui-form-item layui-text">
<a href="/register">账号注册</a> <a href="/register">账号注册</a>
<a href="/forget" class="pull-right">忘记密码?</a> <a href="/forget">忘记密码?</a>
</div> </div>
<div> <div>
<button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="userLogin" lay-submit>登录</button> <button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="userLogin" lay-submit>登 录</button>
</div> </div>
<div class="login-oauth-group"> <div class="login-oauth-group">
<!-- <a id="goQqLogin" href="javascript:;" title="QQ授权登录"><i class="layui-icon layui-icon-login-qq"></i></a>--> <div class="login-oauth-title"><span>其他登录方式</span></div>
<!-- <a id="goWxLogin" href="javascript:;" title="微信授权登录"><i class="layui-icon layui-icon-login-wechat"></i></a>--> <div class="login-oauth-icons">
<a id="goWxLogin" href="javascript:;" title="微信登录"><i class="layui-icon layui-icon-login-wechat"></i></a>
<a id="goQqLogin" href="javascript:;" title="QQ登录"><i class="layui-icon layui-icon-login-qq"></i></a>
</div>
</div> </div>
</form> </form>
</div> </div>
</div> </div>
<style>
.login-wrapper {
display: flex;
align-items: center;
justify-content: center;
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.login-wrapper:before {
display: none;
}
.login-card-box {
display: flex;
width: 920px;
max-width: 96%;
height: 510px;
background: #fff;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 6px 30px rgba(0,0,0,0.18);
}
.login-card-pic {
flex: 1;
padding: 32px 8px;
box-sizing: border-box;
background-color: #1681fd;
background-image: url('/static/assets/images/login-img.png');
background-repeat: no-repeat;
background-position: bottom;
background-size: contain;
text-align: center;
}
.login-card-pic-text h1 {
color: #ffffff;
font-size: 28px;
margin: 0 0 6px;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-pic-text p {
color: rgba(255,255,255,0.8);
font-size: 16px;
margin: 0;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-form {
width: 400px;
padding: 36px 40px 28px !important;
box-sizing: border-box;
margin: 0 !important;
box-shadow: none !important;
background: transparent !important;
}
.login-card-form h2 {
font-size: 22px;
font-weight: 700;
color: #0b1a33;
text-align: left;
margin-bottom: 24px;
}
.login-card-form .input-icon-group .layui-input {
height: 44px;
border-radius: 8px;
border-color: #e8edf5;
transition: border-color 0.2s, box-shadow 0.2s;
}
.login-card-form .input-icon-group .layui-input:focus {
border-color: #1681fd;
box-shadow: 0 0 0 3px rgba(22,129,253,0.1);
}
.login-card-form .input-icon-group .input-icon-left {
top: 50%;
transform: translateY(-50%);
color: #b0bec5;
}
.login-card-form .login-captcha-group .login-captcha {
height: 44px;
border-radius: 8px;
}
.login-card-form .layui-btn-fluid {
height: 46px;
border-radius: 8px;
font-size: 15px;
font-weight: 600;
letter-spacing: 4px;
background: #1681fd;
border: none;
box-shadow: 0 4px 14px rgba(22,129,253,0.3);
transition: box-shadow 0.3s, transform 0.2s;
}
.login-card-form .layui-btn-fluid:hover {
background: #1270e0;
box-shadow: 0 6px 20px rgba(22,129,253,0.4);
transform: translateY(-1px);
}
.login-card-form .layui-text {
display: flex !important;
justify-content: space-between !important;
align-items: center;
margin-bottom: 18px;
padding: 0;
}
.login-card-form .layui-text a:last-child {
margin-left: auto;
}
.login-card-form .layui-text a {
color: #1681fd;
font-size: 13px;
}
.login-card-form .login-oauth-group {
text-align: center;
padding-top: 20px;
}
.login-oauth-title {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px;
}
.login-oauth-title span {
font-size: 12px;
color: #8b9ab5;
padding: 0 12px;
background: #fff;
position: relative;
}
.login-oauth-title:before,
.login-oauth-title:after {
content: '';
flex: 1;
height: 1px;
background: #e8edf5;
}
.login-oauth-icons {
display: flex;
justify-content: center;
gap: 24px;
}
.login-oauth-icons a {
display: flex;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
border-radius: 50%;
border: 1px solid #e8edf5;
color: #1681fd;
font-size: 20px;
transition: all 0.2s;
text-decoration: none;
}
.login-oauth-icons a:hover {
border-color: #1681fd;
background: rgba(22,129,253,0.08);
color: #1681fd;
}
@media screen and (max-width: 800px) {
.login-card-box {
flex-direction: column;
width: 400px;
height: auto;
}
.login-card-pic {
width: 100%;
padding: 20px 12px 100px;
background-size: auto 100px;
}
.login-card-form {
width: 100%;
padding: 28px 24px 24px !important;
}
}
</style>
<!-- js部分 --> <!-- js部分 -->
<!-- 引入脚部 --> <!-- 引入脚部 -->
<script type="text/javascript" src="/static/assets/layui/layui.js"></script> <script type="text/javascript" src="/static/assets/layui/layui.js"></script>
@@ -52,7 +238,11 @@
var layer = layui.layer; var layer = layui.layer;
var form = layui.form; var form = layui.form;
// 表单提交 /**
* 登录表单提交
* 将表单数据以JSON格式POST到/login接口
* 成功后跳转至用户订单页,失败则刷新验证码并弹出错误提示
*/
form.on('submit(userLogin)', function (data) { form.on('submit(userLogin)', function (data) {
var loadIndex = layer.load(2); var loadIndex = layer.load(2);
$.ajax({ $.ajax({
@@ -95,17 +285,17 @@
return false; return false;
}); });
/* 图形验证码 */ /* 页面加载时刷新图形验证码,点击图片也可刷新 */
$('img.login-captcha').click(function () { $('img.login-captcha').click(function () {
this.src = '/captcha?t=' + (new Date).getTime(); this.src = '/captcha?t=' + (new Date).getTime();
}).trigger('click'); }).trigger('click');
// QQ登录 /* QQ登录 - 暂未开放 */
$('#goQqLogin').click(function () { $('#goQqLogin').click(function () {
layui.layer.msg('抱歉,QQ登录暂未开放', {icon: 5, anim: 6}); layui.layer.msg('抱歉,QQ登录暂未开放', {icon: 5, anim: 6});
}); });
// 微信登录 /* 微信登录 - 暂未开放 */
$('#goWxLogin').click(function () { $('#goWxLogin').click(function () {
layui.layer.msg('抱歉,微信登录暂未开放', {icon: 5, anim: 6}); layui.layer.msg('抱歉,微信登录暂未开放', {icon: 5, anim: 6});
}); });
@@ -6,79 +6,184 @@
<!-- header --> <!-- header -->
<div th:replace="~{./public/common_header::common_header}"></div> <div th:replace="~{./public/common_header::common_header}"></div>
<!-- login-wrapper --> <style>
<div class="login-wrapper reg-wrapper"> .login-card-box {
<div class="layui-container"> display: flex;
<form class="layui-form"> width: 920px;
max-width: 96%;
height: 510px;
background: #fff;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 6px 30px rgba(0,0,0,0.18);
}
.login-card-pic {
flex: 1;
padding: 32px 8px;
box-sizing: border-box;
background-color: #1681fd;
background-image: url('/static/assets/images/login-img.png');
background-repeat: no-repeat;
background-position: bottom;
background-size: contain;
text-align: center;
}
.login-card-pic-text h1 {
color: #ffffff;
font-size: 28px;
margin: 0 0 6px;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-pic-text p {
color: rgba(255,255,255,0.8);
font-size: 16px;
margin: 0;
font-weight: 400;
letter-spacing: 1.2px;
}
.login-card-form {
width: 400px;
padding: 32px 36px 24px !important;
box-sizing: border-box;
margin: 0 !important;
box-shadow: none !important;
background: transparent !important;
}
.login-card-form h2 {
font-size: 22px;
font-weight: 700;
color: #0b1a33;
text-align: left;
margin-bottom: 22px;
}
.login-card-form .layui-form-item {
margin-bottom: 18px;
}
.login-card-form .layui-input {
height: 44px;
border-radius: 8px;
border-color: #e8edf5;
transition: border-color 0.2s, box-shadow 0.2s;
}
.login-card-form .layui-input:focus {
border-color: #1681fd;
box-shadow: 0 0 0 3px rgba(22,129,253,0.1);
}
.login-card-form .login-captcha-group {
display: flex !important;
gap: 12px;
padding-right: 0 !important;
position: relative;
}
.login-card-form .login-captcha-group .layui-input {
flex: 1;
}
.login-card-form .login-captcha-group .layui-btn {
position: static !important;
width: 120px !important;
height: 44px !important;
border-radius: 8px !important;
background: #1681fd !important;
background-color: #1681fd !important;
color: #fff !important;
border: none !important;
flex-shrink: 0;
white-space: nowrap;
line-height: 44px !important;
}
.login-card-form .layui-text {
display: flex !important;
justify-content: flex-end !important;
margin-bottom: 18px;
padding: 0;
}
.login-card-form .layui-text a {
color: #1681fd;
font-size: 13px;
}
.login-card-form .layui-btn-fluid {
height: 46px;
border-radius: 8px;
font-size: 15px;
font-weight: 600;
letter-spacing: 4px;
background: #1681fd;
border: none;
box-shadow: 0 4px 14px rgba(22,129,253,0.3);
transition: box-shadow 0.3s, transform 0.2s;
}
.login-wrapper {
display: flex;
align-items: center;
justify-content: center;
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.login-wrapper:before { display: none; }
.login-card-form .layui-btn-fluid:hover {
background: #1270e0;
box-shadow: 0 6px 20px rgba(22,129,253,0.4);
transform: translateY(-1px);
}
@media screen and (max-width: 800px) {
.login-card-box {
flex-direction: column;
width: 400px;
height: auto;
}
.login-card-pic {
width: 100%;
padding: 20px 12px 100px;
background-size: auto 100px;
}
.login-card-form {
width: 100%;
padding: 28px 24px 24px !important;
}
}
</style>
<!-- register -->
<div class="login-wrapper">
<div class="login-card-box">
<!-- 左侧插图 -->
<div class="login-card-pic">
<div class="login-card-pic-text">
<h1>小蚂蚁云官方网站</h1>
<p>赋能开发者,助力企业发展,全方位提供数据中台解决方案!</p>
</div>
</div>
<!-- 右侧表单 -->
<form class="layui-form login-card-form">
<h2>用户注册</h2> <h2>用户注册</h2>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">邮箱账号</label> <input class="layui-input" name="email" type="text" placeholder="请输入邮箱账号"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|email" maxlength="100" required/>
<input class="layui-input" name="email" type="text" placeholder="请输入邮箱账号"
lay-verType="tips" lay-verify="required|email" maxlength="100" required/>
</div>
</div> </div>
<div class="layui-form-item" style="margin-bottom: 18px;"> <div class="layui-form-item login-captcha-group">
<label class="layui-form-label">验证码</label> <input class="layui-input" name="captcha" type="text" placeholder="请输入验证码"
<div class="layui-input-block login-captcha-group"> autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="20" required/>
<input class="layui-input" name="captcha" type="text" placeholder="请输入验证码" <button id="btnGetCode" type="button" class="layui-btn">获取验证码</button>
autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="20" required/>
<button id="btnGetCode" type="button" class="layui-btn">获取验证码</button>
</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">登录密码</label> <input class="layui-input" name="password" type="password" placeholder="请输入登录密码"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|psw" maxlength="100" required/>
<input class="layui-input" name="password" type="password" placeholder="请输入登录密码"
lay-verType="tips" lay-verify="required|psw" maxlength="100" required/>
</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">确认密码</label> <input class="layui-input" name="rePassword" type="password" placeholder="请再次输入登录密码"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|repeat" data-target="input[name=password]"
<input class="layui-input" name="rePassword" type="password" placeholder="请再次输入登录密码" data-tips="两次密码输入不一致" required/>
lay-verType="tips" lay-verify="required|repeat" data-target="input[name=password]"
data-tips="两次密码输入不一致" required/>
</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">手机号</label> <input class="layui-input" name="mobile" type="text" placeholder="请输入手机号(接收短信信息)"
<div class="layui-input-block"> lay-verType="tips" lay-verify="required|phone" maxlength="11" required/>
<input class="layui-input" name="mobile" type="text" placeholder="请输入手机号(接收短信信息)"
lay-verType="tips" lay-verify="required|phone" maxlength="11" required/>
</div>
</div> </div>
<!-- <div class="layui-form-item" style="margin-bottom: 18px;">-->
<!-- <label class="layui-form-label">验证码</label>-->
<!-- <div class="layui-input-block login-captcha-group">-->
<!-- <input class="layui-input" name="code" type="text" placeholder="请输入验证码"-->
<!-- autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="6" required/>-->
<!-- <button id="btnMobileCode" type="button" class="layui-btn">获取验证码</button>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="layui-form-item" style="margin-bottom: 18px;">-->
<!-- <label class="layui-form-label">验证码</label>-->
<!-- <div class="layui-input-block login-captcha-group">-->
<!-- <input class="layui-input" name="captcha" type="text" placeholder="请输入验证码"-->
<!-- autocomplete="off" lay-verType="tips" lay-verify="required" maxlength="20" required/>-->
<!-- <img class="login-captcha" src="/captcha"/>-->
<!-- </div>-->
<!-- </div>-->
<div class="layui-form-item layui-text"> <div class="layui-form-item layui-text">
<div class="layui-input-block" style="min-height: unset;"> <a href="/login">返回登录</a>
<a href="login.html">返回登录</a>
</div>
</div> </div>
<div> <div>
<div class="layui-input-block"> <button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="regSubmit" lay-submit>注 册</button>
<button class="layui-btn layui-btn-lg layui-btn-fluid" lay-filter="regSubmit" lay-submit>
注册
</button>
</div>
</div>
<div class="login-oauth-group" style="padding-left: 42px;">
<a id="goQqLogin" href="javascript:;" title="QQ授权登录"><i class="layui-icon layui-icon-login-qq"></i></a>
<a id="goWxLogin" href="javascript:;" title="微信授权登录"><i class="layui-icon layui-icon-login-wechat"></i></a>
</div> </div>
</form> </form>
</div> </div>
@@ -107,7 +212,11 @@
var layer = layui.layer; var layer = layui.layer;
var form = layui.form; var form = layui.form;
// 表单提交 /**
* 注册表单提交
* 将表单数据以JSON格式POST到/register接口
* 成功后跳转至登录页,失败则弹出错误提示
*/
form.on('submit(regSubmit)', function (obj) { form.on('submit(regSubmit)', function (obj) {
var loadIndex = layer.load(2); var loadIndex = layer.load(2);
$.ajax({ $.ajax({
@@ -116,17 +225,10 @@
data: JSON.stringify(obj.field), data: JSON.stringify(obj.field),
contentType: "application/json", contentType: "application/json",
dataType: "json", dataType: "json",
beforeSend: function () {
// TODO...
},
success: function (res) { success: function (res) {
layer.close(loadIndex); layer.close(loadIndex);
if (res.code == 0) { if (res.code == 0) {
layer.msg('注册成功', { layer.msg('注册成功', {icon: 1, time: 1500}, function () {
icon: 1,
time: 1500
}, function () {
// 跳转至登录页
location.href = '/login'; location.href = '/login';
}); });
} else { } else {
@@ -140,9 +242,16 @@
return false; return false;
}); });
// 获取邮箱验证码 /**
* 获取邮箱验证码
* 1. 校验邮箱是否为空及格式是否正确
* 2. 弹出图形验证码弹窗
* 3. 用户输入图形验证码后,调用/sendEmail接口发送邮件验证码
* 4. 发送成功后启动60秒倒计时
*/
$('#btnGetCode').click(function () { $('#btnGetCode').click(function () {
var $btn = $(this); var $btn = $(this);
// 获取并校验邮箱
var $inputEmail = $('input[name="email"]'); var $inputEmail = $('input[name="email"]');
var email = $inputEmail.val(); var email = $inputEmail.val();
if (!email) { if (!email) {
@@ -154,6 +263,7 @@
layer.tips('邮箱格式不正确', $inputEmail, {tips: [1, '#ff4c4c']}); layer.tips('邮箱格式不正确', $inputEmail, {tips: [1, '#ff4c4c']});
return; return;
} }
// 弹出图形验证码弹窗
var layIndex = layer.open({ var layIndex = layer.open({
type: 1, type: 1,
title: false, title: false,
@@ -161,11 +271,11 @@
skin: 'layui-layer-admin', skin: 'layui-layer-admin',
content: $('#layerGetCode').html(), content: $('#layerGetCode').html(),
success: function () { success: function () {
// 图形验证码点击事件 // 图形验证码图片点击刷新
$('.layer-get-code>.lay-code-group>img').click(function () { $('.layer-get-code>.lay-code-group>img').click(function () {
this.src = this.src + '?t=' + new Date().getTime(); this.src = this.src + '?t=' + new Date().getTime();
}); });
// 立即发送按钮点击事件 // 弹窗内"立即发送"按钮点击事件
$('.layer-get-code .layui-btn-fluid').click(function () { $('.layer-get-code .layui-btn-fluid').click(function () {
var $input = $('.layer-get-code>.lay-code-group>input'); var $input = $('.layer-get-code>.lay-code-group>input');
var captcha = $input.val(); var captcha = $input.val();
@@ -173,8 +283,7 @@
layer.tips('请输入图形验证码', $input, {tips: [3, '#ff4c4c']}); layer.tips('请输入图形验证码', $input, {tips: [3, '#ff4c4c']});
return; return;
} }
// layer.msg('发送成功,请注意查收', {icon: 1}); // 启动倒计时并发送邮件验证码请求
// layer.close(layIndex);
startTimer($btn); startTimer($btn);
var loadIndex = layer.msg('邮件发送中...', {icon: 16, shade: 0.01, time: false}); var loadIndex = layer.msg('邮件发送中...', {icon: 16, shade: 0.01, time: false});
$.ajax({ $.ajax({
@@ -183,9 +292,6 @@
data: JSON.stringify({email: email, captcha: captcha, type: 2}), data: JSON.stringify({email: email, captcha: captcha, type: 2}),
contentType: "application/json", contentType: "application/json",
dataType: "json", dataType: "json",
beforeSend: function () {
// TODO...
},
success: function (res) { success: function (res) {
layer.close(loadIndex); layer.close(loadIndex);
if (res.code == 0) { if (res.code == 0) {
@@ -193,12 +299,10 @@
layer.close(layIndex); layer.close(layIndex);
startTimer($btn); startTimer($btn);
} else { } else {
// 发送失败,刷新图形验证码
/* 刷新验证码 */
$('img.register-captcha').click(function () { $('img.register-captcha').click(function () {
this.src = '/captcha?t=' + (new Date).getTime(); this.src = '/captcha?t=' + (new Date).getTime();
}).trigger('click'); }).trigger('click');
layer.msg(res.msg, {icon: 2, anim: 6}); layer.msg(res.msg, {icon: 2, anim: 6});
} }
}, },
@@ -212,58 +316,11 @@
}) })
}); });
// 获取短信验证码 /**
$("#btnMobileCode").click(function (){ * 按钮倒计时
* @param {Object} $btn - jQuery按钮对象
// 手机号 * @param {Number} second - 倒计时秒数,默认60秒
var $inputMobile = $('input[name="mobile"]'); */
var mobile = $inputMobile.val();
if (!mobile) {
layer.tips('请输入手机号', $inputMobile, {tips: [1, '#ff4c4c']});
return;
}
// 手机号格式验证
var mobileReg = /^1(3|4|5|6|7|8|9)\d{9}$/;
if(!(mobileReg.test(mobile))){
layer.tips('手机号格式不正确', $inputMobile, {tips: [1, '#ff4c4c']});
return;
}
// 当前按钮对象
var $btn = $(this);
// 计时器
startTimer($btn);
// 发送验证码请求
var loadIndex = layer.msg('短信发送中...', {icon: 16, shade: 0.01, time: false});
$.ajax({
type: "POST",
url: '/sendSms',
data: JSON.stringify({mobile: mobile, type: 2}),
contentType: "application/json",
dataType: "json",
beforeSend: function () {
// TODO...
},
success: function (res) {
layer.close(loadIndex);
if (res.code == 0) {
layer.msg(res.msg, {icon: 1});
startTimer($btn);
} else {
layer.msg(res.msg, {icon: 2, anim: 6});
}
},
error: function () {
layer.msg("AJAX请求异常");
}
});
return false;
});
// 按钮开始倒计时
function startTimer($btn, second) { function startTimer($btn, second) {
second || (second = 60); second || (second = 60);
$btn.attr('org-text', $btn.text()); $btn.attr('org-text', $btn.text());
@@ -283,25 +340,10 @@
}, 1000); }, 1000);
} }
/* 图形验证码 */ /* 页面加载时刷新图形验证码,点击图片也可刷新 */
$('img.register-captcha').click(function () { $('img.register-captcha').click(function () {
this.src = '/captcha?t=' + (new Date).getTime(); this.src = '/captcha?t=' + (new Date).getTime();
}).trigger('click'); }).trigger('click');
// QQ登录
$('#goQqLogin').click(function () {
layui.layer.msg('抱歉,QQ登录暂未开放', {icon: 5, anim: 6});
});
// 微信登录
$('#goWxLogin').click(function () {
layui.layer.msg('抱歉,微信登录暂未开放', {icon: 5, anim: 6});
});
// /* 图形验证码 */
// $('img.login-captcha').click(function () {
// this.src = '/captcha?t=' + (new Date).getTime();
// }).trigger('click');
}); });
</script> </script>
</body> </body>
@@ -2,9 +2,9 @@
<div class="layui-card"> <div class="layui-card">
<div class="layui-card-body user-info-card"> <div class="layui-card-body user-info-card">
<div class="user-info-top text-center layui-text"> <div class="user-info-top text-center layui-text">
<div class="user-info-head"> <div th:class="${userInfo['isVip'] == 1} ? 'user-info-head vip' : 'user-info-head'">
<img src="/static/assets/images/logo.png"/> <img src="/static/assets/images/logo.png"/>
<span th:if="${userInfo['isVip'] == 1}" class="ew-vip-badge">VIP</span> <span th:if="${userInfo['isVip'] == 1}" class="ew-vip-badge"><i class="layui-icon layui-icon-diamond"></i> VIP</span>
</div> </div>
<h2 th:text="${userInfo['nickname']}"></h2> <h2 th:text="${userInfo['nickname']}"></h2>
<p th:text="${userInfo['signature']}?:'这家伙很懒,什么都不说~'"></p> <p th:text="${userInfo['signature']}?:'这家伙很懒,什么都不说~'"></p>