@@ -24,10 +24,11 @@ import (
2424)
2525
2626type DISection struct {
27- repo repository.AuthRepository
28- srv service.AuthService
29- handler handler.AuthHandle
30- ownerHandler handler.OwnerHandle
27+ repo repository.AuthRepository
28+ srv service.AuthService
29+ handler handler.AuthHandle
30+ ownerHandler handler.OwnerHandle
31+ pageRequestHandler handler.PageRequestHandle
3132}
3233
3334func main () {
@@ -47,7 +48,7 @@ func main() {
4748 Host : utils .GetEnv ("DB_HOST" , "localhost" ),
4849 Port : utils .GetEnvAsInt ("DB_PORT" , 5432 ),
4950 User : utils .GetEnv ("DB_USER" , "postgres" ),
50- Password : utils .GetEnv ("DB_PASSWORD" , "@milo " ),
51+ Password : utils .GetEnv ("DB_PASSWORD" , "Swanhtet12@ " ),
5152 DBName : utils .GetEnv ("DB_NAME" , "cms_db" ),
5253 SSLMode : utils .GetEnv ("DB_SSL_MODE" , "disable" ),
5354 MaxOpenConns : utils .GetEnvAsInt ("DB_MAX_OPEN_CONNS" , 25 ),
@@ -64,11 +65,21 @@ func main() {
6465 appLogger .WithError (err ).Fatal ("Failed to initialize database connection" )
6566 }
6667
67- err := dbConnection .DB .AutoMigrate (& types.CMSWholeSysRole {}, & types.CMSUser {}, & types.CMSCusPurchase {}, & types.UserPageRequest {})
68+ err := dbConnection .DB .AutoMigrate (& types.CMSWholeSysRole {}, & types.CMSUser {}, & types.CMSCusPurchase {}, & types.UserPageRequest {}, & types. Page {}, & types. PageRequest {} )
6869 if err != nil {
6970 appLogger .WithError (err ).Fatal ("Failed to migrate database" )
7071 return
7172 }
73+
74+ if err := utils .InitRedis (); err != nil {
75+ appLogger .Fatal ("Failed to initialize Redis:" , err )
76+ }
77+ defer func () {
78+ err := utils .CloseRedis ()
79+ if err != nil {
80+ appLogger .WithError (err ).Fatal ("Failed to close Redis connection" )
81+ }
82+ }()
7283 //if err := utils.InitJWTKeysFromVault(); err != nil {
7384 // log.Fatalf("Vault key init failed: %v", err)
7485 //}
@@ -83,7 +94,7 @@ func main() {
8394 healthChecker := utils .NewHealthChecker (dbConnection .DB , appLogger )
8495
8596 app := fiber .New (fiber.Config {
86- AppName : "CMS Multi-Tenant System" ,
97+ AppName : "CMS Multi-Tenant System " ,
8798 ErrorHandler : func (c * fiber.Ctx , err error ) error {
8899 code := fiber .StatusInternalServerError
89100 var e * fiber.Error
@@ -148,6 +159,7 @@ func main() {
148159 di := DependencyInjectionSection (appLogger , dbConnection .DB )
149160 routes .SetupRoutes (app , di .handler )
150161 routes .SetupOwnerRoutes (app , di .ownerHandler )
162+ routes .SetupPageRequestRoutes (app , di .pageRequestHandler )
151163
152164 port := utils .GetEnv ("PORT" , "8080" )
153165
@@ -177,6 +189,9 @@ func main() {
177189
178190func DependencyInjectionSection (logger * logrus.Logger , db * gorm.DB ) * DISection {
179191 repo := repository .NewRepo (logger , db )
192+ if err := repo .CreateDefaultRoles (); err != nil {
193+ logger .Fatalf ("Failed to create default roles: %v" , err )
194+ }
180195 srv := service .NewService (logger , repo )
181196 authHandler := handler .NewHandler (srv )
182197
@@ -185,10 +200,16 @@ func DependencyInjectionSection(logger *logrus.Logger, db *gorm.DB) *DISection {
185200 ownerService := service .NewOwnerService (logger , ownerRepo , repo )
186201 ownerHandler := handler .NewOwnerHandler (ownerService )
187202
203+ // Page Request
204+ pageRequestRepo := repository .NewPageRequestRepository (logger , db )
205+ pageRequestSrv := service .NewPageRequestService (logger , pageRequestRepo )
206+ pageRequestHandler := handler .NewPageRequestHandler (pageRequestSrv )
207+
188208 return & DISection {
189- repo : repo ,
190- srv : srv ,
191- handler : authHandler ,
192- ownerHandler : ownerHandler ,
209+ repo : repo ,
210+ srv : srv ,
211+ handler : authHandler ,
212+ ownerHandler : ownerHandler ,
213+ pageRequestHandler : pageRequestHandler ,
193214 }
194215}
0 commit comments