Repository navigation
Expand file tree
/
Copy pathusuario.controller.js
More file actions
140 lines (114 loc) · 4.22 KB
/
Copy pathusuario.controller.js
File metadata and controls
140 lines (114 loc) · 4.22 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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
const userService = require("../service/usuario.service");
const findUserByIdController = async (req, res) => {
try{
const user = await userService.findUserByIdService(req.params.id);
if(!user){
return res.status(404).send({message: "Usuario não encontrado"});
}
return res.status(200).send(user);
}catch(err){
if(err.kind){
console.log(err.kind == "ObjectId");
return res.status(400).send({message: "ID incorreto, tente novamente"});
}
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const findAllUsersController = async (req, res) => {
try{
return res.status(200).send(await userService.findAllUsersService(req.query.limit, req.query.offset));
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const createUserController = async (req, res) => {
try{
const body = req.body;
return res.status(201).send(await userService.createUserService(body));
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const updateUserController = async (req, res) => {
try{
return res.send(await userService.updateUserService(req.params.id, req.body));
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const removeUserController = async (req, res) => {
try{
const deletedUser = await userService.removeUserService(req.params.id);
if(deletedUser == null){
return res.status(404).send({message: "Usuário não encontrado"});
}else{
return res.status(200).send({message: "Usuário Deletado"});
}
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const addAdressUserController = async (req, res) => {
try{
const endereco = await userService.addAdressService(req.params.id, req.body);
if(endereco.value == null){
return res.status(400).send({message: "Erro no Endereco, tente novamente"});
}else{
return res.status(201).send({message: "Endereco Adicionado!"});
}
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const removeAdressUserController = async (req, res) => {
try{
const endereco = await userService.removeAdressService(req.body.id, req.body.adressId);
let found = false;
endereco.value.endereco.map((valor, chave) => {
if(valor._id == req.body.adressId){
found == true
}
})
if(found){
return res.status(200).send({message: "Endereco Removido!"});
}else{
return res.status(400).send({message: "Erro na remocao Endereco, tente novamente"});
}
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const addPedidoUserController = async (req, res) => {
try{
res.status(201).send(await userService.addPedidoUserService(req.params.id, req.body));
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
const removePedidoUserController = async (req, res) => {
try{
res.status(200).send(await userService.removePedidoUserService(req.params.id, req.body));
}catch(err){
console.log(`Erro: ${err.message}`);
return res.status(500).send({message: "Erro inesperado, tente novamente"});
}
};
module.exports = {
findUserByIdController,
findAllUsersController,
createUserController,
updateUserController,
removeUserController,
addAdressUserController,
removeAdressUserController,
addPedidoUserController,
removePedidoUserController
}