add: multi-tenant
This commit is contained in:
@@ -208,7 +208,7 @@ func (r *RepoUdmSubUser) ClearAndInsert(neID string, subArr []model.UdmSubUser)
|
||||
batch := subArr[i:end]
|
||||
|
||||
// multi-tenancy
|
||||
r.SetTenantName(batch)
|
||||
r.SetTenantName(&batch)
|
||||
|
||||
// 调用 InsertMulti 函数将批量数据插入数据库
|
||||
results, err := datasource.DefaultDB().Table("u_sub_user").InsertMulti(batch)
|
||||
@@ -253,7 +253,7 @@ func (r *RepoUdmSubUser) Inserts(subUser []model.UdmSubUser) int64 {
|
||||
batch := subUser[i:end]
|
||||
|
||||
// multi-tenancy
|
||||
r.SetTenantName(batch)
|
||||
r.SetTenantName(&batch)
|
||||
|
||||
// 调用 InsertMulti 函数将批量数据插入数据库
|
||||
results, err := datasource.DefaultDB().Table("u_sub_user").InsertMulti(batch)
|
||||
@@ -285,7 +285,7 @@ func (r *RepoUdmSubUser) Insert4G(neID string, subUser model.UdmSubUser) int64 {
|
||||
|
||||
// multi-tenancy
|
||||
subUserSlice := []model.UdmSubUser{subUser}
|
||||
r.SetTenantName(subUserSlice)
|
||||
r.SetTenantName(&subUserSlice)
|
||||
|
||||
results, err := datasource.DefaultDB().Table("u_sub_user").Insert(subUser)
|
||||
if err == nil {
|
||||
@@ -475,15 +475,18 @@ func (r *RepoUdmSubUser) Deletes(neID, imsi, num string) int64 {
|
||||
}
|
||||
|
||||
// multi-tenancy solution, get tenant_name by imsi
|
||||
func (r *RepoUdmSubUser) SetTenantName(subArr []model.UdmSubUser) {
|
||||
for s := 0; s < len(subArr); s++ {
|
||||
func (r *RepoUdmSubUser) SetTenantName(subArr *[]model.UdmSubUser) {
|
||||
for s := 0; s < len(*subArr); s++ {
|
||||
var tenantName string
|
||||
err := datasource.DefaultDB().Table("sys_tenant_map").
|
||||
Where("mapping_type='udm_sub' and mapping_key='?'", subArr[s].Imsi).Cols("tenant_name").Find(tenantName)
|
||||
Where("mapping_type='udm_sub' and mapping_key='?'", (*subArr)[s].Imsi).Cols("tenant_name").Find(tenantName)
|
||||
if err != nil {
|
||||
log.Errorf("Find tenant_name err => %v", err)
|
||||
continue
|
||||
}
|
||||
subArr[s].TenantName = tenantName
|
||||
if tenantName != "" {
|
||||
log.Infof("tenantName=%s imsi=%s", tenantName, (*subArr)[s].Imsi)
|
||||
}
|
||||
(*subArr)[s].TenantName = tenantName
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user