示例#1
0
        public async Task Processar(IUnitOfWork unit, Competicao competicao, Evento evento)
        {
            var partdb = new ParticipanteRepository(unit);
            var agrdb  = new AgrupamentoRepository(unit);

            evento.Competicao = competicao;
            evento.Tipo       = competicao.EventoTipo;

            // Verifica se é um participante novo
            foreach (var item in evento.Participantes)
            {
                if (item.Participante.Id <= 0)
                {
                    await partdb.Add(item.Participante);
                }
            }
            // Verifica se é um agrupamento novo
            foreach (var item in evento.Agrupamentos)
            {
                if (item.Agrupamento.Id <= 0)
                {
                    await agrdb.Add(item.Agrupamento);
                }
                else
                {
                    item.Agrupamento = await agrdb.Find(item.Agrupamento.Id);
                }
            }
            await DoProcessar(evento);
        }
示例#2
0
        public void Competicao_ListaCom8Itens_ListaOrdenada()
        {
            var filmes = new List <Filme>(8);

            filmes.Add(new Filme("1", "Os Incríveis 2", 2000, 8.0M));
            filmes.Add(new Filme("2", "Jurassic World: Reino Ameaçado", 2000, 8.0M));
            filmes.Add(new Filme("3", "Oito Mulheres e um Segredo", 2000, 8.0M));
            filmes.Add(new Filme("4", "Hereditário", 2000, 8.0M));
            filmes.Add(new Filme("5", "Vingadores: Guerra Infinita", 2000, 8.0M));
            filmes.Add(new Filme("6", "Deadpool 2", 2000, 8.0M));
            filmes.Add(new Filme("7", "Han Solo: Uma História Star Wars", 2000, 8.0M));
            filmes.Add(new Filme("8", "Thor: Ragnarok", 2000, 8.0M));

            var competicao = new Competicao(filmes);

            Assert.Collection(competicao.FilmesParticipantes,
                              filme => Assert.Equal("Deadpool 2", filme.Titulo),
                              filme => Assert.Equal("Han Solo: Uma História Star Wars", filme.Titulo),
                              filme => Assert.Equal("Hereditário", filme.Titulo),
                              filme => Assert.Equal("Jurassic World: Reino Ameaçado", filme.Titulo),
                              filme => Assert.Equal("Oito Mulheres e um Segredo", filme.Titulo),
                              filme => Assert.Equal("Os Incríveis 2", filme.Titulo),
                              filme => Assert.Equal("Thor: Ragnarok", filme.Titulo),
                              filme => Assert.Equal("Vingadores: Guerra Infinita", filme.Titulo));
        }
示例#3
0
        public async Task <ActionResult <FinalistasView> > EnviarFilmesCompetidoresAsync([FromBody] IEnumerable <string> idfilmesEnviados)
        {
            try
            {
                if (!this.ValidarFilmesEnviados(idfilmesEnviados, out string mensagemErro))
                {
                    return(BadRequest(mensagemErro));
                }

                var filmesSelecionados = await this.ObterInformacoesFilmes(idfilmesEnviados);

                if (filmesSelecionados.Count() != 8)
                {
                    return(BadRequest("A lista deve possuir 8 filmes validos"));
                }

                var competicao = new Competicao(filmesSelecionados);
                var resultado  = competicao.RealizarCompeticao();

                return(Ok(new FinalistasView(resultado.Campeao, resultado.ViceCampeao)));
            }
            catch (System.Exception ex)
            {
                this._logger?.LogInformation($"Ocorreu um erro no envio dos filmes. Detalhes: {ex.Message.ToString()}");
                return(StatusCode(500, $"Ocorreu um erro no envio dos filmes. Detalhes: {ex.Message}"));
            }
        }
        public async Task <IActionResult> Add([FromBody] Competicao model)
        {
            var db = new CompeticaoRepository(Service.Unit);
            await db.Add(model);

            return(Ok());
        }
