public async Task <EventoDto> UpdateEventos(int eventoId, EventoDto model)
        {
            try
            {
                var evento = await _eventoPersist.GetEventoByIdAsync(eventoId, false);

                if (evento == null)
                {
                    return(null);
                }

                model.Id = evento.Id;

                _mapper.Map(model, evento);

                _geralPersist.Upadate <Evento>(evento);

                if (await _geralPersist.SaveChangesAsync())
                {
                    var eventoRetorno = await _eventoPersist.GetEventoByIdAsync(evento.Id, false);

                    return(_mapper.Map <EventoDto>(eventoRetorno));
                }
                return(null);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        public async Task <LoteDto[]> SaveLotes(int eventoId, LoteDto[] models)
        {
            try
            {
                var lotes = await _lotePersist.GetLotesByEventoIdAsync(eventoId);

                if (lotes == null)
                {
                    return(null);
                }

                foreach (var model in models)
                {
                    if (model.Id == 0)
                    {
                        await AdicionarLote(eventoId, model);
                    }
                    else
                    {
                        var lote = lotes.FirstOrDefault(lote => lote.Id == model.Id);
                        model.EventoId = eventoId;

                        _mapper.Map(model, lote);
                        _geralPersist.Upadate <Lote>(lote);
                        await _geralPersist.SaveChangesAsync();
                    }
                }

                var loteRetorno = await _lotePersist.GetLotesByEventoIdAsync(eventoId);

                return(_mapper.Map <LoteDto[]>(loteRetorno));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }