Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'web/service')
-rw-r--r--web/service/inbound.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/web/service/inbound.go b/web/service/inbound.go
index 6f9aac98..25a43f47 100644
--- a/web/service/inbound.go
+++ b/web/service/inbound.go
@@ -1750,6 +1750,25 @@ func (s *InboundService) GetClientTrafficByEmail(email string) (traffic *xray.Cl
return nil, nil
}
+func (s *InboundService) GetClientTrafficByID(id string) ([]xray.ClientTraffic, error) {
+ db := database.GetDB()
+ var traffics []xray.ClientTraffic
+
+ err := db.Model(xray.ClientTraffic{}).Where(`email IN(
+ SELECT JSON_EXTRACT(client.value, '$.email') as email
+ FROM inbounds,
+ JSON_EACH(JSON_EXTRACT(inbounds.settings, '$.clients')) AS client
+ WHERE
+ JSON_EXTRACT(client.value, '$.id') in (?)
+ )`, id).Find(&traffics).Error
+
+ if err != nil {
+ logger.Debug(err)
+ return nil, err
+ }
+ return traffics, err
+}
+
func (s *InboundService) SearchClientTraffic(query string) (traffic *xray.ClientTraffic, err error) {
db := database.GetDB()
inbound := &model.Inbound{}