示例#5
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            Competicao competicao;

            // Cria a variável para converter a Data
            DateTime dataInicio = new DateTime();

            DateTime.TryParseExact(txtDtInicio.Text, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.NoCurrentDateDefault, out dataInicio);

            // Recupera a modalidade selecionada
            Modalidade modalidade = ModalidadeRepositorio.Instance.get(Convert.ToInt32(cboModalidades.SelectedItem.ToString().Substring(0, cboModalidades.SelectedItem.ToString().IndexOf(" - "))));

            // Verifica se vai inserir um novo registro ou então salvá-lo
            if (windowMode == Utilidades.WindowMode.ModoDeInsercao)
            {
                competicao        = new Competicao(txtNome.Text, dataInicio, modalidade);
                competicao.status = StatusEnum._1_Aberta;

                // Tenta inserir a competição
                if (CompeticaoRepositorio.Instance.insert(ref competicao, ref errorMessage))
                {
                    competicoes_view.Add(competicao);
                    refreshDataGridView();
                    clearFields();
                    cboModalidades.SelectedIndex = -1;
                }
                else
                {
                    MessageBox.Show("Houve um erro ao tentar inserir o registro." + Environment.NewLine + Environment.NewLine + errorMessage, "Contate o Suporte técnico", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                if (dgvCompeticoes.SelectedCells.Count > 0)
                {
                    competicao             = competicoes_view[dgvCompeticoes.SelectedCells[0].RowIndex];
                    competicao.nome        = txtNome.Text;
                    competicao.dataInicial = dataInicio;
                    competicao.modalidade  = modalidade;
                    competicao.status      = StatusEnum._1_Aberta;

                    // Salva as alterações da competição
                    if (CompeticaoRepositorio.Instance.update(competicao, ref errorMessage))
                    {
                        competicoes_view[dgvCompeticoes.SelectedCells[0].RowIndex] = competicao;
                        refreshDataGridView();
                    }
                    else
                    {
                        txtNome.Text                 = competicoes_view[dgvCompeticoes.SelectedCells[0].RowIndex].nome;
                        txtDtInicio.Text             = competicoes_view[dgvCompeticoes.SelectedCells[0].RowIndex].dataInicial.ToString("dd/MM/yyyy");
                        cboModalidades.SelectedIndex = -1;
                        MessageBox.Show("Houve um erro ao tentar salvar o registro." + Environment.NewLine + Environment.NewLine + errorMessage, "Contate o Suporte técnico", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }

            windowMode = Utilidades.WindowMode.ModoNormal;
            windowModeChanged();
        }
示例#6
0
        public void GerarCompetidores()
        {
            List <Alunos> alunos       = new List <Alunos>();
            var           boletins     = data.BuscacaBoletimAlunos();
            var           competidores = boletins.OrderByDescending(media => media.MediaAluno).Take(5).ToList();

            foreach (var item in competidores)
            {
                var comp = data.BuscaProvasCompetidores().Where(p => p.Aluno.IdAluno == item.Aluno.IdAluno).FirstOrDefault();

                if (comp == null)
                {
                    var    nota      = Calculo.gerarNota();
                    Provas provaComp = new Provas(nota, "competicao", item.Aluno);
                    item.Aluno.Prova.Add(provaComp);

                    alunos.Add(item.Aluno);
                }
            }

            if (data.BuscCompeticao() == null)
            {
                var compet = new Competicao(alunos);
                data.AddCompetidores(compet);
            }
        }
示例#7
0
        private void exportarPlanilha(object sender, EventArgs e)
        {
            Competicao         competicao = (Competicao)(((List <Object>)((ToolStripMenuItem)sender).Tag)[0]);
            Competicao_Partida partida    = (Competicao_Partida)(((List <Object>)((ToolStripMenuItem)sender).Tag)[1]);

            if (partida.data is null)
            {
                MessageBox.Show("Por favor verifique" + Environment.NewLine + Environment.NewLine +
                                String.Format("Não foi possível exportar a planilha da partida entre {0} e {1} pois não foi definida uma data para a realização da partida", partida.equipe1.nome, partida.equipe2.nome),
                                String.Format("{0} - {1} x {2}", competicao.nome, partida.equipe1.nome, partida.equipe2.nome), MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (partida.arbitro is null)
            {
                MessageBox.Show("Por favor verifique" + Environment.NewLine + Environment.NewLine +
                                String.Format("Não foi possível realizar a partida entre {0} e {1} pois não foi definido o árbitro da partida", partida.equipe1.nome, partida.equipe2.nome),
                                String.Format("{0} - {1} x {2}", competicao.nome, partida.equipe1.nome, partida.equipe2.nome), MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (partida.equipe1.atletas is null)
                {
                    partida.equipe1.atletas = PessoaRepositorio.Instance.getAtletasByEquipeCompeticao(competicao.id, partida.equipe1.id);
                }

                if (partida.equipe2.atletas is null)
                {
                    partida.equipe2.atletas = PessoaRepositorio.Instance.getAtletasByEquipeCompeticao(competicao.id, partida.equipe2.id);
                }

                GerenciadorCSV.exportarPlanilha(competicao, partida);
            }
        }
示例#8
0
 private void dgvCompeticoes_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
 {
     if (e.RowIndex > -1)
     {
         Competicao competicao = competicoes_view[e.RowIndex];
         new EditCompeticao(usuarioLogado, competicao).ShowDialog();
     }
 }
示例#9
0
        public IActionResult criaColegio()           //Requisição para preencher o banco.
        {
            int linhasInseridas = 0;


            //Aqui são geradas todas as instâncias dos objetos e inserções no banco
            Aluno[] alunos = Aluno.criaAlunos(60);

            Competicao competicao = new Competicao("2019", alunos, 5);

            Aluno[] competidores = competicao.Competidores;

            Aluno[] candidatos = competicao.Candidatos;

            //Aqui ocorrem as inserções no banco.

            linhasInseridas += SQL.insereCompeticao(1, competicao.Ano, competicao.Vencedor.Nome, competicao.Vencedor.MediaCompeticao);


            for (int i = 0; i < 60; i++)
            {
                linhasInseridas += SQL.insereAluno(i + 1, candidatos[i].Nome, candidatos[i].MediaFinal, candidatos[i].NomeTurma, candidatos[i].MediaCompeticao, candidatos[i].Pf, candidatos[i].Status, candidatos[i].NomeTurma);

                if (candidatos[i].Competidor)
                {
                    linhasInseridas += SQL.insereParticipa(i + 1);
                }

                linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 0);
                linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 1);
                linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 2);

                if (candidatos[i].Pf)
                {
                    linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 3);

                    if (candidatos[i].Competidor)
                    {
                        linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 4);
                    }
                }
                else if (candidatos[i].Competidor)
                {
                    linhasInseridas += SQL.insereNota(candidatos[i].Nota, i + 1, 4);
                }
            }


            if (linhasInseridas > 0)
            {
                return(Ok(new { mensagem = "Colegio criado!" }));
            }

            return(StatusCode(406, new { mensagem = "Erro no envio: Colegio não criado" }));
        }
示例#10
0
        public ViewCompeticao(Usuario usuarioLogado, Competicao competicao)
        {
            InitializeComponent();

            // Centraliza o form na tela
            CenterToScreen();

            this.usuarioLogado = usuarioLogado;

            this.competicao = competicao;
            this.Text      += " - " + competicao.nome;
        }
示例#11
0
        public ViewPartida(Usuario usuarioLogado, Competicao competicao, Competicao_Partida partida, bool partidaIniciada = false)
        {
            InitializeComponent();

            // Centraliza o form na tela
            CenterToScreen();

            this.usuarioLogado = usuarioLogado;

            this.competicao      = competicao;
            this.partida         = partida;
            this.partidaIniciada = partidaIniciada;
        }
        public EditArbitros(Usuario usuarioLogado, Competicao competicao)
        {
            InitializeComponent();

            CenterToScreen();

            this.usuarioLogado = usuarioLogado;

            this.competicao = competicao;

            windowMode = Utilidades.WindowMode.ModoNormal;
            windowModeChanged();
        }
示例#13
0
        public void criaArbitro(Competicao competicao, string cpf, string nome)
        {
            string myString = "";

            Pessoa arbitro = new Pessoa(cpf, nome, new DateTime(2000, 01, 01));

            arbitro.funcoes = funcoes.FindAll(funcao => funcao.codigo == FuncaoRepositorio.Instance.codigoArbitro);

            PessoaRepositorio.Instance.insert(ref arbitro, ref myString);

            Cargo cargoArbitro = new Cargo(arbitro.id, funcoes.Find(funcao => funcao.codigo.Equals(FuncaoRepositorio.Instance.codigoArbitro)), arbitro);

            CompeticaoRepositorio.Instance.insertArbitro(ref competicao, cargoArbitro);
        }
示例#14
0
        public async Task Add(Competicao competicao, Evento evento)
        {
            var db      = new EventoRepository(Unit);
            var criador = CriadorEvento.Get(competicao.EventoTipo);

            using (var tr = Unit.BeginTransaction())
            {
                await criador.Processar(Unit, competicao, evento);

                await db.Add(evento);

                tr.Commit();
            }
        }
        public ActionResult CreateCompeticao(Competicao competicao, HttpPostedFileBase image)
        {
            try
            {
                if (image != null)
                    competicao.imagem = DataUtils.CreateCompeticaoLogo(image);
                AppServices.AddCompeticao(competicao);

                return RedirectToAction("Competicoes");
            }
            catch
            {
                return View(competicao);
            }
        }
示例#16
0
        public EditEquipe(Usuario usuarioLogado, EquipeCompeticao equipe, Competicao competicao)
        {
            InitializeComponent();

            CenterToScreen();

            this.usuarioLogado = usuarioLogado;

            this.equipe     = equipe;
            this.competicao = competicao;

            Text += " - " + equipe.codigo + " - " + equipe.nome;

            windowMode = Utilidades.WindowMode.ModoNormal;
            windowModeChanged();
        }
示例#17
0
        public void RealizarCompeticao_ListaCom8Itens_ViceCampeao()
        {
            var filmes = new List <Filme>(8);

            filmes.Add(new Filme("1", "Os Incríveis 2", 2000, 8.5M));
            filmes.Add(new Filme("2", "Jurassic World: Reino Ameaçado", 2000, 6.7M));
            filmes.Add(new Filme("3", "Oito Mulheres e um Segredo", 2000, 6.3M));
            filmes.Add(new Filme("4", "Hereditário", 2000, 7.8M));
            filmes.Add(new Filme("5", "Vingadores: Guerra Infinita", 2000, 8.8M));
            filmes.Add(new Filme("6", "Deadpool 2", 2000, 8.1M));
            filmes.Add(new Filme("7", "Han Solo: Uma História Star Wars", 2000, 7.2M));
            filmes.Add(new Filme("8", "Thor: Ragnarok", 2000, 7.9M));

            var competicao = new Competicao(filmes);
            var resultado  = competicao.RealizarCompeticao();

            Assert.Equal("Os Incríveis 2", resultado.ViceCampeao.Titulo);
        }
示例#18
0
        public EquipeCompeticao criaEquipe(string codigo, string nome, Competicao competicao = null)
        {
            string myString = "";

            Equipe equipe = new Equipe(codigo, nome);

            EquipeRepositorio.Instance.insert(ref equipe, ref myString);

            if (!(competicao is null))
            {
                CompeticaoRepositorio.Instance.insertEquipeEmCompeticao(competicao.id, equipe);
                EquipeCompeticao equipeCompeticao = new EquipeCompeticao(equipe.codigo, equipe.nome, null, null);
                equipeCompeticao.id = equipe.id;
                return(equipeCompeticao);
            }

            return(null);
        }
示例#19
0
        public SetArbitro(Usuario usuarioLogado, Competicao competicao, Competicao_Partida partida)
        {
            InitializeComponent();

            CenterToScreen();

            this.usuarioLogado = usuarioLogado;
            this.competicao    = competicao;
            this.partida       = partida;

            arbitros = CompeticaoRepositorio.Instance.getArbitroPorCompeticao(competicao.id);
            if (arbitros is null)
            {
                MessageBox.Show("Houve um erro ao tentar listar os registros." + Environment.NewLine + Environment.NewLine + errorMessage, "Contate o Suporte técnico", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            arbitros_view = new List <Cargo>(arbitros);

            Text += String.Format(" - {0} - {1} | {2} ", partida.equipe1.nome, partida.equipe2.nome, (partida.data is null? "" : ((DateTime)partida.data).ToString("dd/MM/yyyy")));

            windowMode = Utilidades.WindowMode.ModoNormal;
            windowModeChanged();
        }
示例#20
0
 public void AddCompetidores(Competicao compet)
 {
     context.Competicao.Add(compet);
     context.SaveChanges();
 }
示例#21
0
        public static Competicao_Partida importarPlanilha(Competicao competicao, Competicao_Partida partida)
        {
            string       stringLine;
            StreamReader file = null;

            try {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.Filter   = "CSV|*.csv";
                openFileDialog.Title    = String.Format("{0} - {1} x {2} - Importe a planilha para a partida", competicao.nome, partida.equipe1.nome, partida.equipe2.nome);
                openFileDialog.FileName = String.Format("{0} - {1} x {2}", competicao.nome, partida.equipe1.nome, partida.equipe2.nome);
                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    // Lê o arquivo
                    file = new StreamReader(openFileDialog.FileName);

                    int numLinha = 0;

                    // Atletas suspensos
                    List <Competicao_Suspensao> atletas_Suspensos_Equipe1 = CompeticaoRepositorio.Instance.getSuspensoesPorEquipe(competicao.id, partida.equipe1.id);
                    List <Competicao_Suspensao> atletas_Suspensos_Equipe2 = CompeticaoRepositorio.Instance.getSuspensoesPorEquipe(competicao.id, partida.equipe2.id);

                    // Lê linha por linha
                    while ((stringLine = file.ReadLine()) != null)
                    {
                        // Separa a linha toda num array
                        List <string> line = stringLine.Split(';').ToList();

                        switch (numLinha)
                        {
                        case 1:     // Linha do id da competição
                            if (Convert.ToInt32(line[0]) != competicao.id)
                            {
                                throw new Exception(String.Format("{0} x {1} - Não foi possível importar a planilha da partida" +
                                                                  Environment.NewLine + Environment.NewLine + "O id da Competição na planilha ({2}) está diferente do id da competição({3}).",
                                                                  partida.equipe1.nome, partida.equipe2.nome, line[0], competicao.id));
                            }
                            break;

                        case 4:     // Linha do id da partida
                            if (Convert.ToInt32(line[0]) != partida.id)
                            {
                                throw new Exception(String.Format("{0} x {1} - Não foi possível importar a planilha da partida" +
                                                                  Environment.NewLine + Environment.NewLine + "O id da partida na planilha ({2}) está diferente do id da partida ({3}).",
                                                                  partida.equipe1.nome, partida.equipe2.nome, line[0], partida.id));
                            }
                            break;

                        case 13:     // Linha do id das equipes
                            if (Convert.ToInt32(line[0]) != partida.equipe1.id)
                            {
                                throw new Exception(String.Format("{0} x {1} - Não foi possível importar a planilha da partida" +
                                                                  Environment.NewLine + Environment.NewLine + "O id da equipe 1 na planilha ({2}) está diferente do id da equipe 1 ({3}).",
                                                                  partida.equipe1.nome, partida.equipe2.nome, line[0], partida.equipe1.id));
                            }

                            if (Convert.ToInt32(line[3]) != partida.equipe2.id)
                            {
                                throw new Exception(String.Format("{0} x {1} - Não foi possível importar a planilha da partida" +
                                                                  Environment.NewLine + Environment.NewLine + "O id da equipe 2 na planilha ({2}) está diferente do id da equipe 2 ({3}).",
                                                                  partida.equipe1.nome, partida.equipe2.nome, line[3], partida.equipe2.id));
                            }
                            break;

                        default:
                            if (numLinha >= 16 && line.Count == 17)
                            {
                                List <string> infoEquipe1 = line.GetRange(0, 7);
                                List <string> infoEquipe2 = line.GetRange(9, 7);

                                Atleta atletaEquipe1, atletaEquipe2;

                                if (infoEquipe1[0].Length == 0 && infoEquipe2[0].Length == 0)
                                {
                                    throw new Exception(String.Format("Não foi identificado o id dos jogadores na linha {0} da planilha.", numLinha + 1));
                                }

                                if (infoEquipe1[0].Length > 0)
                                {
                                    atletaEquipe1 = PessoaRepositorio.Instance.getAtletaByCompeticao(Convert.ToInt32(infoEquipe1[0]), competicao.id);

                                    if (partida.equipe1.atletas.Find(find => find.pessoa.id == atletaEquipe1.pessoa.id) is null)
                                    {
                                        // Inconsistencia
                                        throw new Exception();
                                    }

                                    // Verifica se o atleta não está suspenso
                                    if (atletas_Suspensos_Equipe1.Find(find => find.atleta.pessoa.id == atletaEquipe1.pessoa.id) is null)
                                    {
                                        // Cria os eventos da Equipe 1
                                        int numGols1, numGolsPenalti1, numCA1, numCV1;
                                        numGols1        = Convert.ToInt32(infoEquipe1[3]);
                                        numGolsPenalti1 = Convert.ToInt32(infoEquipe1[4]);
                                        numCA1          = Convert.ToInt32(infoEquipe1[5]);
                                        numCV1          = Convert.ToInt32(infoEquipe1[6]);
                                        for (int iCount = 0; iCount < numGols1; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe1, atletaEquipe1, tpEventoEnum.Gol));
                                        }

                                        for (int iCount = 0; iCount < numGolsPenalti1; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe1, atletaEquipe1, tpEventoEnum.Gol_Penalti));
                                        }

                                        for (int iCount = 0; iCount < numCA1; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe1, atletaEquipe1, tpEventoEnum.CartaoAmarelo));
                                        }

                                        for (int iCount = 0; iCount < numCV1; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe1, atletaEquipe1, tpEventoEnum.CartaoVermelho));
                                        }
                                    }
                                }

                                if (infoEquipe2[0].Length > 0)
                                {
                                    atletaEquipe2 = PessoaRepositorio.Instance.getAtletaByCompeticao(Convert.ToInt32(infoEquipe2[0]), competicao.id);

                                    if (partida.equipe2.atletas.Find(find => find.pessoa.id == atletaEquipe2.pessoa.id) is null)
                                    {
                                        // Inconsitencia
                                        throw new Exception();
                                    }

                                    // Verifica se o atleta não está suspenso
                                    if (atletas_Suspensos_Equipe2.Find(find => find.atleta.pessoa.id == atletaEquipe2.pessoa.id) is null)
                                    {
                                        // Cria os eventos da Equipe 2
                                        int numGols2, numGolsPenalti2, numCA2, numCV2;
                                        numGols2        = Convert.ToInt32(infoEquipe2[3]);
                                        numGolsPenalti2 = Convert.ToInt32(infoEquipe2[4]);
                                        numCA2          = Convert.ToInt32(infoEquipe2[5]);
                                        numCV2          = Convert.ToInt32(infoEquipe2[6]);
                                        for (int iCount = 0; iCount < numGols2; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe2, atletaEquipe2, tpEventoEnum.Gol));
                                        }

                                        for (int iCount = 0; iCount < numGolsPenalti2; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe2, atletaEquipe2, tpEventoEnum.Gol_Penalti));
                                        }

                                        for (int iCount = 0; iCount < numCA2; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe2, atletaEquipe2, tpEventoEnum.CartaoAmarelo));
                                        }

                                        for (int iCount = 0; iCount < numCV2; iCount++)
                                        {
                                            partida.eventos.Add(new Competicao_Partida_Evento(partida.equipe2, atletaEquipe2, tpEventoEnum.CartaoVermelho));
                                        }
                                    }
                                }
                            }
                            break;
                        }

                        numLinha++;
                    }

                    file.Close();
                }

                // Insere efetivamente os eventos no banco de dados
                for (int iCount = 0; iCount < partida.eventos.Count; iCount++)
                {
                    CompeticaoRepositorio.Instance.insertEvento(ref partida, partida.eventos[iCount]);
                }

                return(partida);
            } catch (Exception ex) {
                partida.eventos = new List <Competicao_Partida_Evento>();

                if (!(file is null))
                {
                    file.Close();
                }

                MessageBox.Show(ex.Message,
                                String.Format("Não foi possível importar a planilha da partida entre {0} e {1}", partida.equipe1.nome, partida.equipe2.nome),
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);

                return(null);
            }
        }
