From e377ddf584024e310a6b48bf10c087486ede6b7b Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Fri, 19 Sep 2025 18:59:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=9B=B4=E6=96=B0cdr/ue=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E6=9F=A5=E8=AF=A2=E5=AD=97=E6=AE=B5=E4=B8=BAcreated?= =?UTF-8?q?=5Fat=EF=BC=8C=E4=BC=98=E5=8C=96=E6=97=B6=E9=97=B4=E5=A4=84?= =?UTF-8?q?=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/network_data/controller/amf.go | 3 +- src/modules/network_data/controller/ims.go | 3 +- src/modules/network_data/controller/mme.go | 3 +- src/modules/network_data/controller/smf.go | 3 +- src/modules/network_data/controller/smsc.go | 3 +- .../network_data/repository/cdr_event_ims.go | 49 +++++++++---------- .../network_data/repository/cdr_event_sgwc.go | 19 +++---- .../network_data/repository/cdr_event_smf.go | 38 ++++++-------- .../network_data/repository/cdr_event_smsc.go | 37 ++++++-------- .../network_data/repository/ue_event_amf.go | 37 ++++++-------- .../network_data/repository/ue_event_mme.go | 37 ++++++-------- 11 files changed, 96 insertions(+), 136 deletions(-) diff --git a/src/modules/network_data/controller/amf.go b/src/modules/network_data/controller/amf.go index 87ccaaee..46cd7446 100644 --- a/src/modules/network_data/controller/amf.go +++ b/src/modules/network_data/controller/amf.go @@ -20,7 +20,6 @@ import ( neService "be.ems/src/modules/network_element/service" sysService "be.ems/src/modules/system/service" "github.com/gin-gonic/gin" - "github.com/gin-gonic/gin/binding" ) // 实例化控制层 AMFController 结构体 @@ -130,7 +129,7 @@ func (s *AMFController) UEExport(c *gin.Context) { language := ctx.AcceptLanguage(c) // 查询结果,根据查询条件结果,单页最大值限制 var querys model.UEEventAMFQuery - if err := c.ShouldBindBodyWith(&querys, binding.JSON); err != nil { + if err := c.ShouldBindBodyWithJSON(&querys); err != nil { c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) return } diff --git a/src/modules/network_data/controller/ims.go b/src/modules/network_data/controller/ims.go index cfa523ed..85dd9274 100644 --- a/src/modules/network_data/controller/ims.go +++ b/src/modules/network_data/controller/ims.go @@ -22,7 +22,6 @@ import ( neService "be.ems/src/modules/network_element/service" sysService "be.ems/src/modules/system/service" "github.com/gin-gonic/gin" - "github.com/gin-gonic/gin/binding" ) // 实例化控制层 IMSController 结构体 @@ -135,7 +134,7 @@ func (s *IMSController) CDRExport(c *gin.Context) { language := ctx.AcceptLanguage(c) // 查询结果,根据查询条件结果,单页最大值限制 var querys model.CDREventIMSQuery - if err := c.ShouldBindBodyWith(&querys, binding.JSON); err != nil { + if err := c.ShouldBindBodyWithJSON(&querys); err != nil { c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) return } diff --git a/src/modules/network_data/controller/mme.go b/src/modules/network_data/controller/mme.go index 57460acb..cc4aae87 100644 --- a/src/modules/network_data/controller/mme.go +++ b/src/modules/network_data/controller/mme.go @@ -21,7 +21,6 @@ import ( neService "be.ems/src/modules/network_element/service" sysService "be.ems/src/modules/system/service" "github.com/gin-gonic/gin" - "github.com/gin-gonic/gin/binding" ) // 实例化控制层 MMEController 结构体 @@ -131,7 +130,7 @@ func (s *MMEController) UEExport(c *gin.Context) { language := ctx.AcceptLanguage(c) // 查询结果,根据查询条件结果,单页最大值限制 var querys model.UEEventMMEQuery - if err := c.ShouldBindBodyWith(&querys, binding.JSON); err != nil { + if err := c.ShouldBindBodyWithJSON(&querys); err != nil { c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) return } diff --git a/src/modules/network_data/controller/smf.go b/src/modules/network_data/controller/smf.go index 78de5f75..d900f420 100644 --- a/src/modules/network_data/controller/smf.go +++ b/src/modules/network_data/controller/smf.go @@ -18,7 +18,6 @@ import ( neFetchlink "be.ems/src/modules/network_element/fetch_link" neService "be.ems/src/modules/network_element/service" "github.com/gin-gonic/gin" - "github.com/gin-gonic/gin/binding" ) // 实例化控制层 SMFController 结构体 @@ -130,7 +129,7 @@ func (s *SMFController) CDRExport(c *gin.Context) { language := ctx.AcceptLanguage(c) // 查询结果,根据查询条件结果,单页最大值限制 var querys model.CDREventSMFQuery - if err := c.ShouldBindBodyWith(&querys, binding.JSON); err != nil { + if err := c.ShouldBindBodyWithJSON(&querys); err != nil { c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) return } diff --git a/src/modules/network_data/controller/smsc.go b/src/modules/network_data/controller/smsc.go index c4ea7978..125b6ca7 100644 --- a/src/modules/network_data/controller/smsc.go +++ b/src/modules/network_data/controller/smsc.go @@ -19,7 +19,6 @@ import ( neService "be.ems/src/modules/network_element/service" sysService "be.ems/src/modules/system/service" "github.com/gin-gonic/gin" - "github.com/gin-gonic/gin/binding" ) // 实例化控制层 SMSCController 结构体 @@ -130,7 +129,7 @@ func (s *SMSCController) CDRExport(c *gin.Context) { language := ctx.AcceptLanguage(c) // 查询结果,根据查询条件结果,单页最大值限制 var querys model.CDREventSMSCQuery - if err := c.ShouldBindBodyWith(&querys, binding.JSON); err != nil { + if err := c.ShouldBindBodyWithJSON(&querys); err != nil { c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400"))) return } diff --git a/src/modules/network_data/repository/cdr_event_ims.go b/src/modules/network_data/repository/cdr_event_ims.go index 96f899fc..9a52106e 100644 --- a/src/modules/network_data/repository/cdr_event_ims.go +++ b/src/modules/network_data/repository/cdr_event_ims.go @@ -9,6 +9,7 @@ import ( "be.ems/lib/log" "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" "be.ems/src/framework/utils/parse" "be.ems/src/framework/utils/repo" "be.ems/src/modules/network_data/model" @@ -71,20 +72,16 @@ func (r *CDREventIMS) SelectPage(querys model.CDREventIMSQuery) map[string]any { params = append(params, querys.RmUID) } if querys.StartTime != 0 { - conditions = append(conditions, "timestamp >= ?") - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - params = append(params, startTime) + conditions = append(conditions, "created_at >= ?") + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, startTimeStr) } if querys.EndTime != 0 { - conditions = append(conditions, "timestamp <= ?") - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - params = append(params, endTime) + conditions = append(conditions, "created_at <= ?") + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, endTimeStr) } if querys.CallerParty != "" { conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') like concat(concat('%', ?), '%')") @@ -234,18 +231,14 @@ func (r CDREventIMS) SelectByPage(querys model.CDREventIMSQuery) ([]model.CDREve tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.CallerParty != "" { tx = tx.Where("JSON_EXTRACT(cdr_json, '$.callerParty') = ?", querys.CallerParty) @@ -362,11 +355,15 @@ func (r *CDREventIMS) Select(querys model.CDREventIMSQuery) []model.CDREventIMS if querys.RmUID != "" { tx = tx.Where("rm_uid = ?", querys.RmUID) } - if querys.StartTime > 0 { - tx = tx.Where("timestamp >= ?", querys.StartTime) + if querys.StartTime != 0 { + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } - if querys.EndTime > 0 { - tx = tx.Where("timestamp <= ?", querys.EndTime) + if querys.EndTime != 0 { + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.RecordType != "" { tx = tx.Where("JSON_EXTRACT(cdr_json, '$.recordType') = ?", querys.RecordType) diff --git a/src/modules/network_data/repository/cdr_event_sgwc.go b/src/modules/network_data/repository/cdr_event_sgwc.go index 41b394e1..e22f3605 100644 --- a/src/modules/network_data/repository/cdr_event_sgwc.go +++ b/src/modules/network_data/repository/cdr_event_sgwc.go @@ -1,11 +1,12 @@ package repository import ( - "fmt" "sort" "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" + "be.ems/src/framework/utils/parse" "be.ems/src/modules/network_data/model" ) @@ -26,18 +27,14 @@ func (r CDREventSGWC) SelectByPage(querys model.CDREventSGWCQuery) ([]model.CDRE tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.IMSI != "" { tx = tx.Where("JSON_EXTRACT(cdr_json, '$.servedIMSI') like concat(concat('%', ?), '%')", querys.IMSI) diff --git a/src/modules/network_data/repository/cdr_event_smf.go b/src/modules/network_data/repository/cdr_event_smf.go index 275582e7..c84f5eb1 100644 --- a/src/modules/network_data/repository/cdr_event_smf.go +++ b/src/modules/network_data/repository/cdr_event_smf.go @@ -1,7 +1,6 @@ package repository import ( - "fmt" "sort" "strings" @@ -10,6 +9,7 @@ import ( "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" "be.ems/src/framework/utils/parse" "be.ems/src/framework/utils/repo" "be.ems/src/modules/network_data/model" @@ -72,20 +72,16 @@ func (r *CDREventSMF) SelectPage(querys model.CDREventSMFQuery) map[string]any { params = append(params, querys.RmUID) } if querys.StartTime != 0 { - conditions = append(conditions, "timestamp >= ?") - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - params = append(params, startTime) + conditions = append(conditions, "created_at >= ?") + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, startTimeStr) } if querys.EndTime != 0 { - conditions = append(conditions, "timestamp <= ?") - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - params = append(params, endTime) + conditions = append(conditions, "created_at <= ?") + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, endTimeStr) } if querys.RecordType != "" { conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.recordType') = ?") @@ -221,18 +217,14 @@ func (r CDREventSMF) SelectByPage(querys model.CDREventSMFQuery) ([]model.CDREve tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.RecordType != "" { tx = tx.Where("JSON_EXTRACT(cdr_json, '$.recordType') = ?", querys.RecordType) diff --git a/src/modules/network_data/repository/cdr_event_smsc.go b/src/modules/network_data/repository/cdr_event_smsc.go index 6508df93..36ae318d 100644 --- a/src/modules/network_data/repository/cdr_event_smsc.go +++ b/src/modules/network_data/repository/cdr_event_smsc.go @@ -9,6 +9,7 @@ import ( "be.ems/lib/log" "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" "be.ems/src/framework/utils/parse" "be.ems/src/framework/utils/repo" "be.ems/src/modules/network_data/model" @@ -71,20 +72,16 @@ func (r *CDREventSMSC) SelectPage(querys model.CDREventSMSCQuery) map[string]any params = append(params, querys.RmUID) } if querys.StartTime != 0 { - conditions = append(conditions, "timestamp >= ?") - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - params = append(params, startTime) + conditions = append(conditions, "created_at >= ?") + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, startTimeStr) } if querys.EndTime != 0 { - conditions = append(conditions, "timestamp <= ?") - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - params = append(params, endTime) + conditions = append(conditions, "created_at <= ?") + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, endTimeStr) } if querys.CallerParty != "" { conditions = append(conditions, "JSON_EXTRACT(cdr_json, '$.callerParty') like concat(concat('%', ?), '%')") @@ -238,18 +235,14 @@ func (r CDREventSMSC) SelectByPage(querys model.CDREventSMSCQuery) ([]model.CDRE tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.CallerParty != "" { tx = tx.Where("JSON_EXTRACT(cdr_json, '$.callerParty') = ?", querys.CallerParty) diff --git a/src/modules/network_data/repository/ue_event_amf.go b/src/modules/network_data/repository/ue_event_amf.go index f19a6465..e1dc61cd 100644 --- a/src/modules/network_data/repository/ue_event_amf.go +++ b/src/modules/network_data/repository/ue_event_amf.go @@ -9,6 +9,7 @@ import ( "be.ems/lib/log" "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" "be.ems/src/framework/utils/parse" "be.ems/src/framework/utils/repo" "be.ems/src/modules/network_data/model" @@ -72,20 +73,16 @@ func (r *UEEventAMF) SelectPage(querys model.UEEventAMFQuery) map[string]any { params = append(params, querys.RmUID) } if querys.StartTime != 0 { - conditions = append(conditions, "timestamp >= ?") - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - params = append(params, startTime) + conditions = append(conditions, "created_at >= ?") + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, startTimeStr) } if querys.EndTime != 0 { - conditions = append(conditions, "timestamp <= ?") - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - params = append(params, endTime) + conditions = append(conditions, "created_at <= ?") + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, endTimeStr) } if querys.EventType != "" { eventTypes := strings.Split(querys.EventType, ",") @@ -221,18 +218,14 @@ func (r UEEventAMF) SelectByPage(querys model.UEEventAMFQuery) ([]model.UEEventA tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.EventType != "" { eventTypes := strings.Split(querys.EventType, ",") diff --git a/src/modules/network_data/repository/ue_event_mme.go b/src/modules/network_data/repository/ue_event_mme.go index 6382cc7a..9f746ab4 100644 --- a/src/modules/network_data/repository/ue_event_mme.go +++ b/src/modules/network_data/repository/ue_event_mme.go @@ -9,6 +9,7 @@ import ( "be.ems/lib/log" "be.ems/src/framework/datasource" "be.ems/src/framework/logger" + "be.ems/src/framework/utils/date" "be.ems/src/framework/utils/parse" "be.ems/src/framework/utils/repo" "be.ems/src/modules/network_data/model" @@ -72,20 +73,16 @@ func (r *UEEventMME) SelectPage(querys model.UEEventMMEQuery) map[string]any { params = append(params, querys.RmUID) } if querys.StartTime != 0 { - conditions = append(conditions, "timestamp >= ?") - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - params = append(params, startTime) + conditions = append(conditions, "created_at >= ?") + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, startTimeStr) } if querys.EndTime != 0 { - conditions = append(conditions, "timestamp <= ?") - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - params = append(params, endTime) + conditions = append(conditions, "created_at <= ?") + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + params = append(params, endTimeStr) } if querys.EventType != "" { eventTypes := strings.Split(querys.EventType, ",") @@ -222,18 +219,14 @@ func (r UEEventMME) SelectByPage(querys model.UEEventMMEQuery) ([]model.UEEventM tx = tx.Where("rm_uid = ?", querys.RmUID) } if querys.StartTime != 0 { - startTime := fmt.Sprintf("%d", querys.StartTime) - if len(startTime) == 13 { - startTime = startTime[:10] - } - tx = tx.Where("timestamp >= ?", startTime) + startTime := parse.Number(querys.StartTime) + startTimeStr := date.ParseDateToStr(startTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at >= ?", startTimeStr) } if querys.EndTime != 0 { - endTime := fmt.Sprintf("%d", querys.EndTime) - if len(endTime) == 13 { - endTime = endTime[:10] - } - tx = tx.Where("timestamp <= ?", endTime) + endTime := parse.Number(querys.EndTime) + endTimeStr := date.ParseDateToStr(endTime, date.YYYY_MM_DD_HH_MM_SS) + tx = tx.Where("created_at <= ?", endTimeStr) } if querys.EventType != "" { eventTypes := strings.Split(querys.EventType, ",")