From 87a165eb1ac66a28fc206b77e5e4c78a43367188 Mon Sep 17 00:00:00 2001 From: Alexandre Tuleu Date: Thu, 14 Jan 2016 12:50:03 +0100 Subject: [PATCH] Adds base type for our system --- bd.go | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 bd.go diff --git a/bd.go b/bd.go new file mode 100644 index 0000000..8405d59 --- /dev/null +++ b/bd.go @@ -0,0 +1,56 @@ +package main + +import "time" + +// An AlbumState describe the state of an Album +type AlbumState int + +const ( + NEW AlbumState = iota // 0 + MINT // 1 + GOOD // 2 + AVERAGE // 3 + BAD // 4 +) + +// An Album is the core object in our system +// +// This is basically the data we store on bdgest.com, and that we want +// in our system to be retrieve from +type Album struct { + ID uint64 + ISBN string + Series string + Title string + Num uint + NumA string + State AlbumState + + Author string + Editor string + Collection string + SatID string + + LegalDeposit time.Time + PrintDate time.Time +} + +// An AlbumDescription is a more complete BD description +// +// It holds data that can be fetched from bedetheque.com +type AlbumDescription struct { + Album *Album + + HasCover bool + Description string + Note float64 + + Scenarist string + Designer string + Colorist string + Cycle string + Format string + Pages int32 + + Created time.Time +}