# Listagem de API
**Integrantes** KEVIN RIBEIRO DE ANDRADE,
MURILO SANTOS SILVA ,
GABRIEL OLIVEIRA LOOZE MIRANDA,
HENRIQUE DIAS COSTA,
JOÃO VITOR DA SILVA MONTEIRO ,
DANIELLY CRISTINA CARMO NEVES
```javascript=
// pra listar as ofertas do dia
app.get ('/produto', async (req, resp) => {
try {
let consulta = db.TB_produto.findAll();
resp.send(consulta);
}
catch () {
resp.send{erro: "Incapacidade de ler a tabela por culpa sua"}
}
})
//pra inserir um produto
app.post('/produto', async (req, resp) => {
try {
let body = req.body;
let r = db.tb_produto.create({
nm_produto: body.nm_produto,
ds_produto: body.ds_produto,
ds_categoria: body.ds_categoria,
ds_tipo: body.ds_tipo,
vl_preco: body.vl_preco,
img_produto: body.img_produto,
ds_localizacao: body.ds_localizacao,
dt_inclusao: body.dt_inclusao
})
resp.send(r);
}
catch () {
resp.send(erro: {"Incapacidade de fazer uma inserção de produto"})
}
})
// pra logar um usuario
app.post('/login', async(req, resp) => {
try {
let body = req.body;
let r = db.tb_usuario.findOne({ where: {ds_login: body.ds_login, ds_senha: body.nr_senha},
raw: true
})
resp.send(r)
}
catch() {
resp.send(erro: {'Deu erro no post de logar'})
}
})
// pra inserir um usuario
app.post('/usuario', async (req, resp) => {
try {
let body = req.body;
let r = db.tb_usuario.create({
nm_usuario: body.nm_usuario,
ds_CPF: body.ds_CPF,
ds_email: body.ds_email,
nr_senha: body.nr_senha,
nm_usuario: body.nm_usuario
});
resp.send(r)
}
catch() {
resp.send({erro: "erro ao cadastrar um usuario"})
}
});
// alterar informações de usuario
app.put('/usuario/:id', async (req, resp) => {
try {
let body = req.body;
let id = req.params.id;
let r = db.tb_usuario.update({
ds_email: body.ds_email
},
{
where: {id_usuario: id}
});
resp.send(r);
}
catch() {
resp.send({erro: "falha ao alterar email"})
}
})
// adc numero de telefone
app.put('/usuario/:id', async (req, resp) => {
try {
let body = req.body;
let id = req.params.id;
let r = db.tb_usuario.update({
ds_telefone: body.ds_senha
},
{
where: {id_usuario: id}
});
resp.send(r);
}
catch() {
resp.send({erro: "falha ao adcionar novo telefone"})
}
})
// alterar cartão de credito
app.put('/cartao/:id', async (req, resp) => {
let body = req.body;
let id = req.params.id;
let r = db.tb_cartao.update({
nr_cartao: body.nr_cartao,
nr_cvc: body.nr_cvc,
dt_validade: body.dt_validade
},
{
where: {id_cartao_credito: id}
})
resp.send(r)
}
catch() {
resp.send({erro: "falha ao adcionar novo telefone"})
});
// adc um novo cartão de credito
app.post('/cartao/:id', async (req, resp) => {
try {
let id = req.params.id;
let body = req.body;
let r = db.tb_cartao.create({
nr_cartao: body.nr_cartao,
nr_cvc: body.nr_cvc,
dt_validade: body.dt_validade
},
{
where: {id_usuario: id}
})
resp.send(r);
}
catch() {
resp.send({erro: "falha ao adcionar novo telefone"})
})
// deletar produto
app.delete('/produto/:id', async (req, resp) => {
try {
let id = req.params.id;
let body = req.body;
let r = db.tb_produto.destroy({where: {id_usuario: body.id_usuario, id_produto: id}})
resp.send(r);
}
catch() {
resp.send({erro: "falha ao adcionar novo telefone"})
})
// get do chat
app.get('/chat/:id', async (req, resp) => {
let r = db.tb_chat.findOne({where: {id_chat: req.params.id}});
let mensagens = db.tb_chat.findAll({where: {id_chat: r.id_chat}})
resp.send(mensagens);
})
// post chat
app.post('/chat/:id', async (req, resp) => {
let chat = req.body;
let filtro = db.tb_chat.findOne({where: {id_chat: req.params.id, id_usuario: chat.id_usuario}});
let chatUsu = db.tb_chat_usuario.findOne({where: {id_chat: req.params.id, id_usuario: chat.id_usuario, id_vendedor: chat.id_vendedor}})
let jsonMsg = db.tb_chat.create({
ds_mensagem: chat.ds_mensagem,
dt_mensagem: Date now()
})
let jsonChatUsu = db.tb_chat_usu({
id_usuario: chat.tb_chat.id_usuario,
id_usuario: chat.tb_chat.id_vendedor
})
resp.send(jsonMsg);
})
// pra listar os chats do usuario
app.get('/chat', async (req, resp) => {
let consul = db.tb_chat.usu.findAll();
resp.send(consul);
});
// pra comprar
app.post('/compra/:id', async (req, resp) => {
let compra = req.body;
let r = db.tb_compra.create({
qtd_produto: compra.qtd_produto,
vl_pedido_compra_e_venda: compra.vl_pedido_compra_e_venda ,
id_pedido: compra.id_pedido
},
{
where: {id_produto: req.params.id}
})
})
// pra listar os pedidos
app.get('/pedidos', async (req, resp) => {
let consul = db.tb_pedido.findAll();
resp.send(consul);
})
// pra inserir um pedido
app.post('/pedidos/:id', async (req, resp) => {
let pedido = req.body;
let r = db.tb_pedido.create({
id_comprador: req.params.id,
id_vendedor: req.params.id,
ds_pedido: pedido.ds_pedido,
vl_total_pedido: pedido. vl_total_pedido
})
resp.send(r);
})
```