wireguard-dashboard/http/vo/client.go

47 lines
2.3 KiB
Go
Raw Normal View History

2024-07-05 14:41:35 +08:00
package vo
import "wireguard-ui/model"
// ClientItem
// @description: 客户端信息
type ClientItem struct {
Id string `json:"id"` // id
Name string `json:"name"` // 名称
Email string `json:"email"` // 通知邮箱
2024-07-05 14:41:35 +08:00
IpAllocation []string `json:"ipAllocation" gorm:"-"` // 分配的IP
IpAllocationStr string `json:"-" gorm:"ipAllocationStr"`
AllowedIps []string `json:"allowedIps" gorm:"-"` // 允许访问的IP
AllowedIpsStr string `json:"-" gorm:"allowedIpsStr"`
ExtraAllowedIps []string `json:"extraAllowedIps" gorm:"-"` // 其他允许访问的IP
ExtraAllowedIpsStr string `json:"-" gorm:"extraAllowedIpsStr"`
Endpoint string `json:"endpoint"` // 服务端点
UseServerDns int `json:"useServerDns"` // 是否使用服务端DNS
Keys *Keys `json:"keys" gorm:"-"` // 密钥等
KeysStr string `json:"-" gorm:"keys_str"`
CreateUser string `json:"createUser"` // 创建人
Enabled int `json:"enabled"` // 是否启用
OfflineMonitoring int `json:"offlineMonitoring"` // 离线通知
DataTraffic *DataTraffic `json:"dataTraffic" gorm:"-"` // 数据流量
CreatedAt model.JsonTime `json:"createdAt"` // 创建时间
UpdatedAt model.JsonTime `json:"updatedAt"` // 更新时间
2024-07-05 14:41:35 +08:00
}
type Keys struct {
PrivateKey string `json:"privateKey"`
PublicKey string `json:"publicKey"`
PresharedKey string `json:"presharedKey"`
}
// DataTraffic
// @description: 数据流量
type DataTraffic struct {
2024-08-09 11:06:58 +08:00
Name string `json:"name"` // 客户端名称
Email string `json:"email"` // 联系邮箱
IpAllocation string `json:"ipAllocation"` // 分配的IP
Online bool `json:"online"` // 是否在线
ReceiveBytes string `json:"receiveBytes"` // 接收流量
TransmitBytes string `json:"transmitBytes"` // 传输流量
ConnectEndpoint string `json:"connectEndpoint"` // 链接端点
LastHandAt string `json:"lastHandAt"` // 最后握手时间
}