Example #1
0
        public async Task <ResultDto <bool> > Update(AgendamentoDto agendamentoDto)
        {
            var agendamentoDtoValidate = new AgendamentoDtoValidate(agendamentoDto);

            if (!agendamentoDtoValidate.Validate())
            {
                return(await Task.FromResult(ResultDto <bool> .Validation(agendamentoDtoValidate.Mensagens)));
            }

            var agendamento = await _agendamentoRepository.ObterPorId(agendamentoDto.AgendamentoId);

            agendamento.AtualizarAgendamento(agendamentoDto);

            if (await _agendamentoRepository.ValidaAgendamentoDuplicados(agendamento.EstabelecimentoId, agendamento.AgendamentoId, agendamento.DataAgendamento, agendamento.DataFinalAgendamento))
            {
                return(await Task.FromResult(ResultDto <bool> .Validation("Horário já possui agendamento!")));
            }

            await _agendamentoRepository.Update(agendamento);

            return(await Task.FromResult(ResultDto <bool> .Success(true)));
        }
Example #2
0
        public async Task <ResultDto <AgendamentoDto> > Create(AgendamentoDto agendamentoDto)
        {
            var agendamentoDtoValidate = new AgendamentoDtoValidate(agendamentoDto);

            if (!agendamentoDtoValidate.Validate())
            {
                return(await Task.FromResult(ResultDto <AgendamentoDto> .Validation(agendamentoDtoValidate.Mensagens)));
            }

            var agendamento = _mapper.Map <Agendamento>(agendamentoDto);

            agendamento.SituacaoId   = (int)ESituacao.ATIVO;
            agendamento.DataCadastro = DateTime.Now;

            if (await _agendamentoRepository.ValidaAgendamentoDuplicados(agendamento.EstabelecimentoId, agendamento.AgendamentoId, agendamento.DataAgendamento, agendamento.DataFinalAgendamento))
            {
                return(await Task.FromResult(ResultDto <AgendamentoDto> .Validation("Horário já possui agendamento!")));
            }

            await _agendamentoRepository.Create(agendamento);

            return(await Task.FromResult(ResultDto <AgendamentoDto> .Success(_mapper.Map <AgendamentoDto>(agendamento))));
        }