38 lines
874 B
Go
38 lines
874 B
Go
|
package seeds
|
||
|
|
||
|
import (
|
||
|
"log"
|
||
|
"online-order/entity"
|
||
|
repository_product "online-order/repository/product"
|
||
|
service_product "online-order/usecase/product"
|
||
|
)
|
||
|
|
||
|
func fetchProductsFromJsonFile() *[]entity.ProductCreateUpdate {
|
||
|
file := CreateFile("database/seeds/resources/products.json")
|
||
|
pl := []entity.ProductCreateUpdate{}
|
||
|
|
||
|
if err := file.ReadJson(&pl); err != nil {
|
||
|
log.Println("on FillProducts an error occured: ", err)
|
||
|
return nil
|
||
|
}
|
||
|
return &pl
|
||
|
}
|
||
|
|
||
|
func FillProducts(server *entity.Routers) {
|
||
|
products := fetchProductsFromJsonFile()
|
||
|
|
||
|
activeBusiness := entity.ActiveBusiness{
|
||
|
BusinessID: 1,
|
||
|
DomainID: 1,
|
||
|
Domain: "localhost",
|
||
|
}
|
||
|
|
||
|
productRepo := repository_product.NewProductClient(server.Database, &activeBusiness)
|
||
|
|
||
|
productService := service_product.NewProductService(productRepo)
|
||
|
|
||
|
for _, item := range *products {
|
||
|
productService.Create(&item)
|
||
|
}
|
||
|
}
|