From 7f8f6c2095657ffb00bad66ce5265cabdfcce532 Mon Sep 17 00:00:00 2001 From: huangjiajun <582604932@qq.com> Date: Thu, 14 Aug 2025 16:05:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/lib/sms/sms.go | 24 ++++++++++++++-- app/svc/platform/svc_withdrawal.go | 45 ++++++++++-------------------- 2 files changed, 36 insertions(+), 33 deletions(-) diff --git a/app/lib/sms/sms.go b/app/lib/sms/sms.go index 9b6e819..9eea772 100644 --- a/app/lib/sms/sms.go +++ b/app/lib/sms/sms.go @@ -7,9 +7,12 @@ import ( "applet/app/utils" "applet/app/utils/cache" "applet/app/utils/logx" - "code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/sms" + "code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/aliyun" + "errors" "fmt" "github.com/tidwall/gjson" + "math/rand" + "time" "github.com/gin-gonic/gin" ) @@ -75,10 +78,25 @@ func GetSmsConfig(c *gin.Context, zone string, postData map[string]interface{}) postData["zone"] = zone postData["smsmsg_key"] = "30dc33054b635" postData["uid"] = c.GetString("master_id") - err := sms.SmsSendZy(db.Db, postData) + captcha := createCaptcha() + data := AliyunSmsBase(c) + err := aliyun.AliyunSendSmsOwn(data["aliyun_sms_id"], data["aliyun_sms_secret"], postData["mobile"].(string), data["aliyun_sms_sign_name"], data["aliyun_sms_code"], "{\"code\":\""+captcha+"\"}") if err != nil { - return err + return errors.New("发送失败") } + cache.SetEx("zhimeng:sms."+c.GetString("master_id")+":"+postData["mobile"].(string), captcha, 300) return nil } +func createCaptcha() string { + return fmt.Sprintf("%04v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(10000)) +} +func AliyunSmsBase(c *gin.Context) map[string]string { + data := map[string]string{ + "aliyun_sms_id": "LTAI5tFzD9fUoYkp9SE6zcQb", + "aliyun_sms_secret": "B8Jz7x2tn5YhHbba4vxmcdIufNtkAh", + "aliyun_sms_code": "SMS_492445554", + "aliyun_sms_sign_name": "广东智莺科技", + } + return data +} diff --git a/app/svc/platform/svc_withdrawal.go b/app/svc/platform/svc_withdrawal.go index 964f38c..dffd8b6 100644 --- a/app/svc/platform/svc_withdrawal.go +++ b/app/svc/platform/svc_withdrawal.go @@ -5,7 +5,6 @@ import ( "applet/app/db/model" offical "applet/app/db/official" "applet/app/e" - "applet/app/lib/mob" "applet/app/utils" "applet/app/utils/cache" "encoding/json" @@ -322,11 +321,6 @@ func WithdrawalBindAlipay(c *gin.Context) { e.OutErr(c, 400, e.NewErr(400, "支付宝信息不能为空")) return } - mob1, errr := mob.GetMobSDK(c.GetString("master_id")) - if errr != nil { - e.OutErr(c, e.ERR_MOB_CONFIG, errr) - return - } if c.GetString("is_system") == "" { e.OutErr(c, 400, e.NewErr(400, "请重新在后台进入聚合联盟")) return @@ -335,34 +329,25 @@ func WithdrawalBindAlipay(c *gin.Context) { e.OutErr(c, 400, e.NewErr(400, "请使用超管账号设置")) return } - send := map[string]interface{}{ - "phone": c.GetString("phone"), - "zone": "86", - "code": args["captcha"], - } - ok, err := mob1.MobSMS(c, send) - if err != nil { - e.OutErr(c, 400, err.Error()) + code, _ := cache.GetString("zhimeng:sms." + c.GetString("master_id") + ":" + c.GetString("phone")) + if code != args["captcha"] { + e.OutErr(c, 400, e.NewErr(400, "验证码错误,请重试")) return } - ok = true - if ok { - masterId, _ := c.Get("master_id") - mid := utils.AnyToString(masterId) - masterDb := db.MasterDb{} - masterDb.Set() - master := masterDb.GetMaster(mid) - master.AlipayName = args["alipay_name"] - master.Alipay = args["alipay"] - update := masterDb.MasterUpdate(master) - if update == false { - e.OutErr(c, 400, e.NewErr(400, "修改失败")) - return - } - e.OutSuc(c, "success", nil) + cache.Del("zhimeng:sms." + c.GetString("master_id") + ":" + c.GetString("phone")) + masterId, _ := c.Get("master_id") + mid := utils.AnyToString(masterId) + masterDb := db.MasterDb{} + masterDb.Set() + master := masterDb.GetMaster(mid) + master.AlipayName = args["alipay_name"] + master.Alipay = args["alipay"] + update := masterDb.MasterUpdate(master) + if update == false { + e.OutErr(c, 400, e.NewErr(400, "修改失败")) return } - e.OutErr(c, 400, e.NewErr(400, "验证码错误")) + e.OutSuc(c, "success", nil) return }