2023-09-15 17:10:57 -04:00
|
|
|
// Package webhandler provides handlers for the web app routes
|
|
|
|
package webhandler
|
2023-09-17 01:12:46 -04:00
|
|
|
|
|
|
|
import (
|
2023-09-17 16:32:40 -04:00
|
|
|
"log"
|
2023-09-17 01:12:46 -04:00
|
|
|
"net/http"
|
|
|
|
|
2023-09-17 16:32:40 -04:00
|
|
|
"git.agecem.com/agecem/bottin-ag/apiclient"
|
2023-09-17 01:12:46 -04:00
|
|
|
"git.agecem.com/agecem/bottin-ag/webresponse"
|
|
|
|
"github.com/labstack/echo/v4"
|
|
|
|
)
|
|
|
|
|
|
|
|
func DeclareRoutes(e *echo.Echo, h *WebHandler) {
|
|
|
|
e.GET("/", h.IndexGET)
|
2023-09-17 16:32:40 -04:00
|
|
|
e.POST("/scan/", h.ScanPOST)
|
2023-09-17 01:12:46 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
type WebHandler struct {
|
2023-09-17 16:32:40 -04:00
|
|
|
APIClient *apiclient.APIClient
|
2023-09-17 01:12:46 -04:00
|
|
|
}
|
|
|
|
|
2023-09-17 16:32:40 -04:00
|
|
|
func New(apiClient *apiclient.APIClient) WebHandler {
|
|
|
|
return WebHandler{
|
|
|
|
APIClient: apiClient,
|
|
|
|
}
|
2023-09-17 01:12:46 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
func (w *WebHandler) IndexGET(c echo.Context) error {
|
|
|
|
var r webresponse.IndexGET
|
|
|
|
|
|
|
|
r.Message = "foo"
|
|
|
|
r.StatusCode = http.StatusOK
|
|
|
|
|
|
|
|
return c.Render(r.StatusCode, "index-html", r)
|
|
|
|
}
|
2023-09-17 16:32:40 -04:00
|
|
|
|
|
|
|
func (w *WebHandler) ScanPOST(c echo.Context) error {
|
|
|
|
var r webresponse.ScanPOST
|
|
|
|
|
|
|
|
membreID := c.FormValue("membre_id")
|
|
|
|
|
|
|
|
//TODO
|
|
|
|
log.Println("membreID:", membreID)
|
|
|
|
|
|
|
|
r.StatusCode = http.StatusOK
|
|
|
|
|
|
|
|
scanResponse, err := w.APIClient.Scan(membreID)
|
|
|
|
r.Error = scanResponse.Error
|
|
|
|
if err != nil {
|
|
|
|
r.Error = err.Error()
|
|
|
|
}
|
|
|
|
|
|
|
|
r.Message = scanResponse.Message
|
|
|
|
|
|
|
|
return c.Render(r.StatusCode, "scan-html", r)
|
|
|
|
}
|