From c9ad43f1297d13c316e0d6f6ec5392e10b52c20e Mon Sep 17 00:00:00 2001 From: ianchen0119 Date: Tue, 26 Dec 2023 10:14:38 +0000 Subject: [PATCH 1/3] support GetIdentityDataProcedure() --- internal/sbi/producer/data_repository.go | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/internal/sbi/producer/data_repository.go b/internal/sbi/producer/data_repository.go index 38a28cf..94d995b 100644 --- a/internal/sbi/producer/data_repository.go +++ b/internal/sbi/producer/data_repository.go @@ -2540,9 +2540,15 @@ func HandleGetIdentityData(request *httpwrapper.Request) *httpwrapper.Response { collName := "subscriptionData.identityData" response, problemDetails := GetIdentityDataProcedure(collName, ueId) - if response != nil { - return httpwrapper.NewResponse(http.StatusOK, nil, response) + res := models.IdentityData{} + if (*response)["gpsi"] != nil { + res.GpsiList = append(res.GpsiList, (*response)["gpsi"].(string)) + } + if (*response)["ueId"] != nil { + res.SupiList = append(res.SupiList, (*response)["ueId"].(string)) + } + return httpwrapper.NewResponse(http.StatusOK, nil, res) } else if problemDetails != nil { return httpwrapper.NewResponse(int(problemDetails.Status), nil, problemDetails) } @@ -2552,7 +2558,12 @@ func HandleGetIdentityData(request *httpwrapper.Request) *httpwrapper.Response { } func GetIdentityDataProcedure(collName string, ueId string) (*map[string]interface{}, *models.ProblemDetails) { - filter := bson.M{"ueId": ueId} + filter := bson.M{ + "$or": []bson.M{ + bson.M{"gpsi": ueId}, + bson.M{"ueId": ueId}, + }, + } data, pd := getDataFromDB(collName, filter) if pd != nil { logger.DataRepoLog.Errorf("GetIdentityDataProcedure err: %s", pd.Detail) From f446476a78161c65e93d33e1a9061488c3ab37c5 Mon Sep 17 00:00:00 2001 From: ianchen0119 Date: Tue, 26 Dec 2023 10:17:28 +0000 Subject: [PATCH 2/3] fix ci linter error --- internal/sbi/producer/data_repository.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/internal/sbi/producer/data_repository.go b/internal/sbi/producer/data_repository.go index 94d995b..51e2c66 100644 --- a/internal/sbi/producer/data_repository.go +++ b/internal/sbi/producer/data_repository.go @@ -2542,11 +2542,13 @@ func HandleGetIdentityData(request *httpwrapper.Request) *httpwrapper.Response { response, problemDetails := GetIdentityDataProcedure(collName, ueId) if response != nil { res := models.IdentityData{} - if (*response)["gpsi"] != nil { - res.GpsiList = append(res.GpsiList, (*response)["gpsi"].(string)) + gpsi, ok := (*response)["gpsi"] + if ok { + res.GpsiList = append(res.GpsiList, gpsi.(string)) } - if (*response)["ueId"] != nil { - res.SupiList = append(res.SupiList, (*response)["ueId"].(string)) + ueId, ok := (*response)["ueId"] + if ok { + res.SupiList = append(res.SupiList, ueId.(string)) } return httpwrapper.NewResponse(http.StatusOK, nil, res) } else if problemDetails != nil { @@ -2560,8 +2562,8 @@ func HandleGetIdentityData(request *httpwrapper.Request) *httpwrapper.Response { func GetIdentityDataProcedure(collName string, ueId string) (*map[string]interface{}, *models.ProblemDetails) { filter := bson.M{ "$or": []bson.M{ - bson.M{"gpsi": ueId}, - bson.M{"ueId": ueId}, + {"gpsi": ueId}, + {"ueId": ueId}, }, } data, pd := getDataFromDB(collName, filter) From 5cbb31601a57e33af0e14e3aa07735d271a60fa6 Mon Sep 17 00:00:00 2001 From: "CTFang@WireLab" Date: Wed, 27 Dec 2023 04:35:09 +0000 Subject: [PATCH 3/3] Fix: modify log message --- internal/sbi/producer/data_repository.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/sbi/producer/data_repository.go b/internal/sbi/producer/data_repository.go index 51e2c66..ede3cd4 100644 --- a/internal/sbi/producer/data_repository.go +++ b/internal/sbi/producer/data_repository.go @@ -2560,6 +2560,7 @@ func HandleGetIdentityData(request *httpwrapper.Request) *httpwrapper.Response { } func GetIdentityDataProcedure(collName string, ueId string) (*map[string]interface{}, *models.ProblemDetails) { + logger.DataRepoLog.Debugf("Handle GetIdentityDataProcedure: %+v", ueId) filter := bson.M{ "$or": []bson.M{ {"gpsi": ueId}, @@ -2568,7 +2569,7 @@ func GetIdentityDataProcedure(collName string, ueId string) (*map[string]interfa } data, pd := getDataFromDB(collName, filter) if pd != nil { - logger.DataRepoLog.Errorf("GetIdentityDataProcedure err: %s", pd.Detail) + logger.DataRepoLog.Errorf("GetIdentityDataProcedure err: %+v", pd) return nil, pd } return &data, nil