From a50bc2a20c69b33eaba2c8de6c5c23a9d0e2a410 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Fri, 30 Aug 2024 09:42:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=86=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/amqp/consumer/CancelUnPayOrder.go | 11 ++++++++++- api/amqp/consumer/CouponExpire.go | 2 +- api/amqp/consumer/UserCouponExpire.go | 2 +- api/amqp/consumer/UserMemberExpire.go | 11 ++++++++++- api/amqp/consumer/base.go | 1 + api/controller/UserCollection.go | 2 -- 6 files changed, 23 insertions(+), 6 deletions(-) diff --git a/api/amqp/consumer/CancelUnPayOrder.go b/api/amqp/consumer/CancelUnPayOrder.go index 05f9a2c..e9a86ed 100644 --- a/api/amqp/consumer/CancelUnPayOrder.go +++ b/api/amqp/consumer/CancelUnPayOrder.go @@ -23,7 +23,7 @@ type cancelUnPayOrderData struct { func CancelUnPayOrder(msg amqp091.Delivery) { defer func() { if r := recover(); r != nil { - utils.LogJsonInfo("consumer.CancelUnPayOrder:", r) + utils.LogJsonErr("consumer.CancelUnPayOrder:", r) _ = msg.Reject(false) } }() @@ -43,6 +43,15 @@ func CancelUnPayOrder(msg amqp091.Delivery) { return } + // 检测执行次数 + key := "CancelUnPayOrder" + data.OrderId + res := checkHandleNumber(key) + if res == false { + utils.LogJsonErr("consumer.CancelUnPayOrder:", "超出最大执行次数或检测错误") + _ = msg.Ack(false) + return + } + orderId, err := strconv.ParseInt(data.OrderId, 10, 64) if err != nil { _ = msg.Ack(false) diff --git a/api/amqp/consumer/CouponExpire.go b/api/amqp/consumer/CouponExpire.go index 78d6118..624f7fb 100644 --- a/api/amqp/consumer/CouponExpire.go +++ b/api/amqp/consumer/CouponExpire.go @@ -20,7 +20,7 @@ type couponExpireData struct { func CouponExpire(msg amqp091.Delivery) { defer func() { if r := recover(); r != nil { - utils.LogJsonInfo("consumer.CouponExpire:", r) + utils.LogJsonErr("consumer.CouponExpire:", r) _ = msg.Reject(false) } }() diff --git a/api/amqp/consumer/UserCouponExpire.go b/api/amqp/consumer/UserCouponExpire.go index 1e737b7..994699a 100644 --- a/api/amqp/consumer/UserCouponExpire.go +++ b/api/amqp/consumer/UserCouponExpire.go @@ -20,7 +20,7 @@ type userCouponExpireData struct { func UserCouponExpire(msg amqp091.Delivery) { defer func() { if r := recover(); r != nil { - utils.LogJsonInfo("consumer.UserCouponExpire:", r) + utils.LogJsonErr("consumer.UserCouponExpire:", r) _ = msg.Reject(false) } }() diff --git a/api/amqp/consumer/UserMemberExpire.go b/api/amqp/consumer/UserMemberExpire.go index a386f8a..bdfb959 100644 --- a/api/amqp/consumer/UserMemberExpire.go +++ b/api/amqp/consumer/UserMemberExpire.go @@ -20,7 +20,7 @@ type userMemberExpireData struct { func UserMemberExpire(msg amqp091.Delivery) { defer func() { if r := recover(); r != nil { - utils.LogJsonInfo("consumer.UserMemberExpire:", r) + utils.LogJsonErr("consumer.UserMemberExpire:", r) _ = msg.Reject(false) } }() @@ -40,6 +40,15 @@ func UserMemberExpire(msg amqp091.Delivery) { return } + // 检测执行次数 + key := "UserMemberExpire" + data.UserId + res := checkHandleNumber(key) + if res == false { + utils.LogJsonErr("consumer.UserMemberExpire:", "超出最大执行次数或检测错误") + _ = msg.Ack(false) + return + } + userId, err := strconv.ParseInt(data.UserId, 10, 64) if err != nil { _ = msg.Ack(false) diff --git a/api/amqp/consumer/base.go b/api/amqp/consumer/base.go index 1d52b97..685094e 100644 --- a/api/amqp/consumer/base.go +++ b/api/amqp/consumer/base.go @@ -28,6 +28,7 @@ func checkHandleNumber(key string) bool { // 返回false,删除掉缓存 global.Redis.Del(c, key) + return false } // 增加1次 diff --git a/api/controller/UserCollection.go b/api/controller/UserCollection.go index d0e5f66..f4b9f39 100644 --- a/api/controller/UserCollection.go +++ b/api/controller/UserCollection.go @@ -61,8 +61,6 @@ func (b *UserCollection) GetUserCollectionPage(c *gin.Context) { // PutUserCollection 收藏题目 func (r *UserCollection) PutUserCollection(c *gin.Context) { - utils.LogJsonInfo("test", "1222333") - userCollectionRequest := requests.UserCollectionRequest{} req := userCollectionRequest.PutUserCollection if err := c.ShouldBindJSON(&req); err != nil {