示例#22
0
        static void Main(string[] args)
        {
            var competicao = new Competicao()
            {
                Nome = "Copa do mundo 2018",
            };

            var participantes = new List <Participante>
            {
                new Participante {
                    Nome = "Rússia"
                },
                new Participante {
                    Nome = "Arábia Saudita"
                },
                new Participante {
                    Nome = "Egito"
                },
                new Participante {
                    Nome = "Uruguai"
                },
                new Participante {
                    Nome = "Brasil"
                },
                new Participante {
                    Nome = "Suiça"
                },
            };

            var primeiraRodada = new Agrupamento {
                Nome = "1 rodada"
            };
            var grupoA = new Agrupamento {
                Nome = "Grupo A"
            };
            var grupoE = new Agrupamento {
                Nome = "Grupo E"
            };

            var eventosCopaPrimeiraRodada = new List <Evento>
            {
                new Evento
                {
                    Competicao    = competicao,
                    Participantes = new List <EventoParticipante>
                    {
                        new EventoParticipante {
                            Participante = participantes[0]
                        },
                        new EventoParticipante {
                            Participante = participantes[1]
                        },
                    },
                    //Agrupamentos = new List<Agrupamento>
                    //{
                    //    primeiraRodada,
                    //    grupoA,
                    //},
                    Horario     = new DateTime(2018, 6, 14, 12, 0, 0),
                    Localizacao = "Olímpico Lujniki",
                },
                new Evento
                {
                    Competicao    = competicao,
                    Participantes = new List <EventoParticipante>
                    {
                        new EventoParticipante {
                            Participante = participantes[2]
                        },
                        new EventoParticipante {
                            Participante = participantes[3]
                        },
                    },
                    //Agrupamentos = new List<Agrupamento>
                    //{
                    //    primeiraRodada,
                    //    grupoA,
                    //},
                    Horario     = new DateTime(2018, 6, 15, 9, 0, 0),
                    Localizacao = "Ecaterimburgo",
                },
                new Evento
                {
                    Competicao    = competicao,
                    Participantes = new List <EventoParticipante>
                    {
                        new EventoParticipante {
                            Participante = participantes[4]
                        },
                        new EventoParticipante {
                            Participante = participantes[5]
                        },
                    },
                    //Agrupamentos = new List<Agrupamento>
                    //{
                    //    primeiraRodada,
                    //    grupoE,
                    //},
                    Horario     = new DateTime(2018, 6, 17, 15, 0, 0),
                    Localizacao = "Rostov",
                },
            };

            foreach (var evento in eventosCopaPrimeiraRodada)
            {
            }

            var regraTudo = new RegraAcerto {
                Nome = "Acertou tudo", Pontos = 4,
            };
            var regraEmpate = new RegraAcerto {
                Nome = "Acertou empate", Pontos = 2,
            };
            var regraVencedor = new RegraAcerto {
                Nome = "Acertou vencedor", Pontos = 1,
            };

            var palpites = new PalpiteEvento
            {
                Evento   = eventosCopaPrimeiraRodada[0],
                Palpites = new List <PalpiteParticipante>
                {
                    //new PalpiteParticipante { Participante = participantes[0], PalpiteValor = 3, },
                    //new PalpiteParticipante { Participante = participantes[1], PalpiteValor = 1, },
                }
            };
        }
