shenjiachi 4 тижднів тому
джерело
коміт
1a9570ec8e
1 змінених файлів з 33 додано та 18 видалено
  1. +33
    -18
      app/svc/svc_points_center.go

+ 33
- 18
app/svc/svc_points_center.go Переглянути файл

@@ -38,14 +38,21 @@ func GetEggPointRecordBase(now time.Time, uid int64, page int, limit int) ([]md.
}
// 3. 获取最老有效索引及年份周数
oldestIndex := aliasName + "_" + "999999"
newestIndex := aliasName + "_" + "000000"
for key, _ := range aliases.Indices {
if key < oldestIndex {
oldestIndex = key
}
if key > newestIndex {
newestIndex = key
}
}
oldestYearStr, oldestWeekStr := GetYearsAndWeekStr(oldestIndex)
oldestYear := utils.StrToInt(oldestYearStr)
oldestWeek := utils.StrToInt(oldestWeekStr)
newestYearStr, newestWeekStr := GetYearsAndWeekStr(newestIndex)
newestYear := utils.StrToInt(newestYearStr)
newestWeek := utils.StrToInt(newestWeekStr)

// 4. 获取当期有效蛋蛋分
nowIndex := md2.EggEnergyUserEggScoreEsAlias + "_" + es2.GetLatestEffectiveIndexFromAlias(now)
@@ -56,25 +63,26 @@ func GetEggPointRecordBase(now time.Time, uid int64, page int, limit int) ([]md.
Query(boolQuery).
Pretty(true).
Do(context.Background())
if searchResult == nil {
return nil, "", 0, errors.New("failed to get current egg score")
}

var results []md.UserEggFlowReqRespList
if searchResult.Hits.TotalHits.Value != 0 {
// 解析结果
for _, hit := range searchResult.Hits.Hits {
var doc md.UserEggFlowReqRespList
err = json.Unmarshal(hit.Source, &doc)
if err != nil {
return nil, "", 0, errors.New("failed to unmarshal")
var nowScore string
if searchResult != nil {
var results []md.UserEggFlowReqRespList
if searchResult.Hits.TotalHits.Value != 0 {
// 解析结果
for _, hit := range searchResult.Hits.Hits {
var doc md.UserEggFlowReqRespList
err = json.Unmarshal(hit.Source, &doc)
if err != nil {
return nil, "", 0, errors.New("failed to unmarshal")
}
results = append(results, doc)
}
results = append(results, doc)
}
nowScore = utils.Float64ToStr(results[0].ScoreValue)
} else {
nowScore = "60"
}

nowScore := utils.Float64ToStr(results[0].ScoreValue)

indexes := make([]string, 0, limit)
// 5. 构造分页索引列表 查询历史蛋蛋分
for i := 0; i < limit; i++ {
@@ -94,6 +102,13 @@ func GetEggPointRecordBase(now time.Time, uid int64, page int, limit int) ([]md.
} else if tempYear < oldestYear {
break
}
// 判断是否超过最新索引时间
if tempYear > newestYear {
continue
}
if tempYear == newestYear && tempWeek > newestWeek {
continue
}
tempIndex := es2.GetAppointIndexFromAlias(utils.IntToStr(tempYear), utils.IntToStr(tempWeek))
indexes = append(indexes, tempIndex)
}
@@ -108,22 +123,22 @@ func GetEggPointRecordBase(now time.Time, uid int64, page int, limit int) ([]md.
if searchRecordResult == nil {
return nil, "", 0, errors.New("failed to get egg score flows")
}
var recordResults []md.UserEggFlowReqRespList
//var recordResults []md.UserEggFlowReqRespList
// 检查是否有结果
if searchRecordResult.Hits.TotalHits.Value != 0 {
// 解析结果
for _, hit := range searchResult.Hits.Hits {
for _, hit := range searchRecordResult.Hits.Hits {
var doc md.UserEggFlowReqRespList
err = json.Unmarshal(hit.Source, &doc)
if err != nil {
return nil, "", 0, errors.New("failed to unmarshal")
}
recordResults = append(recordResults, doc)
results = append(results, doc)
}
}

list := make([]md.EggPointRecordNode, len(results))
for i, result := range recordResults {
for i, result := range results {
year, week, startAt, endAt := GetWeekInfo(result.UpdatedAt)
list[i].Score = utils.Float64ToStr(result.ScoreValue)
list[i].Year = year


Завантаження…
Відмінити
Зберегти