feat: add basic app
This commit is contained in:
parent
d4c1af4831
commit
c94098afef
13 changed files with 1850 additions and 0 deletions
71
internal/faker/faker.go
Normal file
71
internal/faker/faker.go
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
package faker
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/shopspring/decimal"
|
||||
"gitlab.mareshq.com/hq/backoffice/backoffice-api/internal/currency"
|
||||
"gitlab.mareshq.com/hq/backoffice/backoffice-api/internal/training"
|
||||
)
|
||||
|
||||
type Faker struct {
|
||||
trainingRepository training.Repository
|
||||
}
|
||||
|
||||
func NewFaker(trainingRepository training.Repository) *Faker {
|
||||
return &Faker{
|
||||
trainingRepository: trainingRepository,
|
||||
}
|
||||
}
|
||||
|
||||
func (f *Faker) GenerateFakeData() error {
|
||||
var t *training.Training
|
||||
|
||||
oneDayPricing := []training.Price{
|
||||
{
|
||||
Currency: currency.CZK,
|
||||
Amount: decimal.NewFromInt(5900),
|
||||
Type: training.OpenTrainingPriceType,
|
||||
},
|
||||
{
|
||||
Currency: currency.CZK,
|
||||
Amount: decimal.NewFromInt(24000),
|
||||
Type: training.CorporateTrainingPriceType,
|
||||
},
|
||||
}
|
||||
|
||||
twoDayPricing := []training.Price{
|
||||
{
|
||||
Currency: currency.CZK,
|
||||
Amount: decimal.NewFromInt(9900),
|
||||
Type: training.OpenTrainingPriceType,
|
||||
},
|
||||
{
|
||||
Currency: currency.CZK,
|
||||
Amount: decimal.NewFromInt(44000),
|
||||
Type: training.CorporateTrainingPriceType,
|
||||
},
|
||||
}
|
||||
|
||||
t = training.NewTraining("Kubernetes v1", 1, nil)
|
||||
|
||||
err := f.trainingRepository.Create(context.Background(), t)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
t = training.NewTraining("Kubernetes", 2, twoDayPricing)
|
||||
|
||||
err = f.trainingRepository.Create(context.Background(), t)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
t = training.NewTraining("Terraform", 1, oneDayPricing)
|
||||
|
||||
err = f.trainingRepository.Create(context.Background(), t)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in a new issue