users_controller.go
3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package controllers
import (
"encoding/json"
"github.com/astaxie/beego"
"github.com/linmadan/egglib-go/web/beego/utils"
"github.com/tiptok/godevp/pkg/application/users/command"
"github.com/tiptok/godevp/pkg/application/users/query"
"github.com/tiptok/godevp/pkg/application/users/service"
)
type UsersController struct {
beego.Controller
}
func (controller *UsersController) CreateUsers() {
usersService := service.NewUsersService(nil)
createUsersCommand := &command.CreateUsersCommand{}
json.Unmarshal(controller.Ctx.Input.GetData("requestBody").([]byte), createUsersCommand)
data, err := usersService.CreateUsers(createUsersCommand)
var response utils.JsonResponse
if err != nil {
response = utils.ResponseError(controller.Ctx, err)
} else {
response = utils.ResponseData(controller.Ctx, data)
}
controller.Data["json"] = response
controller.ServeJSON()
}
func (controller *UsersController) UpdateUsers() {
usersService := service.NewUsersService(nil)
updateUsersCommand := &command.UpdateUsersCommand{}
json.Unmarshal(controller.Ctx.Input.GetData("requestBody").([]byte), updateUsersCommand)
Id, _ := controller.GetInt64(":Id")
updateUsersCommand.UsersId = Id
data, err := usersService.UpdateUsers(updateUsersCommand)
var response utils.JsonResponse
if err != nil {
response = utils.ResponseError(controller.Ctx, err)
} else {
response = utils.ResponseData(controller.Ctx, data)
}
controller.Data["json"] = response
controller.ServeJSON()
}
func (controller *UsersController) GetUsers() {
usersService := service.NewUsersService(nil)
getUsersQuery := &query.GetUsersQuery{}
Id, _ := controller.GetInt64(":Id")
getUsersQuery.UsersId = Id
data, err := usersService.GetUsers(getUsersQuery)
var response utils.JsonResponse
if err != nil {
response = utils.ResponseError(controller.Ctx, err)
} else {
response = utils.ResponseData(controller.Ctx, data)
}
controller.Data["json"] = response
controller.ServeJSON()
}
func (controller *UsersController) RemoveUsers() {
usersService := service.NewUsersService(nil)
removeUsersCommand := &command.RemoveUsersCommand{}
json.Unmarshal(controller.Ctx.Input.GetData("requestBody").([]byte), removeUsersCommand)
Id, _ := controller.GetInt64(":Id")
removeUsersCommand.UsersId = Id
data, err := usersService.RemoveUsers(removeUsersCommand)
var response utils.JsonResponse
if err != nil {
response = utils.ResponseError(controller.Ctx, err)
} else {
response = utils.ResponseData(controller.Ctx, data)
}
controller.Data["json"] = response
controller.ServeJSON()
}
func (controller *UsersController) ListUsers() {
usersService := service.NewUsersService(nil)
listUsersQuery := &query.ListUsersQuery{}
offset, _ := controller.GetInt("offset")
listUsersQuery.Offset = offset
limit, _ := controller.GetInt("limit")
listUsersQuery.Limit = limit
data, err := usersService.ListUsers(listUsersQuery)
var response utils.JsonResponse
if err != nil {
response = utils.ResponseError(controller.Ctx, err)
} else {
response = utils.ResponseData(controller.Ctx, data)
}
controller.Data["json"] = response
controller.ServeJSON()
}