Exemplo n.º 1
0
        /// <summary>
        /// Introduce una cadena de notas una encima de otra en la página
        /// </summary>
        /// <param name="worksheet"></param>
        /// <param name="posicionInicial"></param>
        /// <param name="notas"></param>
        /// <returns></returns>
        private IXLWorksheet IntroducirNotas(IXLWorksheet worksheet, PosicionTabla posicionInicial, IList <Nota> notas)
        {
            foreach (var nota in notas)
            {
                var posicion = SiguientePosicion(worksheet, posicionInicial);
                worksheet = IntroducirNota(worksheet, posicion, nota);
            }

            return(worksheet);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Calcula la siguiente posición libre que habrá
        /// en la tabla excel
        /// </summary>
        /// <param name="worksheet"></param>
        /// <param name="posicionInicial"></param>
        /// <returns></returns>
        private PosicionTabla SiguientePosicion(IXLWorksheet worksheet, PosicionTabla posicionInicial)
        {
            var celda = worksheet.LastCellUsed();

            if (celda == null)
            {
                return(posicionInicial);
            }

            return(new PosicionTabla(posicionInicial.Columna, celda.Address.RowNumber + 1));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Introduce una nota en la cabecera o pie de la página
        /// </summary>
        /// <param name="worksheet"></param>
        /// <param name="posicion"></param>
        /// <param name="nota"></param>
        /// <returns></returns>
        private IXLWorksheet IntroducirNota(IXLWorksheet worksheet, PosicionTabla posicion, Nota nota)
        {
            worksheet.Cell(posicion.Fila, posicion.Columna).Value = nota.Texto;

            // Unimos todas las celdas de la nota en una sola.
            var posicionFinal = new PosicionTabla(posicion.Columna + nota.AnchoCeldas - 1, posicion.Fila);

            var rango = worksheet.Range(posicion.Fila, posicion.Columna, posicionFinal.Fila, posicionFinal.Columna)
                        .Merge();

            if (nota.Estilo != null)
            {
                nota.Estilo.AplicarEstilo(rango.Style);
            }

            return(worksheet);
        }
Exemplo n.º 4
0
    private static void actualizarPuntosEquipo(TablaPosiciones tabla, EquipoCampeonato equipo, Boolean ganador)
    {
        PosicionTabla nuevaPosicion = new PosicionTabla();
        nuevaPosicion.Equipo = equipo;
        nuevaPosicion.PartidosJugados = 1;
        if (ganador)
        {
            nuevaPosicion.PartidosGanados = 1;
            nuevaPosicion.Puntos = 2;
        }
        else
        {
            nuevaPosicion.PartidosPerdidos = 1;
            nuevaPosicion.Puntos = 1;
        }

        if (tabla.Posiciones.Contains(nuevaPosicion))
        {
            foreach (PosicionTabla pos in tabla.Posiciones)
            {
                if (pos.Equipo.CompareTo(equipo) == 0)
                {
                    pos.PartidosJugados++;
                    pos.PartidosGanados += nuevaPosicion.PartidosGanados;
                    pos.PartidosPerdidos += nuevaPosicion.PartidosPerdidos;
                    pos.Puntos += nuevaPosicion.Puntos;
                }
            }
        }
        else
        {
            tabla.Posiciones.Add(nuevaPosicion);
        }
    }