Ejemplo n.º 1
0
        public override void Save(Transferencia entity)
        {
            using (var bo = new JogadorBO())
            {
                var jogador = bo.Get(entity.Jogador_Id);

                if (entity.Clube_Id == jogador.ClubeAtual_Id)
                {
                    throw new InvalidOperationException("O jogador já pertence a este clube!");
                }

                jogador.DataTransferencia = entity.Data;
                jogador.ClubeAtual_Id     = entity.Clube_Id;

                using (var clubeBo = new ClubeBO())
                {
                    clubeBo.EditarTemJogadores(jogador.ClubeAtual_Id, entity.Clube_Id);

                    bo.Save(jogador);
                }
            }

            entity.Clube   = null;
            entity.Jogador = null;

            entity.Clube_Id = entity.Clube_Id == 0 ? null : entity.Clube_Id;

            base.Save(entity);
        }
Ejemplo n.º 2
0
        public void EditarTemJogadores(int?clubeAnteriorId, int?clubeNovoId)
        {
            using (var dao = new ClubeDAO())
            {
                //Clube Anterior
                if (clubeAnteriorId != null)
                {
                    var clubeAnterior = Get((int)clubeAnteriorId);

                    var jogadorBo = new JogadorBO();
                    var jogadores = jogadorBo.List(x => x.ClubeAtual_Id == clubeAnteriorId);

                    clubeAnterior.TemJogadores = jogadores.Count > 1;
                    dao.EditTemJogadores(clubeAnterior);
                }

                //Clube Novo
                if (clubeNovoId != null)
                {
                    var clubeNovo = Get((int)clubeNovoId);
                    clubeNovo.TemJogadores = true;
                    dao.EditTemJogadores(clubeNovo);
                }
            }
        }