diff --git a/internal/cron/task.go b/internal/cron/task.go index 9b8eaa7..13ed901 100644 --- a/internal/cron/task.go +++ b/internal/cron/task.go @@ -608,9 +608,12 @@ func orderCreate() { temp := order4.CreateProfit(v.UserID, v.Type, b2, orderNew.Id) profitNew = append(profitNew, temp) } - if err = tx.Create(profitNew).Error; err != nil { - log.Println(err.Error()) - return err + + if len(profitNew) != 0 { + if err = tx.Create(profitNew).Error; err != nil { + log.Println(err.Error()) + return err + } } return nil diff --git a/internal/mq/mq.go b/internal/mq/mq.go index 7e97a59..0a7ad11 100644 --- a/internal/mq/mq.go +++ b/internal/mq/mq.go @@ -4,8 +4,10 @@ import ( "fmt" "log" "recook/configs" + "runtime" "time" + "git.oa00.com/go/logger" "github.com/streadway/amqp" ) @@ -53,6 +55,16 @@ func (o rabbitMq) ListenRetry(queue string, count int, handler func([]byte) erro log.Printf("%s:%s\n", queue, err.Error()) return } + defer func() { + if err := recover(); err != nil { + fmt.Println(err) + switch err.(type) { + case runtime.Error, string: + str := fmt.Sprintf("recovered (runtime.Error) panic:%s", err) + logger.Logger.Error(str) + } + } + }() defer ch.Close() closeChan := make(chan *amqp.Error, 1) notifyClose := ch.NotifyClose(closeChan)