41 lines
882 B
Go
Raw Normal View History

2023-10-08 15:59:42 +07:00
package main
import (
"fmt"
"log"
"furtuna-be/config"
_ "furtuna-be/docs"
"furtuna-be/internal/app"
"furtuna-be/internal/common/db"
"furtuna-be/internal/common/logger"
"furtuna-be/internal/repository"
"furtuna-be/internal/routes"
"furtuna-be/internal/services"
)
func main() {
loggerSingleton := logger.NewMainLoggerSingleton()
loggerSingleton.Info("Starting server")
cfg := config.LoadConfig()
dbConn, err := db.NewPostgres(cfg.Database)
if err != nil {
log.Fatal(err)
}
2024-08-10 23:52:09 +07:00
server := app.NewServer(cfg)
2023-10-08 15:59:42 +07:00
repo := repository.NewRepoManagerImpl(dbConn, cfg)
service := services.NewServiceManagerImpl(cfg, repo)
routes.RegisterPublicRoutes(server, service, repo)
routes.RegisterPrivateRoutes(server, service, repo)
2024-08-03 20:01:25 +07:00
routes.RegisterCustomerRoutes(server, service, repo)
2023-10-08 15:59:42 +07:00
server.StartScheduler()
log.Fatal(server.Listen(fmt.Sprint(":", cfg.Server.Port)))
}