feature(web): ajouter route /membre/

permet la recherche de membre
This commit is contained in:
Victor Lacasse-Beaudoin 2024-06-20 19:55:12 -04:00
parent 0321b1b2a0
commit 6cc90b1a29

42
cmd.go
View file

@ -177,6 +177,48 @@ var webCmd = &cobra.Command{
)
})
e.GET("/membre/", func(c echo.Context) error {
membreID := c.QueryParam("membre_id")
switch {
case membreID == "":
return c.Render(
http.StatusOK,
"index-html",
voki.MessageResponse{Message: "Veuillez entrer un numéro étudiant à rechercher"},
)
case !IsMembreID(membreID):
return c.Render(
http.StatusOK,
"index-html",
voki.MessageResponse{Message: fmt.Sprintf("Numéro étudiant '%s' invalide", membreID)},
)
}
membre, err := apiClient.GetMembreForDisplay(membreID)
if err != nil {
return c.Render(
http.StatusOK,
"index-html",
voki.MessageResponse{Message: fmt.Sprintf("erreur: %s", err)},
)
}
return c.Render(
http.StatusOK,
"index-html",
voki.MessageResponse{Message: fmt.Sprintf(`
Numéro étudiant: %s
Nom d'usage: %s
Programme: [%s] %s
`,
membre.ID,
membre.Name,
membre.ProgrammeID,
membre.ProgrammeName,
)},
)
})
// Execution
e.Logger.Fatal(e.Start(
fmt.Sprintf(":%d", cfg.Web.Port)))