示例#23
0
        private void btnIncluirTestes_Click(object sender, EventArgs e)
        {
            new Thread(() =>
            {
                Thread.CurrentThread.IsBackground = true;

                // Cria os treinadores, representantes e as equipes de competicao
                Pessoa treinador;
                Pessoa representante;

                string myString = "";

                // Cria as equipes e os atletas
                Equipe equipe;
                EquipeCompeticao equipeCompeticao;
                Cargo cargoTreinador, cargoRepresentante;
                Atleta atleta;

                Competicao competicao;

                funcoes     = FuncaoRepositorio.Instance.get();
                modalidades = ModalidadeRepositorio.Instance.get();

                // Cria a competição
                Modalidade modalidade = modalidades.Find(modalidadeAEncontrar => modalidadeAEncontrar.descricao.ToUpper().Equals("FUTSAL"));

                competicao                          = new Competicao("Municipal", new DateTime(2014, 06, 01), modalidade);
                competicao.dataFinal                = new DateTime(2018, 07, 01);
                competicao.jogosIdaEVolta           = false;
                competicao.jogosIdaEVolta_FaseFinal = false;
                competicao.faseFinal                = FaseFinalEnum._4_QuartasFinal;
                competicao.nomesGrupos              = NomesGruposEnum._0_PorNumeracao;
                competicao.numGrupos                = 2;
                competicao.numTimes                 = 12;
                competicao.status                   = StatusEnum._1_Aberta;
                competicao.numMinimoJogadores       = 5;
                competicao.arbitros                 = new List <Cargo>();
                competicao.tpSuspensao              = SuspensaoEnum._2_3CA_1Jogo_3CAe1CV_2Jogos;
                competicao.zerarCartoesFaseFinal    = true;
                CompeticaoRepositorio.Instance.insert(ref competicao, ref myString);

                // Cria a equipe do Brasil - Virou Bar sem lona
                equipeCompeticao = criaEquipe("BSL", "Bar sem Lona", competicao);

                // Cria os atletas do Brasil - Virou Bar sem lona
                criaAtleta("99972041077", "Jefferson", 1, equipeCompeticao, competicao);
                criaAtleta("89233100006", "Daniel", 2, equipeCompeticao, competicao);
                criaAtleta("06517774025", "Thiago", 3, equipeCompeticao, competicao);
                criaAtleta("22587513065", "David", 4, equipeCompeticao, competicao);
                criaAtleta("15169928068", "Fernandinho", 5, equipeCompeticao, competicao);
                criaAtleta("40187484503", "Marcelo", 6, equipeCompeticao, competicao);
                criaAtleta("52030240494", "Hulk Magrelo", 7, equipeCompeticao, competicao);
                criaAtleta("54015067673", "Paulinho", 8, equipeCompeticao, competicao);
                criaAtleta("35331412254", "Frederico", 9, equipeCompeticao, competicao);
                criaAtleta("01426201575", "Gabriel", 10, equipeCompeticao, competicao);
                criaAtleta("77730243083", "Oscar", 11, equipeCompeticao, competicao);
                criaAtleta("32638865842", "Julio Cesar", 12, equipeCompeticao, competicao);
                criaAtleta("17105184213", "Dante", 13, equipeCompeticao, competicao);
                criaAtleta("07407243395", "Maxw", 14, equipeCompeticao, competicao);
                criaAtleta("87304342200", "Henrique", 15, equipeCompeticao, competicao);
                criaAtleta("77707537246", "Ramires", 16, equipeCompeticao, competicao);
                criaAtleta("53578084735", "Luiz Gustavo", 17, equipeCompeticao, competicao);
                criaAtleta("50187045780", "Lopes", 18, equipeCompeticao, competicao);

                // Cria a comissão técnica do Brasil - Virou Bar sem lona
                criaTreinador("37280137229", "Marcelao", equipeCompeticao, competicao);
                criaRepresentante("65370480796", "Michel", equipeCompeticao, competicao);


                // Cria a equipe do Alemanha - Virou Real Madruga
                equipeCompeticao = criaEquipe("RLM", "Real Madruga", competicao);

                //Cria as pessoas da Alemanha
                criaAtleta("45677262196", "Nilton", 1, equipeCompeticao, competicao);
                criaAtleta("76810742875", "Gin", 2, equipeCompeticao, competicao);
                criaAtleta("38234011812", "Helinho", 3, equipeCompeticao, competicao);
                criaAtleta("76021377109", "Humberto", 4, equipeCompeticao, competicao);
                criaAtleta("02181680639", "Kaio", 5, equipeCompeticao, competicao);
                criaAtleta("64658660806", "Souza", 6, equipeCompeticao, competicao);
                criaAtleta("48047427601", "Orson", 7, equipeCompeticao, competicao);
                criaAtleta("53243463300", "Silva", 8, equipeCompeticao, competicao);
                criaAtleta("32476830542", "Polaco", 9, equipeCompeticao, competicao);
                criaAtleta("76462344865", "Kleber", 10, equipeCompeticao, competicao);
                criaAtleta("86532854310", "Zinho", 11, equipeCompeticao, competicao);
                criaAtleta("81422468135", "Maicon", 12, equipeCompeticao, competicao);
                criaAtleta("42177624886", "Diego", 13, equipeCompeticao, competicao);
                criaAtleta("48135780710", "Dom", 14, equipeCompeticao, competicao);
                criaAtleta("63200223456", "Lan", 15, equipeCompeticao, competicao);
                criaAtleta("67152361193", "Milton", 16, equipeCompeticao, competicao);
                criaAtleta("11375087606", "Luciao", 17, equipeCompeticao, competicao);
                criaAtleta("64441558600", "Gabrielzinho", 18, equipeCompeticao, competicao);

                criaTreinador("71005721858", "Joachim", equipeCompeticao, competicao);
                criaRepresentante("36037846502", "Frank", equipeCompeticao, competicao);


                // Cria a equipe do Inglaterra
                equipeCompeticao = criaEquipe("BIG", "Bigode Grosso", competicao);

                // Cria as pessoas da Inglaterra
                criaAtleta("53101543533", "Alan", 1, equipeCompeticao, competicao);
                criaAtleta("06442443051", "Juninho", 2, equipeCompeticao, competicao);
                criaAtleta("13074475030", "Bento", 3, equipeCompeticao, competicao);
                criaAtleta("41474884717", "Gustavo", 4, equipeCompeticao, competicao);
                criaAtleta("36184610899", "Chiquinho", 5, equipeCompeticao, competicao);
                criaAtleta("52241328600", "Junior", 6, equipeCompeticao, competicao);
                criaAtleta("44040807359", "Lipao", 7, equipeCompeticao, competicao);
                criaAtleta("67548035500", "Leandro", 8, equipeCompeticao, competicao);
                criaAtleta("06301503708", "Peu", 9, equipeCompeticao, competicao);
                criaAtleta("23687262251", "Diego", 10, equipeCompeticao, competicao);
                criaAtleta("60706348290", "Joao", 11, equipeCompeticao, competicao);
                criaAtleta("43773311400", "Pixoxo", 12, equipeCompeticao, competicao);
                criaAtleta("72534801635", "Danilo", 13, equipeCompeticao, competicao);
                criaAtleta("07602781210", "Murilo", 14, equipeCompeticao, competicao);
                criaAtleta("25230318686", "Jonas", 15, equipeCompeticao, competicao);
                criaAtleta("27865808380", "Pedro", 16, equipeCompeticao, competicao);
                criaAtleta("87255716130", "Raphael", 17, equipeCompeticao, competicao);
                criaAtleta("83285786540", "Gilberto", 18, equipeCompeticao, competicao);

                criaTreinador("26208166454", "Carlos", equipeCompeticao, competicao);
                criaRepresentante("56264767336", "Carlinhos", equipeCompeticao, competicao);


                // Cria a equipe do Japão
                equipeCompeticao = criaEquipe("AS", "Água Santa", competicao);

                // Cria as pessoas da Japão
                criaAtleta("48735155566", "Beto", 1, equipeCompeticao, competicao);
                criaAtleta("12255853841", "Dario", 2, equipeCompeticao, competicao);
                criaAtleta("40373707274", "Caio", 3, equipeCompeticao, competicao);
                criaAtleta("52884778250", "Damiao", 4, equipeCompeticao, competicao);
                criaAtleta("62524737314", "Motta", 5, equipeCompeticao, competicao);
                criaAtleta("23686424550", "Celso", 6, equipeCompeticao, competicao);
                criaAtleta("82187374807", "Anderson", 7, equipeCompeticao, competicao);
                criaAtleta("60787720232", "Manoel", 8, equipeCompeticao, competicao);
                criaAtleta("03744083608", "Balotelli", 9, equipeCompeticao, competicao);
                criaAtleta("11263205100", "Cassiano", 10, equipeCompeticao, competicao);
                criaAtleta("24703118025", "Glauber", 11, equipeCompeticao, competicao);
                criaAtleta("18766844886", "Sergio", 12, equipeCompeticao, competicao);
                criaAtleta("47518514893", "Periquito", 13, equipeCompeticao, competicao);
                criaAtleta("72244722120", "Aquiles", 14, equipeCompeticao, competicao);
                criaAtleta("34423110717", "Borota", 15, equipeCompeticao, competicao);
                criaAtleta("14086755521", "De Rossi", 16, equipeCompeticao, competicao);
                criaAtleta("16077427640", "Italo", 17, equipeCompeticao, competicao);
                criaAtleta("46604718026", "Paulo", 18, equipeCompeticao, competicao);

                criaTreinador("60371558018", "Cesar", equipeCompeticao, competicao);
                criaRepresentante("12561048500", "Sergio", equipeCompeticao, competicao);


                // Cria a equipe do Argentina
                equipeCompeticao = criaEquipe("APP", "Atlético Paineiras", competicao);

                // Cria as pessoas da Argentina
                criaAtleta("78341182343", "Romero", 1, equipeCompeticao, competicao);
                criaAtleta("63157165046", "Gaston", 2, equipeCompeticao, competicao);
                criaAtleta("30867800020", "Lazinho", 3, equipeCompeticao, competicao);
                criaAtleta("10034140875", "Teobaldo", 4, equipeCompeticao, competicao);
                criaAtleta("34234114731", "Gago", 5, equipeCompeticao, competicao);
                criaAtleta("07318175750", "Big Phil", 6, equipeCompeticao, competicao);
                criaAtleta("46755738352", "Di María", 7, equipeCompeticao, competicao);
                criaAtleta("33126638147", "Perez", 8, equipeCompeticao, competicao);
                criaAtleta("27405236294", "Porco", 9, equipeCompeticao, competicao);
                criaAtleta("33717263803", "Mazinho", 10, equipeCompeticao, competicao);
                criaAtleta("55568758204", "Maxi", 11, equipeCompeticao, competicao);
                criaAtleta("02825665380", "Roberto", 12, equipeCompeticao, competicao);
                criaAtleta("67781150090", "Fernandez", 13, equipeCompeticao, competicao);
                criaAtleta("56120684336", "Mascherano", 14, equipeCompeticao, competicao);
                criaAtleta("61361561130", "Demi Maia", 15, equipeCompeticao, competicao);
                criaAtleta("15743310432", "Ruiz", 16, equipeCompeticao, competicao);
                criaAtleta("88433361503", "Palacio", 17, equipeCompeticao, competicao);
                criaAtleta("05426170215", "Almeida", 18, equipeCompeticao, competicao);

                criaTreinador("11033454273", "Jorge", equipeCompeticao, competicao);
                criaRepresentante("46225256580", "Mauricio", equipeCompeticao, competicao);


                // Cria a equipe do Espanha
                equipeCompeticao = criaEquipe("OJC", "O Jegue da Chapada", competicao);

                // Cria as pessoas da Espanha
                criaAtleta("81422072576", "Caio", 1, equipeCompeticao, competicao);
                criaAtleta("67568660796", "Almeida", 2, equipeCompeticao, competicao);
                criaAtleta("85217821361", "Peru", 3, equipeCompeticao, competicao);
                criaAtleta("44773016000", "Martin", 4, equipeCompeticao, competicao);
                criaAtleta("82046703464", "Josefe", 5, equipeCompeticao, competicao);
                criaAtleta("40430738528", "Iniesta", 6, equipeCompeticao, competicao);
                criaAtleta("11443800147", "Vinicius", 7, equipeCompeticao, competicao);
                criaAtleta("71770753486", "Chaves", 8, equipeCompeticao, competicao);
                criaAtleta("31776527321", "Téo", 9, equipeCompeticao, competicao);
                criaAtleta("01140084429", "Fernando", 10, equipeCompeticao, competicao);
                criaAtleta("63271337110", "Pedro", 11, equipeCompeticao, competicao);
                criaAtleta("13437483137", "Danilo", 12, equipeCompeticao, competicao);
                criaAtleta("44684506657", "Marquinhos", 13, equipeCompeticao, competicao);
                criaAtleta("04821246287", "Leonardo", 14, equipeCompeticao, competicao);
                criaAtleta("50058372806", "Sergio", 15, equipeCompeticao, competicao);
                criaAtleta("21313752045", "Bebe", 16, equipeCompeticao, competicao);
                criaAtleta("20768051177", "Oliver", 17, equipeCompeticao, competicao);
                criaAtleta("64787581414", "Romero", 18, equipeCompeticao, competicao);

                criaTreinador("00600512800", "Julio", equipeCompeticao, competicao);
                criaRepresentante("67067024633", "Mariano", equipeCompeticao, competicao);


                // Cria a equipe do Holanda
                equipeCompeticao = criaEquipe("BW", "Bairro Willians", competicao);

                // Cria as pessoas da Holanda
                criaAtleta("28615184640", "Cesar", 1, equipeCompeticao, competicao);
                criaAtleta("21861618697", "Vitor", 2, equipeCompeticao, competicao);
                criaAtleta("60646342860", "Dilsinho", 3, equipeCompeticao, competicao);
                criaAtleta("24405366608", "Ignacio", 4, equipeCompeticao, competicao);
                criaAtleta("54106284111", "Batoré", 5, equipeCompeticao, competicao);
                criaAtleta("33811653210", "Gustavinho", 6, equipeCompeticao, competicao);
                criaAtleta("85487615209", "Johannes", 7, equipeCompeticao, competicao);
                criaAtleta("22785276655", "Julio", 8, equipeCompeticao, competicao);
                criaAtleta("03887376200", "Vinicius", 9, equipeCompeticao, competicao);
                criaAtleta("47377336013", "Serginho", 10, equipeCompeticao, competicao);
                criaAtleta("34602708536", "Xoxo", 11, equipeCompeticao, competicao);
                criaAtleta("17231566391", "Pedro", 12, equipeCompeticao, competicao);
                criaAtleta("74028554306", "Liminha", 13, equipeCompeticao, competicao);
                criaAtleta("07771220495", "Miron", 14, equipeCompeticao, competicao);
                criaAtleta("00368862704", "Juliano", 15, equipeCompeticao, competicao);
                criaAtleta("08234616455", "Bruno", 16, equipeCompeticao, competicao);
                criaAtleta("61871756626", "Marcio", 17, equipeCompeticao, competicao);
                criaAtleta("58608423332", "Oliveira", 18, equipeCompeticao, competicao);

                criaTreinador("88888888888", "Ronald", equipeCompeticao, competicao);
                criaRepresentante("88888888880", "Guilherme Alexandre", equipeCompeticao, competicao);


                // Cria a equipe do França
                equipeCompeticao = criaEquipe("TIG", "Tigers", competicao);

                // Cria as pessoas da França
                criaAtleta("88558273405", "Luiz", 1, equipeCompeticao, competicao);
                criaAtleta("32277365270", "Danilo", 2, equipeCompeticao, competicao);
                criaAtleta("20875544207", "Evandro", 3, equipeCompeticao, competicao);
                criaAtleta("74613558212", "Vinicius", 4, equipeCompeticao, competicao);
                criaAtleta("55318634460", "Souza", 5, equipeCompeticao, competicao);
                criaAtleta("48742517060", "Caio", 6, equipeCompeticao, competicao);
                criaAtleta("63708110099", "Luizinho", 7, equipeCompeticao, competicao);
                criaAtleta("71403367337", "Portuga", 8, equipeCompeticao, competicao);
                criaAtleta("28805043761", "Gian", 9, equipeCompeticao, competicao);
                criaAtleta("16702150830", "Badu", 10, equipeCompeticao, competicao);
                criaAtleta("41840167238", "Gerson", 11, equipeCompeticao, competicao);
                criaAtleta("72105785280", "Matheus", 12, equipeCompeticao, competicao);
                criaAtleta("88577035093", "Brener", 13, equipeCompeticao, competicao);
                criaAtleta("38023285076", "Marcos", 14, equipeCompeticao, competicao);
                criaAtleta("72518826203", "Nilton", 15, equipeCompeticao, competicao);
                criaAtleta("03723458165", "Rodolfinho", 16, equipeCompeticao, competicao);
                criaAtleta("40641653735", "Do", 17, equipeCompeticao, competicao);
                criaAtleta("51458410358", "Junior", 18, equipeCompeticao, competicao);

                criaTreinador("02721281399", "Diogo", equipeCompeticao, competicao);
                criaRepresentante("17220074271", "Emmanuel", equipeCompeticao, competicao);


                // Cria a equipe do Camarões
                equipeCompeticao = criaEquipe("RED", "Leão Vermelhos", competicao);

                // Cria os atletas do Camarões
                criaAtleta("03138834671", "Felipe", 1, equipeCompeticao, competicao);
                criaAtleta("03138326709", "Alvaro", 2, equipeCompeticao, competicao);
                criaAtleta("37183873102", "Rogerio", 3, equipeCompeticao, competicao);
                criaAtleta("10647041669", "Djair", 4, equipeCompeticao, competicao);
                criaAtleta("40830672508", "Nilson", 5, equipeCompeticao, competicao);
                criaAtleta("76427726293", "Song", 6, equipeCompeticao, competicao);
                criaAtleta("48022277525", "Narciso", 7, equipeCompeticao, competicao);
                criaAtleta("23655426461", "Matheus", 8, equipeCompeticao, competicao);
                criaAtleta("04730452143", "Evandro", 9, equipeCompeticao, competicao);
                criaAtleta("35757467614", "Anselomo", 10, equipeCompeticao, competicao);
                criaAtleta("66536670221", "Reinaldo", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do Camarões
                criaTreinador("22672133115", "Vollu", equipeCompeticao, competicao);
                criaRepresentante("50361627572", "Michel", equipeCompeticao, competicao);


                // Cria a equipe do Croácia
                equipeCompeticao = criaEquipe("MAG", "Margarita Futebol Clube", competicao);

                // Cria os atletas do Croácia
                criaAtleta("06437263733", "Paulo", 1, equipeCompeticao, competicao);
                criaAtleta("75486152809", "Vitinho", 2, equipeCompeticao, competicao);
                criaAtleta("22655751515", "Pirulito", 3, equipeCompeticao, competicao);
                criaAtleta("25335077840", "Seba", 4, equipeCompeticao, competicao);
                criaAtleta("74251577213", "Carlinhos", 5, equipeCompeticao, competicao);
                criaAtleta("03284337644", "Lorenzo", 6, equipeCompeticao, competicao);
                criaAtleta("04854288736", "Rato", 7, equipeCompeticao, competicao);
                criaAtleta("04361866759", "João Paulo", 8, equipeCompeticao, competicao);
                criaAtleta("23533852300", "Matheuzinho", 9, equipeCompeticao, competicao);
                criaAtleta("63243410622", "Guidaum", 10, equipeCompeticao, competicao);
                criaAtleta("38586833029", "Srna", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do Croácia
                criaTreinador("27401734150", "Niko", equipeCompeticao, competicao);
                criaRepresentante("27145547848", "Kiko", equipeCompeticao, competicao);


                // Cria a equipe do México
                equipeCompeticao = criaEquipe("Fen", "Fenomenautas FC", competicao);

                // Cria os atletas do México
                criaAtleta("88852601368", "Corona", 1, equipeCompeticao, competicao);
                criaAtleta("82582310492", "Rodriguez", 2, equipeCompeticao, competicao);
                criaAtleta("03616318807", "Souza", 3, equipeCompeticao, competicao);
                criaAtleta("63450333321", "Márquez", 4, equipeCompeticao, competicao);
                criaAtleta("18858017420", "Reyes", 5, equipeCompeticao, competicao);
                criaAtleta("03210566712", "Herrera", 6, equipeCompeticao, competicao);
                criaAtleta("61608000869", "Layun", 7, equipeCompeticao, competicao);
                criaAtleta("57526480170", "Fabiano", 8, equipeCompeticao, competicao);
                criaAtleta("81745654186", "Jimenez", 9, equipeCompeticao, competicao);
                criaAtleta("10836704681", "Giovanni Santos", 10, equipeCompeticao, competicao);
                criaAtleta("15408238814", "Pepita", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do México
                criaTreinador("87075850393", "Miguel", equipeCompeticao, competicao);
                criaRepresentante("15704868320", "Luis", equipeCompeticao, competicao);


                // Cria a equipe do Austrália
                equipeCompeticao = criaEquipe("SJ", "São José FC", competicao);

                // Cria os atletas do Austrália
                criaAtleta("48687235887", "Ryan", 1, equipeCompeticao, competicao);
                criaAtleta("40816614210", "Fransergio", 2, equipeCompeticao, competicao);
                criaAtleta("88027405858", "Davidon", 3, equipeCompeticao, competicao);
                criaAtleta("62784753328", "Caio Martins", 4, equipeCompeticao, competicao);
                criaAtleta("74048031449", "Mil", 5, equipeCompeticao, competicao);
                criaAtleta("80618508180", "Kiko", 6, equipeCompeticao, competicao);
                criaAtleta("47634623180", "Leandro", 7, equipeCompeticao, competicao);
                criaAtleta("76214517425", "Bruno", 8, equipeCompeticao, competicao);
                criaAtleta("81330410157", "Tomas", 9, equipeCompeticao, competicao);
                criaAtleta("40864635125", "Joselito", 10, equipeCompeticao, competicao);
                criaAtleta("17303015337", "Oscar", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do Austrália
                criaTreinador("66184237160", "Angelo", equipeCompeticao, competicao);
                criaRepresentante("56162856330", "Lula", equipeCompeticao, competicao);


                // Cria a equipe do Chile
                // equipeCompeticao = criaEquipe("Chi", "Chile", competicao);

                // Cria os atletas do Chile
                //criaAtleta("00828557810", "Bravo", 1, equipeCompeticao, competicao);
                //criaAtleta("38263752205", "Mena", 2, equipeCompeticao, competicao);
                //criaAtleta("65771566705", "Albornoz", 3, equipeCompeticao, competicao);
                //criaAtleta("50461231000", "Isla", 4, equipeCompeticao, competicao);
                //criaAtleta("68785273171", "Silva", 5, equipeCompeticao, competicao);
                //criaAtleta("10583610587", "Carmina", 6, equipeCompeticao, competicao);
                //criaAtleta("14681847682", "Sanchez", 7, equipeCompeticao, competicao);
                //criaAtleta("65002760350", "Vidal", 8, equipeCompeticao, competicao);
                //criaAtleta("85576345797", "Pinilla", 9, equipeCompeticao, competicao);
                //criaAtleta("14543783018", "Valdivia", 10, equipeCompeticao, competicao);
                //criaAtleta("77523111467", "Vargas", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do Chile
                //criaTreinador("87204753496", "Jorge Sampaoli", equipeCompeticao, competicao);
                //criaRepresentante("77736281572", "Michel Temer", equipeCompeticao, competicao);


                // Cria a equipe do Colombia
                //equipeCompeticao = criaEquipe("Col", "Colombia", competicao);

                // Cria os atletas do Colombia
                //criaAtleta("77655517606", "Ospina", 1, equipeCompeticao, competicao);
                //criaAtleta("38757478872", "Zapata", 2, equipeCompeticao, competicao);
                //criaAtleta("03166022643", "Yepes", 3, equipeCompeticao, competicao);
                //criaAtleta("51388164469", "Arias", 4, equipeCompeticao, competicao);
                //criaAtleta("67341348496", "Carbonero", 5, equipeCompeticao, competicao);
                //criaAtleta("34550670347", "Sanchez", 6, equipeCompeticao, competicao);
                //criaAtleta("84524038442", "Armero", 7, equipeCompeticao, competicao);
                //criaAtleta("11576381552", "Aguilar", 8, equipeCompeticao, competicao);
                //criaAtleta("33256713572", "Gutiérrez", 9, equipeCompeticao, competicao);
                //criaAtleta("68377727242", "James", 10, equipeCompeticao, competicao);
                //criaAtleta("21843108593", "Quadrado", 11, equipeCompeticao, competicao);

                //// Cria a comissão técnica do Colombia
                //criaTreinador("28472777570", "José Pékerman", equipeCompeticao, competicao);
                //criaRepresentante("56603530104", "Michel Temer", equipeCompeticao, competicao);


                //// Cria a equipe do Costa do Marfim
                //equipeCompeticao = criaEquipe("CDM", "Costa do Marfim", competicao);

                //// Cria os atletas do Costa do Marfim
                //criaAtleta("02002806004", "Barry", 1, equipeCompeticao, competicao);
                //criaAtleta("85047683842", "Viera", 2, equipeCompeticao, competicao);
                //criaAtleta("61407145320", "Boka", 3, equipeCompeticao, competicao);
                //criaAtleta("08306377532", "K. Touré", 4, equipeCompeticao, competicao);
                //criaAtleta("47056538312", "Zokora", 5, equipeCompeticao, competicao);
                //criaAtleta("07682613254", "Boly", 6, equipeCompeticao, competicao);
                //criaAtleta("27756664426", "Akpa-Akpro", 7, equipeCompeticao, competicao);
                //criaAtleta("02034740238", "Kaliu", 8, equipeCompeticao, competicao);
                //criaAtleta("73101667879", "Tioté", 9, equipeCompeticao, competicao);
                //criaAtleta("01426201575", "Gervinho", 10, equipeCompeticao, competicao);
                //criaAtleta("82823323481", "Droga", 11, equipeCompeticao, competicao);

                // Cria a comissão técnica do Costa do Marfim
                //criaTreinador("13076844083", "Sabri Lamouchi", equipeCompeticao, competicao);
                //criaRepresentante("88268541814", "Michel Temer", equipeCompeticao, competicao);


                //// Cria a equipe do Grécia
                //equipeCompeticao = criaEquipe("Gre", "Grécia", competicao);

                //// Cria os atletas do Grécia
                //criaAtleta("26503783876", "Karnezis", 1, equipeCompeticao, competicao);
                //criaAtleta("36013810877", "Maniatis", 2, equipeCompeticao, competicao);
                //criaAtleta("36075351752", "Tzavelas", 3, equipeCompeticao, competicao);
                //criaAtleta("73854350848", "Manolas", 4, equipeCompeticao, competicao);
                //criaAtleta("51626808007", "Moras", 5, equipeCompeticao, competicao);
                //criaAtleta("16714100841", "Tziolis", 6, equipeCompeticao, competicao);
                //criaAtleta("56621883358", "Samaras", 7, equipeCompeticao, competicao);
                //criaAtleta("52264813300", "Kone", 8, equipeCompeticao, competicao);
                //criaAtleta("48220808110", "Mitroglou", 9, equipeCompeticao, competicao);
                //criaAtleta("21637852207", "Karagounis", 10, equipeCompeticao, competicao);
                //criaAtleta("23335257200", "Vyntra", 11, equipeCompeticao, competicao);

                //// Cria a comissão técnica do Grécia
                //criaTreinador("25014613713", "Fernando Santos", equipeCompeticao, competicao);
                //criaRepresentante("56088252766", "Michel Temer", equipeCompeticao, competicao);

                // Cria os árbitros
                criaArbitro(competicao, "45857133017", "Noumandiez Doué");
                criaArbitro(competicao, "22366188676", "Sandro Ricci");
                criaArbitro(competicao, "75323575034", "Emerson de Carvalho");
                criaArbitro(competicao, "73188654472", "Marcelo Van Gasse");
                criaArbitro(competicao, "65758883565", "Pedro Proença");
                criaArbitro(competicao, "72447750080", "Bertino Miranda");

                MessageBox.Show("Dados de teste criados");
            }).Start();
        }
示例#24
0
        public void criaTreinador(string cpf, string nome, EquipeCompeticao equipeCompeticao = null, Competicao competicao = null)
        {
            string myString = "";

            Pessoa treinador = new Pessoa(cpf, nome, new DateTime(2000, 01, 01));

            treinador.funcoes = funcoes.FindAll(funcao => funcao.codigo == FuncaoRepositorio.Instance.codigoTreinador);

            PessoaRepositorio.Instance.insert(ref treinador, ref myString);

            if ((!(equipeCompeticao is null)) && (!(competicao is null)))
            {
                Cargo cargoTreinador = new Cargo(treinador.id, funcoes.Find(funcao => funcao.codigo.Equals(FuncaoRepositorio.Instance.codigoTreinador)), treinador);

                equipeCompeticao.treinador    = cargoTreinador;
                equipeCompeticao.id_treinador = treinador.id;

                EquipeRepositorio.Instance.updateEquipeCompeticao(equipeCompeticao, competicao);
            }
        }
示例#25
0
        public void criaRepresentante(string cpf, string nome, EquipeCompeticao equipeCompeticao = null, Competicao competicao = null)
        {
            string myString = "";

            Pessoa representante = new Pessoa(cpf, nome, new DateTime(2000, 01, 01));

            representante.funcoes = funcoes.FindAll(funcao => funcao.codigo == FuncaoRepositorio.Instance.codigoRepresentante);

            PessoaRepositorio.Instance.insert(ref representante, ref myString);

            if ((!(equipeCompeticao is null)) && (!(competicao is null)))
            {
                Cargo cargoRepresentante = new Cargo(representante.id, funcoes.Find(funcao => funcao.codigo.Equals(FuncaoRepositorio.Instance.codigoRepresentante)), representante);
                cargoRepresentante.id_pessoa = representante.id;

                equipeCompeticao.representante    = cargoRepresentante;
                equipeCompeticao.id_representante = representante.id;

                EquipeRepositorio.Instance.updateEquipeCompeticao(equipeCompeticao, competicao);
            }
        }
示例#26
0
        public static void exportarPlanilha(Competicao competicao, Competicao_Partida partida)
        {
            StringBuilder conteudoCSV = new StringBuilder();

            // Cabeçalho
            conteudoCSV.AppendLine("idCompeticao;Competicao");                                             // Linha 1
            conteudoCSV.AppendFormat("{0};{1}", competicao.id, competicao.nome).AppendLine().AppendLine(); // Linha 2
            /*  idCompeticao = A2 - [1, 0]   */

            // Partida
            conteudoCSV.AppendLine("idPartida");                                   // Linha 4
            conteudoCSV.AppendFormat("{0}", partida.id).AppendLine().AppendLine(); // Linha 5
            /*  idPartida = A5 - [4, 0]  */

            // Data da partida
            conteudoCSV.AppendLine("dataPartida"); // Linha 7
            if (partida.data is null)
            {
                conteudoCSV.AppendFormat("{0}", "").AppendLine().AppendLine(); // Linha 8
            }
            else
            {
                conteudoCSV.AppendFormat("{0}", ((DateTime)partida.data).ToString("dd/MM/yyyy")).AppendLine().AppendLine(); // Linha 8
            }
            /*  dataPartida = A8 - [7, 0]   */

            // Árbitro
            conteudoCSV.AppendLine("idArbito;Arbitro");                                                                                                                                             // Linha 10
            conteudoCSV.AppendFormat("{0};{1}", (partida.arbitro is null ? 0 : partida.arbitro.pessoa.id), (partida.arbitro is null ? "" : partida.arbitro.pessoa.nome)).AppendLine().AppendLine(); // Linha 11
            /*  idCompeticao = A11 - [10, 0]   */

            // Equipes
            conteudoCSV.AppendLine("idEquipe1;Equipe 1; ;idEquipe2;Equipe 2");                                                                                          // Linha 13
            conteudoCSV.AppendFormat("{0};{1};;{2};{3}", partida.equipe1.id, partida.equipe1.nome, partida.equipe2.id, partida.equipe2.nome).AppendLine().AppendLine(); // Linha 14

            /*  idEquipe1 = A14 - [13, 0]
             *  idEquipe2 = D14 - [13, 3] */
            // Atletas suspensos
            List <Competicao_Suspensao> atletas_Suspensos_Equipe1 = CompeticaoRepositorio.Instance.getSuspensoesPorEquipe(competicao.id, partida.equipe1.id);
            List <Competicao_Suspensao> atletas_Suspensos_Equipe2 = CompeticaoRepositorio.Instance.getSuspensoesPorEquipe(competicao.id, partida.equipe2.id);

            // Atletas
            conteudoCSV.AppendLine("idAtleta;numAtleta;Atleta;Gol;Gol Penalti;Cartao Amarelo;Cartao Vermelho;;;idAtleta;numAtleta;Atleta;Gol;Gol Penalti;Cartao Amarelo;Cartao Vermelho;"); // Linha 16

            int numLinhas = (partida.equipe1.atletas.Count > partida.equipe2.atletas.Count ? partida.equipe1.atletas.Count : partida.equipe2.atletas.Count);

            for (int iCount = 0; iCount < numLinhas; iCount++)
            {
                Atleta atletaEquipe1, atletaEquipe2;
                string atletaSuspenso_Equipe1 = "", atletaSuspenso_Equipe2 = "";

                if (iCount < partida.equipe1.atletas.Count)
                {
                    atletaEquipe1 = partida.equipe1.atletas[iCount];

                    if (!(atletas_Suspensos_Equipe1.Find(find => find.atleta.pessoa.id == atletaEquipe1.pessoa.id) is null))
                    {
                        atletaSuspenso_Equipe1 = "Suspenso";
                    }

                    conteudoCSV.AppendFormat("{0};{1};{2};0;0;0;0;{3};", atletaEquipe1.pessoa.id, atletaEquipe1.numero, atletaEquipe1.pessoa.nome, atletaSuspenso_Equipe1);
                }
                else
                {
                    conteudoCSV.Append(";;;;;;;;");
                }

                /*  idAtleta = A? - [?, 0]
                 *  numeroAtleta = B? - [?, 1]
                 *  Gol = D? - [?, 3]
                 *  Gol Penalti = E? - [?, 4]
                 *  CA = F? - [?, 5]
                 *  CV = G? - [?, 6]
                 */

                conteudoCSV.Append(";");

                if (iCount < partida.equipe2.atletas.Count)
                {
                    atletaEquipe2 = partida.equipe2.atletas[iCount];

                    if (!(atletas_Suspensos_Equipe2.Find(find => find.atleta.pessoa.id == atletaEquipe2.pessoa.id) is null))
                    {
                        atletaSuspenso_Equipe2 = "Suspenso";
                    }

                    conteudoCSV.AppendFormat("{0};{1};{2};0;0;0;0;{3};", atletaEquipe2.pessoa.id, atletaEquipe2.numero, atletaEquipe2.pessoa.nome, atletaSuspenso_Equipe2);
                }
                else
                {
                    conteudoCSV.Append(";;;;;;;;");
                }

                /*  idAtleta = I? - [?, 8]
                 *  numeroAtleta = J? - [?, 9]
                 *  Gol = L? - [?, 11]
                 *  Gol Penalti = M? - [?, 12]
                 *  CA = N? - [?, 13]
                 *  CV = O? - [?, 14]
                 */

                conteudoCSV.AppendLine();
            }

            // Escolhe onde vai salvar o arquivo
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter   = "CSV|*.csv";
            saveFileDialog.FileName = String.Format("{0} - {1} x {2}", competicao.nome, partida.equipe1.nome, partida.equipe2.nome);
            saveFileDialog.Title    = String.Format("Escolha um diretório para salvar templade da partida entre {0} e {1}", partida.equipe1.nome, partida.equipe2.nome);

            if (saveFileDialog.ShowDialog() == DialogResult.OK)
            {
                // Salva o arquivo
                StreamWriter salvar = new StreamWriter(saveFileDialog.FileName);
                salvar.WriteLine(conteudoCSV.ToString());
                salvar.Close();

                if (MessageBox.Show(String.Format("Gostaria de abrir a planilha {0} ?", saveFileDialog.FileName),
                                    String.Format("{0} x {1}", partida.equipe1.nome, partida.equipe2.nome),
                                    MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    System.Diagnostics.Process.Start(saveFileDialog.FileName);
                }
            }
        }
        public static void relatorioPartidas(Competicao competicao, List <Competicao_Partida> partidas, int rodada, string nomeRodada, bool fotoAtleta)
        {
            //Cabeçalho HTML
            StringBuilder cabecalhoHTML = new StringBuilder();

            cabecalhoHTML.AppendLine("<html>");
            cabecalhoHTML.AppendLine("    <head>");
            cabecalhoHTML.AppendLine("            <link rel=\"stylesheet\" href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css\" integrity=\"sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB\" crossorigin=\"anonymous\">");
            cabecalhoHTML.AppendLine("            <script src=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js\" integrity=\"sha384-smHYKdLADwkXOn1EmN1qk/HfnUcbVRZyYmZ4qpPea6sjB/pTJ0euyQp0Mk8ck+5T\" crossorigin=\"anonymous\"></script>");
            cabecalhoHTML.AppendLine("        <meta charset=\"UTF-8\">");
            cabecalhoHTML.AppendFormat("        <title>{0} - Artilheiros</title>", competicao.nome).AppendLine();
            cabecalhoHTML.AppendLine("    </head>");
            cabecalhoHTML.AppendLine("    <style>");
            cabecalhoHTML.AppendLine("        th {	font-size: 18px;	}");
            cabecalhoHTML.AppendLine("        td {	font-size: 16px;	}");
            cabecalhoHTML.AppendLine("        div {	font-size: 18px;	}");
            cabecalhoHTML.AppendLine("    </style>");
            cabecalhoHTML.AppendLine("    <body>");

            //Cabeçalho Relatório
            StringBuilder cabecalhoRelatorio = new StringBuilder();

            cabecalhoRelatorio.AppendLine("		<div class=\"card\">");
            cabecalhoRelatorio.AppendFormat("            <div class=\"card-header bg-primary mb-3\"><strong>{0}</strong></div>", nomeRodada).AppendLine();
            cabecalhoRelatorio.AppendLine("            <div class=\"card-body\">");
            cabecalhoRelatorio.AppendLine("                <table class=\"table table-striped\">");
            cabecalhoRelatorio.AppendLine("                    <thead>");
            cabecalhoRelatorio.AppendLine("                        <tr>");

            string nomeGrupoJogo;

            if (rodada < 0)
            {
                nomeGrupoJogo = "Jogo";
            }
            else
            {
                nomeGrupoJogo = "Grupo";
            }
            cabecalhoRelatorio.AppendFormat("                            <th style=\"width: 10%\">{0}</th>", nomeGrupoJogo).AppendLine();

            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 10%\">Data</th>");

            if (fotoAtleta)
            {
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 4.41%\"> </th>");
            }

            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 17.85%\">Casa</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\"> </th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 2%\">X</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\"> </th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 17.85%\">Visitante</th>");

            if (fotoAtleta)
            {
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 4.41%\"> </th>");
            }

            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 15.66%\">Árbitro</th>");
            cabecalhoRelatorio.AppendLine("                        </tr>");
            cabecalhoRelatorio.AppendLine("                    </thead>");
            cabecalhoRelatorio.AppendLine("                    <tbody>");

            //Partidas
            StringBuilder partidasRelatorio = new StringBuilder();

            for (int numPartida = 0; numPartida < partidas.Count; numPartida++)
            {
                Competicao_Partida partida = partidas[numPartida];

                int numGolsEquipe1, numGolsEquipe2;
                numGolsEquipe1 = partida.eventos.FindAll(find => find.tpEvento == tpEventoEnum.Gol && find.id_Equipe == partida.equipe1.id).Count;
                numGolsEquipe2 = partida.eventos.FindAll(find => find.tpEvento == tpEventoEnum.Gol && find.id_Equipe == partida.equipe2.id).Count;

                int numGolsPenaltiEquipe1, numGolsPenaltiEquipe2;
                numGolsPenaltiEquipe1 = partida.eventos.FindAll(find => find.tpEvento == tpEventoEnum.Gol_Penalti && find.id_Equipe == partida.equipe1.id).Count;
                numGolsPenaltiEquipe2 = partida.eventos.FindAll(find => find.tpEvento == tpEventoEnum.Gol_Penalti && find.id_Equipe == partida.equipe2.id).Count;

                bool vitoriaEquipe1, vitoriaEquipe2;
                if (numGolsPenaltiEquipe1 > 0 || numGolsPenaltiEquipe2 > 0)
                {
                    vitoriaEquipe1 = numGolsPenaltiEquipe1 > numGolsPenaltiEquipe2;
                    vitoriaEquipe2 = numGolsPenaltiEquipe2 > numGolsPenaltiEquipe1;
                }
                else
                {
                    vitoriaEquipe1 = numGolsEquipe1 > numGolsEquipe2;
                    vitoriaEquipe2 = numGolsEquipe2 > numGolsEquipe1;
                }

                partidasRelatorio.AppendLine("                        <tr>");

                if (rodada < 0)
                {
                    nomeGrupoJogo = "Jogo " + partida.numGrupo.ToString();
                }
                else
                {
                    nomeGrupoJogo = CompeticaoViewUtilidades.getNomeGrupo(competicao.nomesGrupos, partida.numGrupo + 1);
                }
                partidasRelatorio.AppendFormat("							<td>{0}</td>", nomeGrupoJogo).AppendLine();

                string dataJogo;
                if (partida.data is null)
                {
                    dataJogo = "";
                }
                else
                {
                    dataJogo = ((DateTime)partida.data).ToString("dd/MM/yyyy");
                }
                partidasRelatorio.AppendFormat("							<td>{0}</td>", dataJogo).AppendLine();

                if (fotoAtleta)
                {
                    partidasRelatorio.AppendFormat("							<td><div class=\"text-center\">	<img height=\"25\" src=\"file:///{0}\" class=\"rounded\"></div></td>  ", (partida.equipe1.urlLogo is null ? "" : partida.equipe1.urlLogo)).AppendLine();
                }

                string golsEquipe1 = numGolsEquipe1.ToString();
                if (numGolsPenaltiEquipe1 > 0 || numGolsPenaltiEquipe2 > 0)
                {
                    golsEquipe1 += " (" + numGolsPenaltiEquipe1.ToString() + ")";
                }
                partidasRelatorio.AppendFormat("							<td {0}>{1}</td>", (vitoriaEquipe1 ? "style=\"font-weight:bold\"" : ""), partida.equipe1.nome).AppendLine();
                partidasRelatorio.AppendFormat("							<td align=\"right\" {0}>{1}</td>", (vitoriaEquipe1 ? "style=\"font-weight:bold\"" : ""), (partida.encerrada ? golsEquipe1 : "")).AppendLine();
                partidasRelatorio.AppendLine("							<td style=\"font-weight:bold\">X</td>");

                string golsEquipe2 = "";
                if (numGolsPenaltiEquipe1 > 0 || numGolsPenaltiEquipe2 > 0)
                {
                    golsEquipe2 = "(" + numGolsPenaltiEquipe2.ToString() + ") ";
                }
                golsEquipe2 += numGolsEquipe2.ToString();
                partidasRelatorio.AppendFormat("							<td align=\"left\" {0}>{1}</td>", (vitoriaEquipe2 ? "style=\"font-weight:bold\"" : ""), (partida.encerrada ? golsEquipe2 : "")).AppendLine();

                partidasRelatorio.AppendFormat("							<td {0}>{1}</td>", (vitoriaEquipe2 ? "style=\"font-weight:bold\"" : ""), partida.equipe2.nome).AppendLine();

                if (fotoAtleta)
                {
                    partidasRelatorio.AppendFormat("							<td><div class=\"text-center\">	<img height=\"25\" src=\"file:///{0}\" class=\"rounded\"></div></td>  ", (partida.equipe2.urlLogo is null ? "" : partida.equipe2.urlLogo)).AppendLine();
                }

                partidasRelatorio.AppendFormat("							<td>{0}</td>", (partida.arbitro is null? "" : partida.arbitro.pessoa.nome)).AppendLine();
                partidasRelatorio.AppendLine("						</tr> ");
            }

            //Parte final relatório
            StringBuilder finalRelatorio = new StringBuilder();

            finalRelatorio.AppendLine("                    </tbody>");
            finalRelatorio.AppendLine("                </table>");
            finalRelatorio.AppendLine("            </div>");
            finalRelatorio.AppendLine("        </div>");

            //Final HTML
            StringBuilder finalHTML = new StringBuilder();

            finalHTML.AppendLine("    </body>");
            finalHTML.AppendLine("</html>");

            //HTML Inteiro
            StringBuilder fullHTML = new StringBuilder();

            fullHTML.Append(cabecalhoHTML.ToString());
            fullHTML.Append(cabecalhoRelatorio.ToString());
            fullHTML.Append(partidasRelatorio.ToString());
            fullHTML.Append(finalRelatorio.ToString());
            fullHTML.Append(finalHTML.ToString());

            // Escolhe onde vai salvar o arquivo
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter   = "HTML Files|*.html";
            saveFileDialog.Title    = "Escolha um diretório para salvar o relatório de partidas";
            saveFileDialog.FileName = String.Format("{0} - {1} - Relatório de partidas", competicao.nome, nomeRodada);

            if (saveFileDialog.ShowDialog() == DialogResult.OK)
            {
                // Salva o arquivo
                StreamWriter salvar = new StreamWriter(saveFileDialog.FileName);
                salvar.WriteLine(fullHTML.ToString());
                salvar.Close();

                if (MessageBox.Show("Gostaria de abrir o relatório?",
                                    "Relatório de partidas",
                                    MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    System.Diagnostics.Process.Start(saveFileDialog.FileName);
                }
            }
        }
        public static void relatorioGrupos(Competicao competicao, bool fotoEquipe, List <List <EquipeCompeticao> > timesProximaFase)
        {
            StringBuilder cabecalhoHTML      = new StringBuilder();
            StringBuilder cabecalhoRelatorio = new StringBuilder();
            StringBuilder equipesRelatorio   = new StringBuilder();
            StringBuilder finalRelatorio     = new StringBuilder();
            StringBuilder finalHTML          = new StringBuilder();
            StringBuilder fullHTML           = new StringBuilder();

            //Cabeçalho HTML
            cabecalhoHTML = new StringBuilder();
            cabecalhoHTML.AppendLine("<html>");
            cabecalhoHTML.AppendLine("    <head>");
            cabecalhoHTML.AppendLine("        <link rel=\"stylesheet\" href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css\" integrity=\"sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB\" crossorigin=\"anonymous\">");
            cabecalhoHTML.AppendLine("        <script src=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js\" integrity=\"sha384-smHYKdLADwkXOn1EmN1qk/HfnUcbVRZyYmZ4qpPea6sjB/pTJ0euyQp0Mk8ck+5T\" crossorigin=\"anonymous\"></script>");
            cabecalhoHTML.AppendLine("        <meta charset=\"UTF-8\">");
            cabecalhoHTML.AppendFormat("        <title>{0} - Classificação</title>", competicao.nome).AppendLine();
            cabecalhoHTML.AppendLine("    </head>");
            cabecalhoHTML.AppendLine("    <body>");

            fullHTML.Append(cabecalhoHTML.ToString());


            //Cabeçalho Relatório - Por Grupo
            for (int iGrupo = 0; iGrupo < competicao.grupos.Count; iGrupo++)
            {
                // Ordena as equipes
                competicao.grupos[iGrupo] = (from customDS in competicao.grupos[iGrupo]
                                             orderby customDS.pontos descending, customDS.vitorias descending, customDS.golsPro - customDS.golsContra descending
                                             select customDS).ToList <EquipeCompeticao>();

                cabecalhoRelatorio = new StringBuilder();
                cabecalhoRelatorio.AppendLine("		<div class=\"card\">");
                cabecalhoRelatorio.AppendFormat("            <div class=\"card-header bg-primary mb-3\"><strong>{0}</strong></div>", CompeticaoViewUtilidades.getNomeGrupo(competicao.nomesGrupos, iGrupo + 1)).AppendLine();
                cabecalhoRelatorio.AppendLine("            <div class=\"card-body\">");
                cabecalhoRelatorio.AppendLine("                <table class=\"table table-striped\">");
                cabecalhoRelatorio.AppendLine("                    <thead>");
                cabecalhoRelatorio.AppendLine("                        <tr>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">P.</th>");

                if (fotoEquipe)
                {
                    cabecalhoRelatorio.AppendLine("                            <th style=\"width: 10%\"> </th>");
                }

                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 20%\">Equipe</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 9%\">Pts</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">J</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">V</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">E</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">D</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">GP</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">GC</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">SG</th>");
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">%</th>");
                cabecalhoRelatorio.AppendLine("                        </tr>");
                cabecalhoRelatorio.AppendLine("                    </thead>");
                cabecalhoRelatorio.AppendLine("                    <tbody>");

                fullHTML.Append(cabecalhoRelatorio.ToString());

                //Equipes
                for (int iEquipe = 0; iEquipe < competicao.grupos[iGrupo].Count; iEquipe++)
                {
                    EquipeCompeticao equipe = competicao.grupos[iGrupo][iEquipe];

                    //Verifica se a equipe até então está se classificando
                    bool classificada = false;
                    if (timesProximaFase[iGrupo].Contains(equipe))
                    {
                        classificada = true;
                    }

                    equipesRelatorio = new StringBuilder();
                    equipesRelatorio.AppendFormat("                        <tr {0}>", (classificada ? "style=\"font-weight:bold\"" : "")).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}º</td>", iEquipe + 1).AppendLine();

                    if (fotoEquipe)
                    {
                        equipesRelatorio.AppendFormat("							<td><div class=\"text-center\">	<img height=\"75\" src=\"file:///{0}\" class=\"rounded\"></div></td>  ", (equipe.urlLogo is null ? "" : equipe.urlLogo)).AppendLine();
                    }

                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.nome).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.pontos).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.vitorias + equipe.derrotas + equipe.empates).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.vitorias).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.empates).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.derrotas).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.golsPro).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.golsContra).AppendLine();
                    equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.golsPro - equipe.golsContra).AppendLine();
                    if (equipe.vitorias + equipe.derrotas + equipe.empates > 0)
                    {
                        equipesRelatorio.AppendFormat("							<td>{0}</td>", equipe.pontos * 100 / ((equipe.vitorias + equipe.derrotas + equipe.empates) * 3)).AppendLine();
                    }
                    else
                    {
                        equipesRelatorio.AppendFormat("							<td>{0}</td>", 0).AppendLine();
                    }
                    equipesRelatorio.AppendLine("						</tr> ");

                    fullHTML.Append(equipesRelatorio.ToString());
                }

                //Parte final relatório
                finalRelatorio = new StringBuilder();
                finalRelatorio.AppendLine("                    </tbody>");
                finalRelatorio.AppendLine("                </table>");
                finalRelatorio.AppendLine("            </div>");
                finalRelatorio.AppendLine("        </div>");

                fullHTML.Append(finalRelatorio.ToString());
            }

            //Final HTML
            finalHTML = new StringBuilder();
            finalHTML.AppendLine("    </body>");
            finalHTML.AppendLine("</html>");

            fullHTML.Append(finalHTML.ToString());

            // Escolhe onde vai salvar o arquivo
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter   = "HTML Files|*.html";
            saveFileDialog.Title    = "Escolha um diretório para salvar o relatório de classificação";
            saveFileDialog.FileName = String.Format("{0} - Relatório de classificação", competicao.nome);

            if (saveFileDialog.ShowDialog() == DialogResult.OK)
            {
                // Salva o arquivo
                StreamWriter salvar = new StreamWriter(saveFileDialog.FileName);
                salvar.WriteLine(fullHTML.ToString());
                salvar.Close();

                if (MessageBox.Show("Gostaria de abrir o relatório?",
                                    "Relatório de classificação",
                                    MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    System.Diagnostics.Process.Start(saveFileDialog.FileName);
                }
            }
        }
        public static void relatorioArtilheiros(Competicao competicao, List <Atleta_List_Artilheiro> artilheiros, bool fotoAtleta)
        {
            //Cabeçalho HTML
            StringBuilder cabecalhoHTML = new StringBuilder();

            cabecalhoHTML.AppendLine("<html>");
            cabecalhoHTML.AppendLine("    <head>");
            cabecalhoHTML.AppendLine("            <link rel=\"stylesheet\" href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css\" integrity=\"sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB\" crossorigin=\"anonymous\">");
            cabecalhoHTML.AppendLine("            <script src=\"https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js\" integrity=\"sha384-smHYKdLADwkXOn1EmN1qk/HfnUcbVRZyYmZ4qpPea6sjB/pTJ0euyQp0Mk8ck+5T\" crossorigin=\"anonymous\"></script>");
            cabecalhoHTML.AppendLine("        <meta charset=\"UTF-8\">");
            cabecalhoHTML.AppendFormat("        <title>{0} - Artilheiros</title>", competicao.nome).AppendLine();
            cabecalhoHTML.AppendLine("    </head>");
            cabecalhoHTML.AppendLine("    <body>");

            //Cabeçalho Relatório
            StringBuilder cabecalhoRelatorio = new StringBuilder();

            cabecalhoRelatorio.AppendLine("        <div class=\"card\">");
            cabecalhoRelatorio.AppendFormat("            <div class=\"card-header bg-primary mb-3\"><strong>{0} - Artilheiros</strong></div>", competicao.nome).AppendLine();
            cabecalhoRelatorio.AppendLine("            <div class=\"card-body\">");
            cabecalhoRelatorio.AppendLine("                <table class=\"table table-striped\">");
            cabecalhoRelatorio.AppendLine("                    <thead>");
            cabecalhoRelatorio.AppendLine("                        <tr>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 6%\">P.</th>");

            if (fotoAtleta)
            {
                cabecalhoRelatorio.AppendLine("                            <th style=\"width: 10%\"> </th>");
            }

            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 30%\">Atleta</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 19%\">Equipe</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 15%\">Gols</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 10%\">Média</th>");
            cabecalhoRelatorio.AppendLine("                            <th style=\"width: 10%\">Partidas</th>");
            cabecalhoRelatorio.AppendLine("                        </tr>");
            cabecalhoRelatorio.AppendLine("                    </thead>");
            cabecalhoRelatorio.AppendLine("                    <tbody>");

            //Artilheiros
            StringBuilder artilheirosRelatorio = new StringBuilder();

            for (int iCount = 0; iCount < artilheiros.Count; iCount++)
            {
                Atleta_List_Artilheiro artilheiro = artilheiros[iCount];

                artilheirosRelatorio.AppendLine("                        <tr> ");
                artilheirosRelatorio.AppendFormat("							<td>{0}º</td> ", iCount + 1).AppendLine();

                if (fotoAtleta)
                {
                    artilheirosRelatorio.AppendFormat("							<td><div class=\"text-center\">	<img height=\"75\" src=\"file:///{0}\" class=\"rounded\"></div></td>  ", (artilheiro.atleta.pessoa.urlFoto is null ? "" : artilheiro.atleta.pessoa.urlFoto)).AppendLine();
                }

                artilheirosRelatorio.AppendFormat("							<td>{0}</td> ", artilheiro.nome_Atleta).AppendLine();
                artilheirosRelatorio.AppendFormat("							<td>{0}</td> ", artilheiro.nome_Equipe).AppendLine();
                artilheirosRelatorio.AppendFormat("							<td>{0}</td> ", artilheiro.num_Gols).AppendLine();
                artilheirosRelatorio.AppendFormat("							<td>{0}</td>  ", Convert.ToDouble(artilheiro.num_Gols) / Convert.ToDouble(artilheiro.num_Partidas)).AppendLine();
                artilheirosRelatorio.AppendFormat("							<td>{0}</td> ", artilheiro.num_Partidas).AppendLine();
                artilheirosRelatorio.AppendLine("						</tr> ");
            }

            //Parte final relatório
            StringBuilder finalRelatorio = new StringBuilder();

            finalRelatorio.AppendLine("                    </tbody>");
            finalRelatorio.AppendLine("                </table>");
            finalRelatorio.AppendLine("            </div>");
            finalRelatorio.AppendLine("        </div>");

            //Final HTML
            StringBuilder finalHTML = new StringBuilder();

            finalHTML.AppendLine("    </body>");
            finalHTML.AppendLine("</html>");

            //HTML Inteiro
            StringBuilder fullHTML = new StringBuilder();

            fullHTML.Append(cabecalhoHTML.ToString());
            fullHTML.Append(cabecalhoRelatorio.ToString());
            fullHTML.Append(artilheirosRelatorio.ToString());
            fullHTML.Append(finalRelatorio.ToString());
            fullHTML.Append(finalHTML.ToString());

            // Escolhe onde vai salvar o arquivo
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter   = "HTML Files|*.html";
            saveFileDialog.Title    = "Escolha um diretório para salvar o relatório de artilheiros";
            saveFileDialog.FileName = String.Format("{0} - Relatório de artilharia", competicao.nome);

            if (saveFileDialog.ShowDialog() == DialogResult.OK)
            {
                // Salva o arquivo
                StreamWriter salvar = new StreamWriter(saveFileDialog.FileName);
                salvar.WriteLine(fullHTML.ToString());
                salvar.Close();

                if (MessageBox.Show("Gostaria de abrir o relatório?",
                                    "Relatório de artilharia",
                                    MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    System.Diagnostics.Process.Start(saveFileDialog.FileName);
                }
            }
        }
