From 1f2b337642651084b3d4f814c44b9773e11524a1 Mon Sep 17 00:00:00 2001 From: hucan <951870319@qq.com> Date: Sat, 12 Jul 2025 17:21:11 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=8E=BB=E6=8E=89=E9=99=90=E6=B5=81?= =?UTF-8?q?=202=E3=80=81=E6=94=AF=E4=BB=98=E5=9B=9E=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/service/tm_recharge_log.go | 10 +++++++++- cmd/api/server.go | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/admin/service/tm_recharge_log.go b/app/admin/service/tm_recharge_log.go index 807d37c..c1512fc 100644 --- a/app/admin/service/tm_recharge_log.go +++ b/app/admin/service/tm_recharge_log.go @@ -367,6 +367,14 @@ func (e *TmRechargeLog) PayCallBack(logs *[]dto.TmRechargeCallbackReq) error { continue } + var count int64 + e.Orm.Model(&models.TmRechargeLog{}).Where("tx_hash = ?", log.TxHash).Count(&count) + + if count > 0 { + e.Log.Errorf("订单已存在:%s \r\n", log.TxHash) + continue + } + var data models.TmRechargeLog if err := e.Orm.Model(&models.TmRechargeLog{}).Where("order_no = ?", orderNo).First(&data).Error; err != nil { e.Log.Errorf("获取充值记录失败 error:%s \r\n", err) @@ -398,7 +406,7 @@ func (e *TmRechargeLog) PayCallBack(logs *[]dto.TmRechargeCallbackReq) error { ExpireAt: data.ExpireAt.Unix(), } err = e.Orm.Transaction(func(tx *gorm.DB) error { - if err1 := e.Orm.Model(&models.TmRechargeLog{}).Where("id =?", data.Id).Updates(map[string]interface{}{"tx_hash": log.TxHash, "status": 2, "pay_time": now}).Error; err1 != nil { + if err1 := tx.Model(&models.TmRechargeLog{}).Where("id =?", data.Id).Updates(map[string]interface{}{"tx_hash": log.TxHash, "status": 2, "pay_time": now}).Error; err1 != nil { e.Log.Errorf("发起充值记录失败 error:%s \r\n", err1) return err1 } diff --git a/cmd/api/server.go b/cmd/api/server.go index fb00de7..4839e5a 100644 --- a/cmd/api/server.go +++ b/cmd/api/server.go @@ -227,8 +227,8 @@ func initRouter() { r.Use(handler.TlsHandler()) } //r.Use(middleware.Metrics()) - r.Use(common.Sentinel()). - Use(common.RequestId(pkg.TrafficKey)). + // r.Use(common.Sentinel()). + r.Use(common.RequestId(pkg.TrafficKey)). Use(api.SetRequestLogger) common.InitMiddleware(r)