Browse Source

去掉重复的数据。

Signed-off-by: zouap <zouap@pcl.ac.cn>
tags/v1.22.5.1^2
zouap 3 years ago
parent
commit
bb642080ca
1 changed files with 17 additions and 6 deletions
  1. +17
    -6
      models/user_business_analysis.go

+ 17
- 6
models/user_business_analysis.go View File

@@ -233,11 +233,7 @@ func QueryMetricsPage(start int64, end int64, page int, pageSize int) ([]*UserMe
statictisSess := xStatistic.NewSession()
defer statictisSess.Close()
cond := "count_date >" + fmt.Sprint(start) + " and count_date<" + fmt.Sprint(end)
allCount, err := statictisSess.Where(cond).Count(new(UserMetrics))
if err != nil {
log.Info("query error." + err.Error())
return nil, 0
}

userMetricsList := make([]*UserMetrics, 0)
//.Limit(pageSize, page*pageSize)
if err := statictisSess.Table(new(UserMetrics)).Where(cond).OrderBy("count_date desc").
@@ -245,7 +241,7 @@ func QueryMetricsPage(start int64, end int64, page int, pageSize int) ([]*UserMe
return nil, 0
}
postDeal(userMetricsList)
return userMetricsList, allCount
return userMetricsList, int64(len(userMetricsList))
}

func QueryMetrics(start int64, end int64) ([]*UserMetrics, int) {
@@ -260,7 +256,21 @@ func QueryMetrics(start int64, end int64) ([]*UserMetrics, int) {
return userMetricsList, len(userMetricsList)
}

func duplicateRemoval(userMetricsList []*UserMetrics) []*UserMetrics {
userMetricsResult := make([]*UserMetrics, 0)
for i := 0; i < len(userMetricsList); i++ {
if i > 0 {
if userMetricsList[i].DataDate == userMetricsList[i-1].DataDate {
continue
}
}
userMetricsResult = append(userMetricsResult, userMetricsList[i])
}
return userMetricsResult
}

func postDeal(userMetricsList []*UserMetrics) {
userMetricsList = duplicateRemoval(userMetricsList)
for _, userMetrics := range userMetricsList {
userMetrics.DisplayDate = userMetrics.DataDate
userMetrics.TotalRegistUser = userMetrics.ActivateRegistUser + userMetrics.NotActivateRegistUser
@@ -276,6 +286,7 @@ func QueryMetricsForAll() []*UserMetrics {
Find(&userMetricsList); err != nil {
return nil
}
userMetricsList = duplicateRemoval(userMetricsList)
return makeResultForMonth(userMetricsList, len(userMetricsList))
}



Loading…
Cancel
Save