diff --git a/web/service/inbound.go b/web/service/inbound.go index 4abc88c3..b0aed169 100644 --- a/web/service/inbound.go +++ b/web/service/inbound.go @@ -1951,8 +1951,8 @@ func (s *InboundService) GetClientTrafficByEmail(email string) (traffic *xray.Cl return nil, err } if t != nil && client != nil { - // Ensure enable mirrors the client's current enable flag in settings t.Enable = client.Enable + t.SubId = client.SubID return t, nil } return nil, nil @@ -1993,6 +1993,7 @@ func (s *InboundService) GetClientTrafficByID(id string) ([]xray.ClientTraffic, for i := range traffics { if ct, client, e := s.GetClientByEmail(traffics[i].Email); e == nil && ct != nil && client != nil { traffics[i].Enable = client.Enable + traffics[i].SubId = client.SubID } } return traffics, err diff --git a/xray/client_traffic.go b/xray/client_traffic.go index fe527d55..84c509ac 100644 --- a/xray/client_traffic.go +++ b/xray/client_traffic.go @@ -5,6 +5,7 @@ type ClientTraffic struct { InboundId int `json:"inboundId" form:"inboundId"` Enable bool `json:"enable" form:"enable"` Email string `json:"email" form:"email" gorm:"unique"` + SubId string `json:"subId" form:"subId" gorm:"-"` Up int64 `json:"up" form:"up"` Down int64 `json:"down" form:"down"` AllTime int64 `json:"allTime" form:"allTime"`