25 lines
541 B
Go
25 lines
541 B
Go
package tasks
|
|
|
|
import (
|
|
"encoding/json"
|
|
"github.com/hibiken/asynq"
|
|
"log/slog"
|
|
trade2 "platform/web/domains/trade"
|
|
)
|
|
|
|
const CancelTrade = "trade:update"
|
|
|
|
type CancelTradeData struct {
|
|
TradeNo string `json:"trade_no" validate:"required"`
|
|
Method trade2.Method `json:"method" validate:"required"`
|
|
}
|
|
|
|
func NewCancelTrade(data CancelTradeData) *asynq.Task {
|
|
bytes, err := json.Marshal(data)
|
|
if err != nil {
|
|
slog.Error("序列化更新交易任务失败", "error", err)
|
|
return nil
|
|
}
|
|
return asynq.NewTask(CancelTrade, bytes)
|
|
}
|