[ADD] AVANCE intranet

parent 5b0be4ed
...@@ -18,6 +18,7 @@ import ( ...@@ -18,6 +18,7 @@ import (
"intranet-sycronizacion/internal/db" "intranet-sycronizacion/internal/db"
"intranet-sycronizacion/internal/parents" "intranet-sycronizacion/internal/parents"
"intranet-sycronizacion/internal/paymentplans" "intranet-sycronizacion/internal/paymentplans"
"intranet-sycronizacion/internal/professors"
"intranet-sycronizacion/internal/students" "intranet-sycronizacion/internal/students"
appsync "intranet-sycronizacion/internal/sync" appsync "intranet-sycronizacion/internal/sync"
"intranet-sycronizacion/internal/users" "intranet-sycronizacion/internal/users"
...@@ -66,6 +67,8 @@ func main() { ...@@ -66,6 +67,8 @@ func main() {
reader = parents.NewQueryReader(pgPool, p.PGQuery) reader = parents.NewQueryReader(pgPool, p.PGQuery)
case p.Name == "users": case p.Name == "users":
reader = users.NewQueryReader(pgPool, p.PGQuery) reader = users.NewQueryReader(pgPool, p.PGQuery)
case p.Name == "professors":
reader = professors.NewQueryReader(pgPool, p.PGQuery)
case p.RequireEnrollmentID: case p.RequireEnrollmentID:
reader = db.NewFunctionReader(pgPool, p.PGFunction) reader = db.NewFunctionReader(pgPool, p.PGFunction)
default: default:
...@@ -97,7 +100,7 @@ func main() { ...@@ -97,7 +100,7 @@ func main() {
svcByName[p.Name] = svc svcByName[p.Name] = svc
} }
router := api.NewRouter(svcByName["students"], svcByName["payment_plans"], svcByName["parents"], svcByName["users"], router := api.NewRouter(svcByName["students"], svcByName["payment_plans"], svcByName["parents"], svcByName["users"], svcByName["professors"],
func(pingCtx context.Context) error { return pgPool.Ping(pingCtx) }, func(pingCtx context.Context) error { return pgPool.Ping(pingCtx) },
func(pingCtx context.Context) error { return mongoClient.Ping(pingCtx, nil) }, func(pingCtx context.Context) error { return mongoClient.Ping(pingCtx, nil) },
) )
......
...@@ -15,6 +15,7 @@ type Handlers struct { ...@@ -15,6 +15,7 @@ type Handlers struct {
paymentPlansSvc *appsync.Service paymentPlansSvc *appsync.Service
parentsSvc *appsync.Service parentsSvc *appsync.Service
usersSvc *appsync.Service usersSvc *appsync.Service
professorsSvc *appsync.Service
pgPing func(context.Context) error pgPing func(context.Context) error
mongoPing func(context.Context) error mongoPing func(context.Context) error
} }
......
...@@ -10,8 +10,8 @@ import ( ...@@ -10,8 +10,8 @@ import (
) )
// NewRouter construye el router de Gin y registra las rutas. // NewRouter construye el router de Gin y registra las rutas.
func NewRouter(studentsSvc, paymentPlansSvc, parentsSvc, usersSvc *appsync.Service, pgPing, mongoPing func(context.Context) error) *gin.Engine { func NewRouter(studentsSvc, paymentPlansSvc, parentsSvc, usersSvc, professorsSvc *appsync.Service, pgPing, mongoPing func(context.Context) error) *gin.Engine {
h := &Handlers{studentsSvc: studentsSvc, paymentPlansSvc: paymentPlansSvc, parentsSvc: parentsSvc, usersSvc: usersSvc, pgPing: pgPing, mongoPing: mongoPing} h := &Handlers{studentsSvc: studentsSvc, paymentPlansSvc: paymentPlansSvc, parentsSvc: parentsSvc, usersSvc: usersSvc, professorsSvc: professorsSvc, pgPing: pgPing, mongoPing: mongoPing}
r := gin.Default() r := gin.Default()
...@@ -29,5 +29,8 @@ func NewRouter(studentsSvc, paymentPlansSvc, parentsSvc, usersSvc *appsync.Servi ...@@ -29,5 +29,8 @@ func NewRouter(studentsSvc, paymentPlansSvc, parentsSvc, usersSvc *appsync.Servi
v1.POST("/sync/users/trigger", triggerHandler(usersSvc)) v1.POST("/sync/users/trigger", triggerHandler(usersSvc))
v1.GET("/sync/users/status", statusHandler(usersSvc)) v1.GET("/sync/users/status", statusHandler(usersSvc))
v1.POST("/sync/professors/trigger", triggerHandler(professorsSvc))
v1.GET("/sync/professors/status", statusHandler(professorsSvc))
return r return r
} }
...@@ -3,6 +3,7 @@ package config ...@@ -3,6 +3,7 @@ package config
import ( import (
"intranet-sycronizacion/internal/parents" "intranet-sycronizacion/internal/parents"
"intranet-sycronizacion/internal/paymentplans" "intranet-sycronizacion/internal/paymentplans"
"intranet-sycronizacion/internal/professors"
"intranet-sycronizacion/internal/students" "intranet-sycronizacion/internal/students"
"intranet-sycronizacion/internal/users" "intranet-sycronizacion/internal/users"
) )
...@@ -53,4 +54,12 @@ var Pipelines = []PipelineDef{ ...@@ -53,4 +54,12 @@ var Pipelines = []PipelineDef{
IDField: "user_id", IDField: "user_id",
StateID: 4, StateID: 4,
}, },
{
Name: "professors",
PGQuery: professors.Query,
MongoCollection: "professors",
MongoDeletedCollection: "deleted_professors",
IDField: "professor_id",
StateID: 5,
},
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment