70 lines
2.1 KiB
Go
70 lines
2.1 KiB
Go
|
|
package commands
|
||
|
|
|
||
|
|
import (
|
||
|
|
"time"
|
||
|
|
|
||
|
|
"github.com/shopspring/decimal"
|
||
|
|
)
|
||
|
|
|
||
|
|
// CreateWalletCommand 创建钱包命令
|
||
|
|
type CreateWalletCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// UpdateWalletCommand 更新钱包命令
|
||
|
|
type UpdateWalletCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
Balance decimal.Decimal `json:"balance"`
|
||
|
|
IsActive *bool `json:"is_active"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// RechargeWalletCommand 充值钱包命令
|
||
|
|
type RechargeWalletCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
Amount decimal.Decimal `json:"amount" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// RechargeCommand 充值命令
|
||
|
|
type RechargeCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
Amount decimal.Decimal `json:"amount" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// WithdrawWalletCommand 提现钱包命令
|
||
|
|
type WithdrawWalletCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
Amount decimal.Decimal `json:"amount" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// WithdrawCommand 提现命令
|
||
|
|
type WithdrawCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
Amount decimal.Decimal `json:"amount" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// CreateUserSecretsCommand 创建用户密钥命令
|
||
|
|
type CreateUserSecretsCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
ExpiresAt *time.Time `json:"expires_at"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// RegenerateAccessKeyCommand 重新生成访问密钥命令
|
||
|
|
type RegenerateAccessKeyCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
ExpiresAt *time.Time `json:"expires_at"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// DeactivateUserSecretsCommand 停用用户密钥命令
|
||
|
|
type DeactivateUserSecretsCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
}
|
||
|
|
|
||
|
|
// WalletTransactionCommand 钱包交易命令
|
||
|
|
type WalletTransactionCommand struct {
|
||
|
|
UserID string `json:"user_id" binding:"required"`
|
||
|
|
FromUserID string `json:"from_user_id" binding:"required"`
|
||
|
|
ToUserID string `json:"to_user_id" binding:"required"`
|
||
|
|
Amount decimal.Decimal `json:"amount" binding:"required"`
|
||
|
|
Notes string `json:"notes"`
|
||
|
|
}
|