|
|
package main
import ( "fmt" "strconv" "strings" "time"
"gopkg.in/mgo.v2/bson" )
func timeToDate(blockTime int64) string { stringTime := strconv.FormatInt(blockTime, 10) i, err := strconv.ParseInt(stringTime, 10, 64) if err != nil { panic(err) } tm := time.Unix(i, 0) //fmt.Println(tm)
stringDate := tm.String() //fmt.Println(stringDate)
return stringDate } func hourAnalysis(e EdgeModel, blockTime int64) { //fmt.Println(blockTime)
date := timeToDate(blockTime) date_hour := strings.Split(date, " ")[1] hour := strings.Split(date_hour, ":")[0]
hourCount := HourCountModel{} err := hourCountCollection.Find(bson.M{"hour": hour}).One(&hourCount) if err != nil { //date not yet in DB
var hourCount HourCountModel hourCount.Hour = hour hourCount.Count = 1 err = hourCountCollection.Insert(hourCount) check(err) } else { hourCount.Count++ err = hourCountCollection.Update(bson.M{"hour": hour}, &hourCount) check(err) } } func dateAnalysis(e EdgeModel, blockTime int64) { fmt.Println(blockTime) date := timeToDate(blockTime)
dateCount := DateCountModel{} err := dateCountCollection.Find(bson.M{"date": date}).One(&dateCount) if err != nil { //date not yet in DB
var dateCount DateCountModel dateCount.Date = date dateCount.Time = blockTime dateCount.Count = 1 err = dateCountCollection.Insert(dateCount) check(err) } else { dateCount.Count++ err = dateCountCollection.Update(bson.M{"date": date}, &dateCount) check(err) } }
|