fix: UDM用户获取sql查询问题
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
|
||||
"ems.agt/features/udm_user/model"
|
||||
"ems.agt/features/udm_user/service"
|
||||
"ems.agt/lib/core/conf"
|
||||
"ems.agt/lib/core/file"
|
||||
mmlclient "ems.agt/lib/core/mml_client"
|
||||
"ems.agt/lib/core/utils/ctx"
|
||||
@@ -250,7 +251,6 @@ func (s *UdmUserApi) UdmAuthUserInfo(w http.ResponseWriter, r *http.Request) {
|
||||
list := s.authUser.List(model.UdmAuthUser{NeID: neId, Imsi: imsi})
|
||||
if len(list) > 0 {
|
||||
userInfo = list[0]
|
||||
ctx.JSON(w, 200, result.OkData(list[0]))
|
||||
} else {
|
||||
userInfo = model.UdmAuthUser{
|
||||
Imsi: imsi,
|
||||
@@ -476,7 +476,7 @@ func (s *UdmUserApi) UdmAuthUserExport(w http.ResponseWriter, r *http.Request) {
|
||||
list := s.authUser.List(model.UdmAuthUser{NeID: neId})
|
||||
// 文件名
|
||||
fileName := fmt.Sprintf("OMC_AUTH_USER_EXPORT_%s_%d.csv", neId, time.Now().UnixMilli())
|
||||
filePath := fmt.Sprintf("/usr/local/omc/upload/mml/%s", fileName)
|
||||
filePath := fmt.Sprintf("%s/upload/mml/%s", conf.Get("ne.omcdir"), fileName)
|
||||
// 转换数据
|
||||
data := [][]string{}
|
||||
data = append(data, []string{"imsi", "ki", "amf", "algo", "opc", "status"})
|
||||
@@ -510,8 +510,8 @@ func (s *UdmUserApi) UdmAuthUserImport(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// 文件名
|
||||
fileName := fmt.Sprintf("OMC_AUTH_USER_IMPORT_%s_%d.csv", neId, time.Now().UnixMilli())
|
||||
filePath := fmt.Sprintf("/usr/local/omc/upload/mml/%s", fileName)
|
||||
dstPath := "/home/agtuser/"
|
||||
filePath := fmt.Sprintf("%s/upload/mml/%s", conf.Get("ne.omcdir"), fileName)
|
||||
dstPath := conf.Get("mml.upload").(string)
|
||||
// 输出保存文件
|
||||
err = ctx.SaveUploadedFile(r, filePath)
|
||||
if err != nil {
|
||||
@@ -596,7 +596,6 @@ func (s *UdmUserApi) UdmSubUserInfo(w http.ResponseWriter, r *http.Request) {
|
||||
list := s.subUser.List(model.UdmSubUser{NeID: neId, Imsi: imsi})
|
||||
if len(list) > 0 {
|
||||
userInfo = list[0]
|
||||
ctx.JSON(w, 200, result.OkData(list[0]))
|
||||
} else {
|
||||
cnType, _ := strconv.ParseInt(data["CNType"][:4], 0, 64)
|
||||
rat, _ := strconv.ParseInt(data["RAT"][:4], 0, 64)
|
||||
@@ -614,6 +613,7 @@ func (s *UdmUserApi) UdmSubUserInfo(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
// 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]
|
||||
@@ -980,7 +980,7 @@ func (s *UdmUserApi) UdmSubUserExport(w http.ResponseWriter, r *http.Request) {
|
||||
list := s.subUser.List(model.UdmSubUser{NeID: neId})
|
||||
// 文件名
|
||||
fileName := fmt.Sprintf("OMC_AUTH_USER_EXPORT_%s_%d.csv", neId, time.Now().UnixMilli())
|
||||
filePath := fmt.Sprintf("/usr/local/omc/upload/mml/%s", fileName)
|
||||
filePath := fmt.Sprintf("%s/upload/mml/%s", conf.Get("ne.omcdir"), fileName)
|
||||
// 转换数据
|
||||
data := [][]string{}
|
||||
data = append(data, []string{"imsi", "msisdn", "ambr", "arfb", "sar", "rat", "cn", "smf_sel", "sm_dat", "eps_dat"})
|
||||
@@ -1014,8 +1014,8 @@ func (s *UdmUserApi) UdmSubUserImport(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// 文件名
|
||||
fileName := fmt.Sprintf("OMC_SUB_USER_IMPORT_%s_%d.csv", neId, time.Now().UnixMilli())
|
||||
filePath := fmt.Sprintf("/usr/local/omc/upload/mml/%s", fileName)
|
||||
dstPath := "/home/agtuser/"
|
||||
filePath := fmt.Sprintf("%s/upload/mml/%s", conf.Get("ne.omcdir"), fileName)
|
||||
dstPath := conf.Get("mml.upload").(string)
|
||||
// 输出保存文件
|
||||
err = ctx.SaveUploadedFile(r, filePath)
|
||||
if err != nil {
|
||||
|
||||
@@ -25,5 +25,5 @@ type UdmSubUser struct {
|
||||
ApnContext string `json:"apnContext" xorm:"apn_context"`
|
||||
StaticIp string `json:"staticIp" xorm:"static_ip"`
|
||||
|
||||
SubNum string `json:"subNum" xorm:"-"` // 批量数
|
||||
SubNum string `json:"subNum,omitempty" xorm:"-"` // 批量数
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ func (r *RepoUdmAuthUser) SelectList(auth model.UdmAuthUser) []model.UdmAuthUser
|
||||
var conditions []string
|
||||
var params []any
|
||||
if auth.Imsi != "" {
|
||||
conditions = append(conditions, "msisdn like concat(?, '%')")
|
||||
conditions = append(conditions, "imsi = ?")
|
||||
params = append(params, auth.Imsi)
|
||||
}
|
||||
if auth.NeID != "" {
|
||||
@@ -207,8 +207,8 @@ func (r *RepoUdmAuthUser) Inserts(neID string, authUser model.UdmAuthUser, num s
|
||||
func (r *RepoUdmAuthUser) Update(neID string, authUser model.UdmAuthUser) int64 {
|
||||
// 查询先
|
||||
var user model.UdmAuthUser
|
||||
err := datasource.DefaultDB().Table("u_auth_user").Where("imsi = ? and ne_id = ?", authUser.Imsi, neID).Find(&user)
|
||||
if err != nil {
|
||||
has, err := datasource.DefaultDB().Table("u_auth_user").Where("imsi = ? and ne_id = ?", authUser.Imsi, neID).Get(&user)
|
||||
if !has || err != nil {
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -225,7 +225,7 @@ func (r *RepoUdmAuthUser) Update(neID string, authUser model.UdmAuthUser) int64
|
||||
user.Opc = authUser.Opc
|
||||
}
|
||||
|
||||
results, err := datasource.DefaultDB().Table("u_auth_user").Update(user)
|
||||
results, err := datasource.DefaultDB().Table("u_auth_user").Where("imsi = ? and ne_id = ?", user.Imsi, user.NeID).Update(user)
|
||||
if err != nil {
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ var NewRepoUdmSubUser = &RepoUdmSubUser{
|
||||
"msisdn": "Msisdn",
|
||||
"imsi": "Imsi",
|
||||
"ambr": "Ambr",
|
||||
"nssai": "Assai",
|
||||
"nssai": "Nssai",
|
||||
"rat": "Rat",
|
||||
"arfb": "Arfb",
|
||||
"sar": "Sar",
|
||||
@@ -130,7 +130,7 @@ func (r *RepoUdmSubUser) SelectList(auth model.UdmSubUser) []model.UdmSubUser {
|
||||
var conditions []string
|
||||
var params []any
|
||||
if auth.Imsi != "" {
|
||||
conditions = append(conditions, "msisdn like concat(?, '%')")
|
||||
conditions = append(conditions, "imsi = ?")
|
||||
params = append(params, auth.Imsi)
|
||||
}
|
||||
if auth.NeID != "" {
|
||||
@@ -257,8 +257,8 @@ func (r *RepoUdmSubUser) Insert4G(neID string, subUser model.UdmSubUser) int64 {
|
||||
func (r *RepoUdmSubUser) Update(neID string, authUser model.UdmSubUser) int64 {
|
||||
// 查询先
|
||||
var user model.UdmSubUser
|
||||
err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", authUser.Imsi, neID).Find(&user)
|
||||
if err != nil {
|
||||
has, err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", authUser.Imsi, neID).Get(&user)
|
||||
if !has || err != nil {
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -290,7 +290,7 @@ func (r *RepoUdmSubUser) Update(neID string, authUser model.UdmSubUser) int64 {
|
||||
user.EpsDat = authUser.EpsDat
|
||||
}
|
||||
|
||||
results, err := datasource.DefaultDB().Table("u_sub_user").Update(user)
|
||||
results, err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", user.Imsi, user.NeID).Update(user)
|
||||
if err != nil {
|
||||
return 0
|
||||
}
|
||||
@@ -315,8 +315,8 @@ func (r *RepoUdmSubUser) Update4GIP(neID string, subUser model.UdmSubUser) int64
|
||||
|
||||
// 查询先
|
||||
var user model.UdmSubUser
|
||||
err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", subUser.Imsi, neID).Find(&user)
|
||||
if err == nil {
|
||||
has, err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", subUser.Imsi, neID).Get(&user)
|
||||
if has && err == nil {
|
||||
// IP会自动递增
|
||||
parts := strings.Split(subUser.StaticIp, ".")
|
||||
lastPart := parts[3]
|
||||
@@ -354,8 +354,8 @@ func (r *RepoUdmSubUser) UpdateSmData(neID string, subUser model.UdmSubUser) int
|
||||
|
||||
// 查询先
|
||||
var user model.UdmSubUser
|
||||
err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", subUser.Imsi, neID).Find(&user)
|
||||
if err == nil {
|
||||
has, err := datasource.DefaultDB().Table("u_sub_user").Where("imsi = ? and ne_id = ?", subUser.Imsi, neID).Get(&user)
|
||||
if has && err == nil {
|
||||
// IP会自动递增,需提前规划好DNN对应的IP;如dnn不需要绑定IP则不带此字段名
|
||||
// parts := strings.Split(subUser.SmData, "&")
|
||||
user.SmData = subUser.SmData
|
||||
|
||||
@@ -56,6 +56,7 @@ func redisUdmSubUserList() []model.UdmSubUser {
|
||||
a := model.UdmSubUser{
|
||||
Imsi: imsi,
|
||||
Msisdn: m["gpsi"],
|
||||
SmfSel: m["smf-sel"],
|
||||
SmData: m["sm-dat"], // 1-000001&cmnet&ims&3gnet
|
||||
}
|
||||
|
||||
@@ -75,6 +76,7 @@ func redisUdmSubUserList() []model.UdmSubUser {
|
||||
}
|
||||
// 1,64,24,65,def_eps,1,2,010200000000,-
|
||||
if v, ok := m["eps-dat"]; ok {
|
||||
a.EpsDat = v
|
||||
arr := strings.Split(v, ",")
|
||||
a.EpsFlag = arr[0]
|
||||
a.EpsOdb = arr[1]
|
||||
|
||||
Reference in New Issue
Block a user