新增补充UDM用户数据接口

This commit is contained in:
TsMask
2023-09-11 21:02:56 +08:00
parent 449d81c950
commit 614e792670
5 changed files with 1087 additions and 37 deletions

View File

@@ -1,6 +1,8 @@
package repo
import (
"fmt"
"strconv"
"strings"
"ems.agt/features/udm_user/model"
@@ -22,7 +24,7 @@ var NewRepoUdmAuthUser = &RepoUdmAuthUser{
"amf": "Amf",
"status": "Status",
"ki": "Ki",
"algo_index": "AlgoLndex",
"algo_index": "AlgoIndex",
"opc": "Opc",
"ne_id": "NeID",
},
@@ -60,6 +62,10 @@ func (r *RepoUdmAuthUser) SelectPage(query map[string]any) map[string]any {
conditions = append(conditions, "msisdn like concat(?, '%')")
params = append(params, v)
}
if v, ok := query["imsi"]; ok && v != "" {
conditions = append(conditions, "imsi like concat(?, '%')")
params = append(params, v)
}
if v, ok := query["neId"]; ok && v != "" {
conditions = append(conditions, "ne_id = ?")
params = append(params, v)
@@ -137,8 +143,8 @@ func (r *RepoUdmAuthUser) SelectList(auth model.UdmAuthUser) []model.UdmAuthUser
return r.convertResultRows(results)
}
// Insert 清空ne_id后新增实体
func (r *RepoUdmAuthUser) Inserts(neID string, authArr []model.UdmAuthUser) int64 {
// ClearAndInsert 清空ne_id后新增实体
func (r *RepoUdmAuthUser) ClearAndInsert(neID string, authArr []model.UdmAuthUser) int64 {
var num int64 = 0
// 清空指定ne_id
@@ -158,3 +164,98 @@ func (r *RepoUdmAuthUser) Inserts(neID string, authArr []model.UdmAuthUser) int6
}
return num
}
// Insert 新增实体
func (r *RepoUdmAuthUser) Insert(neID string, authUser model.UdmAuthUser) int64 {
authUser.NeID = neID
authUser.Status = "1"
results, err := datasource.DefaultDB().Table("u_auth_user").Insert(authUser)
if err != nil {
return results
}
return results
}
// Insert 批量添加
func (r *RepoUdmAuthUser) Inserts(neID string, authUser model.UdmAuthUser, num string) int64 {
var insertNum int64
imsiV, err := strconv.Atoi(authUser.Imsi)
if err != nil {
return 0
}
numV, err := strconv.Atoi(num)
if err != nil {
return 0
}
authUser.NeID = neID
authUser.Status = "1"
for i := 0; i < numV; i++ {
authUser.Imsi = fmt.Sprint(imsiV + i)
results, err := datasource.DefaultDB().Table("u_auth_user").Insert(authUser)
if err == nil {
insertNum += results
}
}
return insertNum
}
// Update 修改更新
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 {
return 0
}
if authUser.Ki != "" && authUser.Ki != user.Ki {
user.Ki = authUser.Ki
}
if authUser.Amf != "" && authUser.Amf != user.Amf {
user.Amf = authUser.Amf
}
if authUser.AlgoIndex != "" && authUser.AlgoIndex != user.AlgoIndex {
user.AlgoIndex = authUser.AlgoIndex
}
if authUser.Opc != "" && authUser.Opc != user.Opc {
user.Opc = authUser.Opc
}
results, err := datasource.DefaultDB().Table("u_auth_user").Update(user)
if err != nil {
return 0
}
return results
}
// Delete 删除实体
func (r *RepoUdmAuthUser) Delete(neID, imsi string) int64 {
results, err := datasource.DefaultDB().Table("u_auth_user").Where("imsi = ? and ne_id = ?", imsi, neID).Delete()
if err != nil {
return results
}
return results
}
// Delete 删除范围实体
func (r *RepoUdmAuthUser) Deletes(neID, imsi, num string) int64 {
imsiV, err := strconv.Atoi(imsi)
if err != nil {
return 0
}
numV, err := strconv.Atoi(num)
if err != nil {
return 0
}
results, err := datasource.DefaultDB().Table("u_auth_user").Where("imsi >= ? and imsi <= ? and ne_id = ?", imsiV, imsiV+numV, neID).Delete()
if err != nil {
return results
}
return results
}