fix: UDM用户数据批量删除后获取数据
This commit is contained in:
@@ -23,7 +23,8 @@ type UDMAuthImpl struct {
|
||||
// authDataByRedis UDM鉴权用户
|
||||
func (r *UDMAuthImpl) authDataByRedis(imsi, neID string) []model.UDMAuth {
|
||||
arr := []model.UDMAuth{}
|
||||
ausfArr, err := redis.GetKeys("udmuser", fmt.Sprintf("ausf:%s", imsi))
|
||||
key := fmt.Sprintf("ausf:%s", imsi)
|
||||
ausfArr, err := redis.GetKeys("udmuser", key)
|
||||
if err != nil {
|
||||
return arr
|
||||
}
|
||||
@@ -166,11 +167,12 @@ func (r *UDMAuthImpl) Delete(neID, imsi string) int64 {
|
||||
|
||||
// Insert UDM鉴权用户-删除范围
|
||||
func (r *UDMAuthImpl) Deletes(neID, imsi, num string) int64 {
|
||||
prefix := imsi[:len(imsi)-len(num)]
|
||||
// keys udm-sd:4600001000004*
|
||||
prefix := imsi[:len(imsi)-len(num)-1]
|
||||
// 直接删除前缀的记录
|
||||
r.udmAuthRepository.DeletePrefixImsi(neID, prefix)
|
||||
// keys ausf:4600001000004*
|
||||
authArr := r.authDataByRedis(prefix+"*", neID)
|
||||
if len(authArr) > 0 {
|
||||
r.udmAuthRepository.DeletePrefixImsi(neID, prefix)
|
||||
return r.udmAuthRepository.Inserts(authArr)
|
||||
}
|
||||
return 0
|
||||
|
||||
@@ -23,7 +23,8 @@ type UDMSubImpl struct {
|
||||
// subDataByRedis UDM签约用户
|
||||
func (r *UDMSubImpl) subDataByRedis(imsi, neID string) []model.UDMSub {
|
||||
arr := []model.UDMSub{}
|
||||
udmsdArr, err := redis.GetKeys("udmuser", fmt.Sprintf("udm-sd:%s", imsi))
|
||||
key := fmt.Sprintf("udm-sd:%s", imsi)
|
||||
udmsdArr, err := redis.GetKeys("udmuser", key)
|
||||
if err != nil {
|
||||
return arr
|
||||
}
|
||||
@@ -180,11 +181,12 @@ func (r *UDMSubImpl) Delete(neID, imsi string) int64 {
|
||||
|
||||
// Insert UDM签约用户-删除范围
|
||||
func (r *UDMSubImpl) Deletes(neID, imsi, num string) int64 {
|
||||
prefix := imsi[:len(imsi)-len(num)]
|
||||
prefix := imsi[:len(imsi)-len(num)-1]
|
||||
// 直接删除前缀的记录
|
||||
r.udmSubRepository.DeletePrefixImsi(neID, prefix)
|
||||
// keys udm-sd:4600001000004*
|
||||
authArr := r.subDataByRedis(prefix+"*", neID)
|
||||
if len(authArr) > 0 {
|
||||
r.udmSubRepository.DeletePrefixImsi(neID, prefix)
|
||||
return r.udmSubRepository.Inserts(authArr)
|
||||
}
|
||||
return 0
|
||||
|
||||
Reference in New Issue
Block a user