feat: add service and model

This commit is contained in:
Jeffrey Duroyon
2020-05-10 23:58:49 +02:00
parent 4369438ff2
commit c8993f1ca3
20 changed files with 89 additions and 29 deletions

11
service/cage_service.go Normal file
View File

@@ -0,0 +1,11 @@
package service
import "hamster-tycoon/storage/dao"
type CageService struct {
serviceContext
}
func NewCageService(database dao.Database) *CageService {
return &CageService{serviceContext{db: database}}
}

11
service/game_service.go Normal file
View File

@@ -0,0 +1,11 @@
package service
import "Game-tycoon/storage/dao"
type GameService struct {
serviceContext
}
func NewGameService(database dao.Database) *GameService {
return &GameService{serviceContext{db: database}}
}

View File

@@ -0,0 +1,11 @@
package service
import "hamster-tycoon/storage/dao"
type HamsterService struct {
serviceContext
}
func NewHamsterService(database dao.Database) *HamsterService {
return &HamsterService{serviceContext{db: database}}
}

View File

@@ -15,4 +15,12 @@ type Database interface {
UpdateUser(*model.User) error
// end: user dao funcs
// start: cage games funcs
GetAllGames() ([]*model.Game, error)
GetGameById(string) (*model.Game, error)
CreateGame(*model.Game) error
DeleteGame(string) error
UpdateGame(*model.Game) error
// end: games dao funcs
}

View File

@@ -0,0 +1 @@
package fake

View File

@@ -0,0 +1 @@
package fake

View File

@@ -0,0 +1 @@
package fake

View File

@@ -0,0 +1 @@
package postgresql

View File

@@ -0,0 +1 @@
package postgresql

View File

@@ -0,0 +1 @@
package postgresql

View File

@@ -1,4 +1,4 @@
package hamster_tycoon
package model
type Cage struct {
Hamsters []*Hamster

View File

@@ -1,6 +1,8 @@
package hamster_tycoon
package model
type Game struct {
ID string
server Server
Cages []*Cage
SelledHamster []*Hamster
}

View File

@@ -1,8 +1,9 @@
package hamster_tycoon
package model
import (
"errors"
"fmt"
uuid "github.com/satori/go.uuid"
"hamster-tycoon/randomizer"
)
@@ -29,6 +30,7 @@ const (
var GlobalHamsterNumber = 1
type Hamster struct {
ID string
Name string
Number int
Sexe string
@@ -113,6 +115,7 @@ func Born(father *Hamster, mother *Hamster) ([]*Hamster, error) {
child := make([]*Hamster, numberOfChild)
for i := 0; i < numberOfChild; i++ {
child[i] = &Hamster{
ID: uuid.NewV4().String(),
Name: fmt.Sprintf("Hamster %d", GlobalHamsterNumber),
Number: GlobalHamsterNumber,
Age: 1,

View File

@@ -1,4 +1,4 @@
package hamster_tycoon
package model
import (
"errors"

5
storage/model/server.go Normal file
View File

@@ -0,0 +1,5 @@
package model
type Server struct {
ID string
}

View File

@@ -1,6 +1,8 @@
package model
import "time"
import (
"time"
)
type User struct {
UserEditable
@@ -8,6 +10,7 @@ type User struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt *time.Time `json:"updatedAt"`
GoogleId string `json:"-"`
Games []Game
}
type UserEditable struct {