public IEnumerable<DTODivisaoOficina> MoverParticipante(int idEvento, int idInscricao, int daIdOficina, int paraIdOficina) { IList<DTODivisaoOficina> oficinasDTO = new List<DTODivisaoOficina>(); ExecutarSeguramente(() => { Evento evento = m_RepEventos.ObterEventoPeloId(idEvento); Oficina oficinaOrigem = m_RepOficinas.ObterPorId(idEvento, daIdOficina); Oficina oficinaDestino = m_RepOficinas.ObterPorId(idEvento, paraIdOficina); InscricaoParticipante participante = (InscricaoParticipante) m_RepInscricoes.ObterInscricaoPeloIdEventoEInscricao(idEvento, idInscricao); DivisaoManualParticipantesPorOficina divisor = new DivisaoManualParticipantesPorOficina(evento, m_RepOficinas); divisor.Oficina(oficinaOrigem).MoverParticipante(participante).Para(oficinaDestino); m_RepOficinas.Atualizar(oficinaOrigem); m_RepOficinas.Atualizar(oficinaDestino); oficinasDTO = ObterDivisaoOficinas(evento); }); return oficinasDTO; }
public IEnumerable<DTODivisaoOficina> RemoverParticipante(int idEvento, int idInscricao, int idOficina) { IList<DTODivisaoOficina> oficinasDTO = new List<DTODivisaoOficina>(); ExecutarSeguramente(() => { var evento = m_RepEventos.ObterEventoPeloId(idEvento); var oficina = m_RepOficinas.ObterPorId(idEvento, idOficina); var participante = (InscricaoParticipante)m_RepInscricoes.ObterInscricaoPeloIdEventoEInscricao(idEvento, idInscricao); var divisor = new DivisaoManualParticipantesPorOficina( evento, m_RepOficinas); divisor.Oficina(oficina).RemoverParticipante(participante); m_RepOficinas.Atualizar(oficina); oficinasDTO = ObterDivisaoOficinas(evento); }); return oficinasDTO; }
public IEnumerable<DTODivisaoOficina> IncluirParticipante(int idEvento, int idSala, int idInscricao) { IList<DTODivisaoOficina> oficinasDTO = new List<DTODivisaoOficina>(); ExecutarSeguramente(() => { Evento evento = m_RepEventos.ObterEventoPeloId(idEvento); InscricaoParticipante inscricao = (InscricaoParticipante)m_RepInscricoes.ObterInscricaoPeloIdEventoEInscricao(idEvento, idInscricao); Oficina oficina = m_RepOficinas.ObterPorId(idEvento, idSala); DivisaoManualParticipantesPorOficina divisor = new DivisaoManualParticipantesPorOficina(evento, m_RepOficinas); divisor.Oficina(oficina).IncluirParticipante(inscricao); m_RepOficinas.Atualizar(oficina); oficinasDTO = ObterDivisaoOficinas(evento); }); return oficinasDTO; }