diff --git a/features/udm_user/api_udm_user.go b/features/udm_user/api_udm_user.go index 0d8f16e2..5216e297 100644 --- a/features/udm_user/api_udm_user.go +++ b/features/udm_user/api_udm_user.go @@ -254,20 +254,18 @@ func (s *UdmUserApi) UdmAuthUserInfo(w http.ResponseWriter, r *http.Request) { ctx.JSON(w, 200, result.ErrMsg(err.Error())) return } + // 返回查询的用户信息 + userInfo := model.UdmAuthUser{ + Imsi: imsi, + Amf: data["amf"], + AlgoIndex: data["algo"], + Opc: data["opc"], + Ki: data["ki"], + } + // 查询数据库是否存在并存入 neId = "" - var userInfo model.UdmAuthUser list := s.authUser.List(model.UdmAuthUser{NeID: neId, Imsi: imsi}) - if len(list) > 0 { - userInfo = list[0] - } else { - userInfo = model.UdmAuthUser{ - Imsi: imsi, - Amf: data["amf"], - AlgoIndex: data["algo"], - Opc: data["opc"], - Ki: data["ki"], - } - + if len(list) == 0 { s.authUser.Insert(neId, userInfo) } ctx.JSON(w, 200, result.OkData(userInfo)) @@ -655,40 +653,39 @@ func (s *UdmUserApi) UdmSubUserInfo(w http.ResponseWriter, r *http.Request) { return } - neId = "" - var userInfo model.UdmSubUser - list := s.subUser.List(model.UdmSubUser{NeID: neId, Imsi: imsi}) - if len(list) > 0 { - userInfo = list[0] - } else { - cnType, _ := strconv.ParseInt(data["CNType"][:4], 0, 64) - rat, _ := strconv.ParseInt(data["RAT"][:4], 0, 64) - userInfo = model.UdmSubUser{ - Imsi: imsi, - Msisdn: data["MSISDN"], - Ambr: data["AMBR"], - Arfb: data["AreaForbidden"], - Cn: fmt.Sprint(cnType), - SmData: data["SM-Data(snssai+dnn[1..n])"], - Sar: data["ServiceAreaRestriction"], - Nssai: data["NSSAI"], - SmfSel: data["Smf-Selection"], - Rat: fmt.Sprint(rat), - } - // 1,64,24,65,def_eps,1,2,010200000000,- - if v, ok := data["EPS-Data"]; ok { - userInfo.EpsDat = v - arr := strings.Split(v, ",") - userInfo.EpsFlag = arr[0] - userInfo.EpsOdb = arr[1] - userInfo.HplmnOdb = arr[2] - userInfo.Ard = arr[3] - userInfo.Epstpl = arr[4] - userInfo.ContextId = arr[5] - userInfo.ApnContext = arr[7] - userInfo.StaticIp = arr[8] - } + // 返回查询的用户信息 + cnType, _ := strconv.ParseInt(data["CNType"][:4], 0, 64) + rat, _ := strconv.ParseInt(data["RAT"][:4], 0, 64) + userInfo := model.UdmSubUser{ + Imsi: imsi, + Msisdn: data["MSISDN"], + Ambr: data["AMBR"], + Arfb: data["AreaForbidden"], + Cn: fmt.Sprint(cnType), + SmData: data["SM-Data(snssai+dnn[1..n])"], + Sar: data["ServiceAreaRestriction"], + Nssai: data["NSSAI"], + SmfSel: data["Smf-Selection"], + Rat: fmt.Sprint(rat), + } + // 1,64,24,65,def_eps,1,2,010200000000,- + if v, ok := data["EPS-Data"]; ok { + userInfo.EpsDat = v + arr := strings.Split(v, ",") + userInfo.EpsFlag = arr[0] + userInfo.EpsOdb = arr[1] + userInfo.HplmnOdb = arr[2] + userInfo.Ard = arr[3] + userInfo.Epstpl = arr[4] + userInfo.ContextId = arr[5] + userInfo.ApnContext = arr[7] + userInfo.StaticIp = arr[8] + } + // 查询数据库是否存在并存入 + neId = "" + list := s.subUser.List(model.UdmSubUser{NeID: neId, Imsi: imsi}) + if len(list) == 0 { s.subUser.Insert(neId, userInfo) } ctx.JSON(w, 200, result.OkData(userInfo))