@@ -3,8 +3,11 @@ package controllers
33import (
44 "context"
55 "fmt"
6- "github.com/labstack/echo"
6+ "github.com/labstack/echo/v4"
7+ "github.com/labstack/gommon/log"
8+ respKit "github.com/laironacosta/kit-go/middleware/responses"
79 "github.com/laironacosta/ms-echo-go/controllers/dto"
10+ "github.com/laironacosta/ms-echo-go/enums"
811 "github.com/laironacosta/ms-echo-go/services"
912 "net/http"
1013)
@@ -29,14 +32,18 @@ func NewUserController(userService services.UserServiceInterface) UserController
2932func (ctr * UserController ) Create (c echo.Context ) error {
3033 u := dto.CreateUserRequest {}
3134 if err := c .Bind (& u ); err != nil {
32- return echo .NewHTTPError (http .StatusBadRequest , err .Error ())
35+ return respKit .GenericBadRequestError (enums .ErrorRequestBodyCode , err .Error ())
36+ }
37+
38+ if err := u .Validate (); err != nil {
39+ return respKit .GenericBadRequestError (enums .ErrorRequestBodyCode , err .Error ())
3340 }
3441
3542 if err := ctr .userService .Create (context .Background (), u ); err != nil {
36- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
43+ return err
3744 }
3845
39- fmt . Printf ("Request received: %+v \n " , u )
46+ log . Infof ("Request received: %+v \n " , u )
4047 return c .JSON (http .StatusOK , dto.Response {
4148 Message : "created" ,
4249 })
@@ -47,16 +54,23 @@ func (ctr *UserController) GetByEmail(c echo.Context) error {
4754 fmt .Printf ("Path param received: %+v \n " , e )
4855
4956 u , err := ctr .userService .GetByEmail (context .Background (), e )
57+ fmt .Printf ("Service finished, controller\n " )
5058 if err != nil {
51- return echo .NewHTTPError (http .StatusBadRequest , err .Error ())
59+ fmt .Printf ("err %v\n " , err )
60+ return err
5261 }
62+
5363 return c .JSON (http .StatusOK , u )
5464}
5565
5666func (ctr * UserController ) UpdateByEmail (c echo.Context ) error {
5767 u := dto.UpdateUserRequest {}
5868 if err := c .Bind (& u ); err != nil {
59- return echo .NewHTTPError (http .StatusBadRequest , err .Error ())
69+ return respKit .GenericBadRequestError (enums .ErrorRequestBodyCode , err .Error ())
70+ }
71+
72+ if err := u .Validate (); err != nil {
73+ return respKit .GenericBadRequestError (enums .ErrorRequestBodyCode , err .Error ())
6074 }
6175
6276 e := c .Param ("email" )
@@ -65,8 +79,9 @@ func (ctr *UserController) UpdateByEmail(c echo.Context) error {
6579 fmt .Printf ("Path param received: %+v \n " , e )
6680
6781 if err := ctr .userService .UpdateByEmail (context .Background (), u , e ); err != nil {
68- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
82+ return err
6983 }
84+
7085 return c .JSON (http .StatusOK , dto.Response {
7186 Message : "updated" ,
7287 })
@@ -78,8 +93,9 @@ func (ctr *UserController) DeleteByEmail(c echo.Context) error {
7893 fmt .Printf ("Path param received: %+v \n " , e )
7994
8095 if err := ctr .userService .DeleteByEmail (context .Background (), e ); err != nil {
81- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
96+ return err
8297 }
98+
8399 return c .JSON (http .StatusOK , dto.Response {
84100 Message : "deleted" ,
85101 })
0 commit comments