mirror of
https://github.com/usual2970/certimate.git
synced 2025-06-08 05:29:51 +00:00
42 lines
809 B
Go
42 lines
809 B
Go
package rest
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/usual2970/certimate/internal/domain"
|
|
"github.com/usual2970/certimate/internal/rest/resp"
|
|
|
|
"github.com/labstack/echo/v5"
|
|
)
|
|
|
|
type NotifyService interface {
|
|
Test(ctx context.Context, req *domain.NotifyTestPushReq) error
|
|
}
|
|
|
|
type notifyHandler struct {
|
|
service NotifyService
|
|
}
|
|
|
|
func NewNotifyHandler(route *echo.Group, service NotifyService) {
|
|
handler := ¬ifyHandler{
|
|
service: service,
|
|
}
|
|
|
|
group := route.Group("/notify")
|
|
|
|
group.POST("/test", handler.test)
|
|
}
|
|
|
|
func (handler *notifyHandler) test(c echo.Context) error {
|
|
req := &domain.NotifyTestPushReq{}
|
|
if err := c.Bind(req); err != nil {
|
|
return resp.Err(c, err)
|
|
}
|
|
|
|
if err := handler.service.Test(c.Request().Context(), req); err != nil {
|
|
return resp.Err(c, err)
|
|
}
|
|
|
|
return resp.Succ(c, nil)
|
|
}
|