示例#30
0
        public bool updateEquipeCompeticao(EquipeCompeticao equipe, Competicao competicao)
        {
            try {
                string strSQL;
                strSQL = "UPDATE Equipe_Competicao " +
                         "SET    id_Treinador = @id_Treinador, " +
                         "       id_Representante = @id_Representante " +
                         "WHERE  id_Equipe = @id_Equipe " +
                         "       AND id_Competicao = @id_Competicao ";

                int id_Treinador, id_Representante;
                if (equipe.treinador is null)
                {
                    id_Treinador = -1;
                }
                else
                {
                    id_Treinador = equipe.treinador.id_pessoa;
                }

                if (equipe.representante is null)
                {
                    id_Representante = -1;
                }
                else
                {
                    id_Representante = equipe.representante.id_pessoa;
                }

                SQLiteDatabase.Instance.SQLiteDatabaseConnection().Query(strSQL,
                                                                         new { id_Treinador,
                                                                               id_Representante,
                                                                               id_Equipe     = equipe.id,
                                                                               id_Competicao = competicao.id });

                // Atualiza a numeração da equipe
                if (!(equipe.atletas is null))
                {
                    strSQL = "UPDATE Equipe_Atletas " +
                             "SET    numero = @numero," +
                             "       numCartoesAcumulados = @numCartoesAcumulados " +
                             "WHERE  id_Equipe = @id_Equipe " +
                             "       AND id_Competicao = @id_Competicao " +
                             "       AND id_Atleta = @id_Atleta ";

                    foreach (Atleta atleta in equipe.atletas)
                    {
                        SQLiteDatabase.Instance.SQLiteDatabaseConnection().Query(strSQL,
                                                                                 new {
                            atleta.numero,
                            atleta.numCartoesAcumulados,
                            id_Equipe     = equipe.id,
                            id_Competicao = competicao.id,
                            id_Atleta     = atleta.id_pessoa
                        });
                    }
                }

                return(true);
            } catch (Exception ex) {
                return(false);
            }
        }
示例#31
0
        public void criaAtleta(string cpf, string nome, int numero, Equipe equipe = null, Competicao competicao = null)
        {
            string myString = "";

            Pessoa pessoa = new Pessoa(cpf, nome, new DateTime(2000, 01, 01));

            pessoa.funcoes = funcoes.FindAll(funcao => funcao.codigo == FuncaoRepositorio.Instance.codigoAtleta);
            PessoaRepositorio.Instance.insert(ref pessoa, ref myString);

            if ((!(equipe is null)) && (!(competicao is null)))
            {
                Atleta atleta = PessoaRepositorio.Instance.getAtletas().Find(atletaAEncontrar => atletaAEncontrar.pessoa.cpf.Equals(pessoa.cpf));
                atleta.numero = numero;
                EquipeRepositorio.Instance.insertAtletaEmEquipe(competicao.id, equipe.id, atleta);
            }
        }