调整UDM用户函数导出CSV文件

This commit is contained in:
TsMask
2023-09-08 21:54:47 +08:00
parent d870920485
commit 7568b0435a
7 changed files with 217 additions and 52 deletions

View File

@@ -112,3 +112,56 @@ func (r *RepoUdmSubUser) SelectPage(query map[string]any) map[string]any {
"rows": rows,
}
}
// SelectList 根据实体查询
func (r *RepoUdmSubUser) SelectList(auth model.UdmSubUser) []model.UdmSubUser {
// 查询条件拼接
var conditions []string
var params []any
if auth.Imsi != "" {
conditions = append(conditions, "msisdn like concat(?, '%')")
params = append(params, auth.Imsi)
}
if auth.NeID != "" {
conditions = append(conditions, "ne_id = ?")
params = append(params, auth.NeID)
}
// 构建查询条件语句
whereSql := ""
if len(conditions) > 0 {
whereSql += " where " + strings.Join(conditions, " and ")
}
// 查询数据
querySql := r.selectSql + whereSql
results, err := datasource.RawDB("", querySql, params)
if err != nil {
log.Errorf("query err => %v", err)
}
// 转换实体
return r.convertResultRows(results)
}
// Insert 清空ne_id后新增实体
func (r *RepoUdmSubUser) Inserts(neID string, authArr []model.UdmSubUser) int64 {
var num int64 = 0
// 清空指定ne_id
// _, err := datasource.ExecDB("", "TRUNCATE TABLE u_sub_user", nil)
_, err := datasource.ExecDB("", "DELETE FROM u_sub_user WHERE ne_id = ?", []any{neID})
if err != nil {
log.Errorf("TRUNCATE err => %v", err)
}
for _, u := range authArr {
u.NeID = neID
results, err := datasource.DefaultDB().Table("u_sub_user").Insert(u)
if err != nil {
return num
}
num += results
}
return num
}