2020-03-25 00:49:19 +00:00
|
|
|
package hn
|
|
|
|
|
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
|
|
|
|
"github.com/jinzhu/gorm"
|
|
|
|
)
|
|
|
|
|
2020-03-25 01:32:40 +00:00
|
|
|
// this schema is quite redundant, i know
|
|
|
|
|
|
|
|
type HNFrontPage struct {
|
|
|
|
gorm.Model
|
|
|
|
InternalID uint64 `gorm:"primary_key;auto_increment:true`
|
|
|
|
HNID uint // HN integer id
|
|
|
|
Appeared time.Time
|
|
|
|
Disappeared time.Time
|
|
|
|
HighestRank uint // frontpage index
|
|
|
|
Rank uint // frontpage index
|
|
|
|
Title string // submission title
|
2020-03-25 14:50:10 +00:00
|
|
|
Score uint // updoots
|
2020-03-25 01:32:40 +00:00
|
|
|
URL string // duh
|
|
|
|
}
|
|
|
|
|
2020-03-25 00:49:19 +00:00
|
|
|
type HNStoryRank struct {
|
|
|
|
gorm.Model
|
|
|
|
InternalStoryID uint64 `gorm:"primary_key;auto_increment:true`
|
|
|
|
HNID uint // HN integer id
|
|
|
|
Title string // submission title
|
|
|
|
URL string // duh
|
|
|
|
Rank uint // frontpage index
|
2020-03-25 14:50:10 +00:00
|
|
|
Score uint // updoots
|
2020-03-25 00:49:19 +00:00
|
|
|
FetchedAt time.Time // identical within fetchid
|
|
|
|
}
|
|
|
|
|
|
|
|
type FrontPageCache struct {
|
|
|
|
gorm.Model
|
|
|
|
CacheID uint64 `gorm:"primary_key;auto_increment:true`
|
|
|
|
HNID uint
|
|
|
|
HighestRankReached uint
|
|
|
|
URL string
|
|
|
|
Title string
|
|
|
|
Appeared time.Time
|
|
|
|
Disappeared time.Time
|
|
|
|
}
|