Bom dia, realizei alguns testes no meu código, seguindo o padrão feito na aula, porém quando testo com a data atual da erro, ele só aceita a partir do dia 20. Segue o código:
const conexao = require ('../infraestrutura/conexao')
const moment = require ('moment');
class Atendimento
{
adiciona (atendimento, res) //Ele vai adicionar os atendimentos a nossa base de banco de dados, precisa receber os dados de algum lugar
{
const dataCriacao = moment().format('YYYY-MM-DD HH:MM:SS')
const data = moment(atendimento.data, 'DD/MM/YYYY').format('YYYY-MM-DD HH:MM:SS')
const dataEhValida = moment (data).isSameOrAfter (dataCriacao)
const clienteEhValido = atendimento.cliente.length >= 5
const validações =
[
{
nome: 'data',
valido: dataEhValida,
mensagem: 'Data deve ser maior ou igual a data atual'
},
{
nome: 'cliente',
valido: clienteEhValido,
mensagem: 'Cliente deve ter pelo menos 5 caracteres'
}
]
const erros = validações.filter(campo => !campo.valido) //vai verificar se existem erros.
const existemErros = erros.length //Caso existam erros, vamos saber pela quantidade de caractéres. Caso seja 0, vai ser false, caso tenha mais de 1, vai ser verdadeiro.
if(existemErros)
{
res.status(400).json(erros)
}
else
{
const atendimentoDatado = {...atendimento, dataCriacao, data} // tudo que tiver dentro do atendimento e uma data de criaçào.
const sql = 'INSERT INTO Atendimentos SET ?'
conexao.query (sql, atendimentoDatado, (erro, resultados) =>
{
if (erro)
{
res.status(400).json (erro);
}
else
{
res.status(201).json(resultados);
}
})
}
}
}
module.exports = new Atendimento;