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); } }