@@ -3,8 +3,11 @@ package controllers
3
3
import (
4
4
"context"
5
5
"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"
7
9
"github.com/laironacosta/ms-echo-go/controllers/dto"
10
+ "github.com/laironacosta/ms-echo-go/enums"
8
11
"github.com/laironacosta/ms-echo-go/services"
9
12
"net/http"
10
13
)
@@ -29,14 +32,18 @@ func NewUserController(userService services.UserServiceInterface) UserController
29
32
func (ctr * UserController ) Create (c echo.Context ) error {
30
33
u := dto.CreateUserRequest {}
31
34
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 ())
33
40
}
34
41
35
42
if err := ctr .userService .Create (context .Background (), u ); err != nil {
36
- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
43
+ return err
37
44
}
38
45
39
- fmt . Printf ("Request received: %+v \n " , u )
46
+ log . Infof ("Request received: %+v \n " , u )
40
47
return c .JSON (http .StatusOK , dto.Response {
41
48
Message : "created" ,
42
49
})
@@ -47,16 +54,23 @@ func (ctr *UserController) GetByEmail(c echo.Context) error {
47
54
fmt .Printf ("Path param received: %+v \n " , e )
48
55
49
56
u , err := ctr .userService .GetByEmail (context .Background (), e )
57
+ fmt .Printf ("Service finished, controller\n " )
50
58
if err != nil {
51
- return echo .NewHTTPError (http .StatusBadRequest , err .Error ())
59
+ fmt .Printf ("err %v\n " , err )
60
+ return err
52
61
}
62
+
53
63
return c .JSON (http .StatusOK , u )
54
64
}
55
65
56
66
func (ctr * UserController ) UpdateByEmail (c echo.Context ) error {
57
67
u := dto.UpdateUserRequest {}
58
68
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 ())
60
74
}
61
75
62
76
e := c .Param ("email" )
@@ -65,8 +79,9 @@ func (ctr *UserController) UpdateByEmail(c echo.Context) error {
65
79
fmt .Printf ("Path param received: %+v \n " , e )
66
80
67
81
if err := ctr .userService .UpdateByEmail (context .Background (), u , e ); err != nil {
68
- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
82
+ return err
69
83
}
84
+
70
85
return c .JSON (http .StatusOK , dto.Response {
71
86
Message : "updated" ,
72
87
})
@@ -78,8 +93,9 @@ func (ctr *UserController) DeleteByEmail(c echo.Context) error {
78
93
fmt .Printf ("Path param received: %+v \n " , e )
79
94
80
95
if err := ctr .userService .DeleteByEmail (context .Background (), e ); err != nil {
81
- return echo . NewHTTPError ( http . StatusBadRequest , err . Error ())
96
+ return err
82
97
}
98
+
83
99
return c .JSON (http .StatusOK , dto.Response {
84
100
Message : "deleted" ,
85
101
})
0 commit comments