示例#1
0
        public ParaOndeMoverInscricaoQuarto MoverInscrito(Inscricao inscrito)
        {
            if (inscrito == null)
            {
                throw new ArgumentNullException("inscrito", "Não pode ser nulo.");
            }

            if (inscrito.Evento != mQuarto.Evento)
            {
                throw new ArgumentException("Esta inscrição é de outro evento.", "inscrito");
            }

            /*if (inscrito is InscricaoInfantil)
             *  throw new ArgumentException("Não se pode incluir uma inscrição de criança.", "inscrito");*/

            if (inscrito is InscricaoParticipante && (int)inscrito.Pessoa.Sexo != (int)mQuarto.Sexo)
            {
                throw new ArgumentException("Esta inscrição é de sexo diferente do definido no quarto.", "inscrito");
            }

            QuartoInscrito inscricao = null;

            if ((inscricao = mQuarto.Inscritos.FirstOrDefault(x => x.Inscricao == inscrito)) == null)
            {
                throw new ArgumentException("Esta inscrição não está no quarto.");
            }

            return(new ParaOndeMoverInscricaoQuarto(mQuarto, new QuartoInscrito[] { inscricao }));
        }
示例#2
0
        public void TornarCoordenador(Inscricao inscrito, bool coordenador)
        {
            if (inscrito == null)
            {
                throw new ArgumentNullException("inscrito", "Não pode ser nulo.");
            }

            if (inscrito.Evento != mQuarto.Evento)
            {
                throw new ArgumentException("Esta inscrição é de outro evento.", "inscrito");
            }

            if (coordenador && inscrito.GetTypeUnproxied() == typeof(InscricaoInfantil))
            {
                throw new ArgumentException("Não se pode tornar uma criança coordenadora de quarto.", "inscrito");
            }

            QuartoInscrito inscricao = null;

            if ((inscricao = mQuarto.Inscritos.FirstOrDefault(x => x.Inscricao == inscrito)) == null)
            {
                throw new ArgumentException("Esta inscrição não está no quarto.");
            }

            inscricao.EhCoordenador = coordenador;
        }
示例#3
0
        public void RemoverInscrito(Inscricao inscrito)
        {
            if (inscrito == null)
            {
                throw new ArgumentNullException("inscrito", "Não pode ser nulo.");
            }

            if (inscrito.Evento != mQuarto.Evento)
            {
                throw new ArgumentException("Esta inscrição é de outro evento.", "inscrito");
            }

            /*if (inscrito is InscricaoInfantil)
             *  throw new ArgumentException("Não se pode excluir uma inscrição de criança.", "inscrito");*/

            QuartoInscrito inscricao = null;

            if ((inscricao = mQuarto.Inscritos.FirstOrDefault(x => x.Inscricao == inscrito)) == null)
            {
                throw new ArgumentException("Esta inscrição não está no quarto.");
            }

            mQuarto.RemoverInscrito(inscricao);
        }