fix: model of ims user

This commit is contained in:
zhangsz
2025-04-11 10:50:11 +08:00
parent 63433e6e0e
commit 3933fa1144
2 changed files with 17 additions and 8 deletions

View File

@@ -3,6 +3,7 @@ package model
import (
"fmt"
"strconv"
"strings"
)
const (
@@ -15,13 +16,13 @@ const (
type CallTag int
const (
TAG_VOIP CallTag = iota // VoIP标记
TAG_VoIP CallTag = iota // VoIP标记
TAG_VoLTE // VoLTE标记
)
func (ct CallTag) Enum() string {
switch ct {
case TAG_VOIP:
case TAG_VoIP:
return "VoIP"
case TAG_VoLTE:
return "VoLTE"
@@ -36,15 +37,22 @@ func (ct CallTag) String() string {
// ParseCallTag 将字符串转换为 CallTag 枚举类型
func ParseCallTag(s string) CallTag {
// 如果为空或转换失败,可以返回默认值,例如 VoIP
i, err := strconv.Atoi(s)
if err != nil {
return TAG_VOIP
if i, err := strconv.Atoi(s); err == nil {
return CallTag(i)
}
// 如果转换失败,则按名称匹配(忽略大小写)
switch strings.ToLower(s) {
case "voip":
return TAG_VoIP
case "volte":
return TAG_VoLTE
default:
// 默认返回 VoIP
return TAG_VoIP
}
return CallTag(i)
}
// @Description VoLTE用户信息
// @Description IMS用户信息
type IMSUser struct {
ID string `json:"id" gorm:"column:id;primaryKey;autoIncrement"` // 主键
NeId string `json:"neId" gorm:"column:ne_id"` // UDM网元标识