runtimeSort.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package main
  2. import (
  3. "fmt"
  4. "fwh-toolbox-server/database"
  5. "fwh-toolbox-server/domain"
  6. "fwh-toolbox-server/logger"
  7. "fwh-toolbox-server/repositories"
  8. "sort"
  9. "time"
  10. )
  11. func main() {
  12. err := logger.Init("dev")
  13. if err != nil {
  14. panic(err)
  15. }
  16. defer logger.Log.Sync() // 退出前同步zap缓冲区
  17. if _, err := database.InitMongo("mongodb://127.0.0.1:27017/FwhToolboxDb"); err != nil {
  18. panic(err)
  19. }
  20. dataPage, err := repositories.GetSiteAnalysisManageList(1, 1000, nil, nil, nil)
  21. if err != nil {
  22. panic(err)
  23. }
  24. dataList := dataPage.Data
  25. for _, d := range dataList {
  26. data, err := repositories.GetSiteAnalysisConfig(d.Id)
  27. if err != nil {
  28. panic(err)
  29. }
  30. runtimeData := data.Data.Runtime
  31. runtimeSort(&runtimeData)
  32. if err := repositories.InsertSiteAnalysisRuntime(d.Id, runtimeData); err != nil {
  33. panic(err)
  34. }
  35. }
  36. fmt.Println("转换成功。")
  37. }
  38. func runtimeSort(list *[]domain.RuntimeItem) {
  39. if list == nil {
  40. return
  41. }
  42. // 排序
  43. sort.Slice(*list, func(i, j int) bool {
  44. ti, _ := time.Parse(time.DateTime, (*list)[i].Time)
  45. tj, _ := time.Parse(time.DateTime, (*list)[j].Time)
  46. return ti.Before(tj)
  47. })
  48. }