public async Task <bool> Adicionar(Ponto ponto)
        {
            if (!ExecutarValidacao(new PontoValidation(), ponto))
            {
                return(false);
            }

            if (_pontoRepository.ObterPorId(ponto.Id) != null)
            {
                return(false);
            }

            await _pontoRepository.Adicionar(ponto);

            return(true);
        }
Beispiel #2
0
        public async Task <bool> Adicionar(Registro registro)
        {
            var dataAtual = DateTime.Now.ToString("yyyy-MM-dd");
            var ponto     = _pontoRepository.Buscar(p => p.Data.ToString() == dataAtual);

            if (!ExecutarValidacao(new RegistroValidation(), registro))
            {
                return(false);
            }

            if (ponto.Result != null)
            {
                foreach (var pontoAtual in ponto.Result)
                {
                    registro.PontoId = pontoAtual.Id;
                }
            }
            else
            {
                var pontoNew = new Ponto
                {
                    Id   = Guid.NewGuid(),
                    Data = DateTime.Now
                };

                await _pontoRepository.Adicionar(pontoNew);

                registro.PontoId = pontoNew.Id;
            }

            registro.Horario = Convert.ToDateTime(DateTime.Now.ToString("HH:mm:ss"));

            await _registroRepository.Adicionar(registro);

            return(true);
        }