feat: 基站状态列表关联查询租户名称

This commit is contained in:
TsMask
2025-08-29 18:46:51 +08:00
parent e5d33b5a3e
commit 108c3200b7
5 changed files with 79 additions and 0 deletions

View File

@@ -14,6 +14,7 @@ import (
"be.ems/src/framework/utils/parse"
"be.ems/src/framework/vo/result"
"be.ems/src/modules/network_data/model"
neDataRepository "be.ems/src/modules/network_data/repository"
neDataService "be.ems/src/modules/network_data/service"
neFetchlink "be.ems/src/modules/network_element/fetch_link"
neService "be.ems/src/modules/network_element/service"
@@ -328,5 +329,18 @@ func (s *AMFController) NbStateList(c *gin.Context) {
return
}
// 添加租户信息
for i, v := range data {
ranId, ok := v["ranId"]
if !ok {
continue
}
tenantID, tenantName := neDataRepository.NewSysTenant.Query(map[string]string{
"radioKey": fmt.Sprintf("5G_%v", ranId),
})
data[i]["tenantID"] = tenantID
data[i]["tenantName"] = tenantName
}
c.JSON(200, result.OkData(data))
}

View File

@@ -15,6 +15,7 @@ import (
"be.ems/src/framework/utils/parse"
"be.ems/src/framework/vo/result"
"be.ems/src/modules/network_data/model"
neDataRepository "be.ems/src/modules/network_data/repository"
neDataService "be.ems/src/modules/network_data/service"
neFetchlink "be.ems/src/modules/network_element/fetch_link"
neService "be.ems/src/modules/network_element/service"
@@ -318,5 +319,18 @@ func (s *MMEController) NbStateList(c *gin.Context) {
return
}
// 添加租户信息
for i, v := range data {
ranId, ok := v["ranId"]
if !ok {
continue
}
tenantID, tenantName := neDataRepository.NewSysTenant.Query(map[string]string{
"radioKey": fmt.Sprintf("5G_%v", ranId),
})
data[i]["tenantID"] = tenantID
data[i]["tenantName"] = tenantName
}
c.JSON(200, result.OkData(data))
}

View File

@@ -0,0 +1,49 @@
package repository
import (
"fmt"
"strings"
"be.ems/src/framework/datasource"
"be.ems/src/framework/logger"
"be.ems/src/framework/utils/parse"
)
// 实例化数据层 SysTenant 结构体
var NewSysTenant = &SysTenant{}
// SysTenant 租户表 数据层处理
type SysTenant struct{}
// Query 查询租户信息 ID 名称
// radioKey 5G_2 4G_3
func (r SysTenant) Query(query map[string]string) (int64, string) {
// 查询条件拼接
var conditions []string
var params []any
if v, ok := query["radioKey"]; ok && v != "" {
conditions = append(conditions, "st2.tenancy_type = 'RADIO' AND st2.tenancy_key = ?")
params = append(params, v)
}
// 构建查询条件语句
whereSql := ""
if len(conditions) > 0 {
whereSql += " where st2.status = '1' AND " + strings.Join(conditions, " and ")
} else {
return 0, ""
}
// 查询数据
querySql := "SELECT st1.tenant_id, st1.tenant_name FROM sys_tenant st1 JOIN sys_tenant st2 ON st1.tenant_id = st2.parent_id " + whereSql
results, err := datasource.RawDB("", querySql, params)
if err != nil {
logger.Errorf("query err %v", err)
return 0, ""
}
if len(results) > 0 {
v := results[0]
return parse.Number(v["tenant_id"]), fmt.Sprint(v["tenant_name"])
}
return 0, ""
}

View File

@@ -80,6 +80,7 @@ func AMFGnbStateList(neInfo model.NeInfo) ([]map[string]any, error) {
// "onTime": "2024-12-30T15:41:59+08:00",
// "state": "OFF",
// "nbName": "SA",
// "ranId": 8,
// "ueNum": 1
// },
// ]

View File

@@ -80,6 +80,7 @@ func MMEEnbStateList(neInfo model.NeInfo) ([]map[string]any, error) {
// "onTime": "2024-12-30T15:41:59+08:00",
// "state": "OFF",
// "nbName": "SA",
// "ranId": 8,
// "ueNum": 1
// },
// ]