예제 #1
0
    //REPORTE DE LOTES POR IMPRIMIR
    public Datoslote[] ObtenerLotesPorImprimir()
    {
        string funcionalidadOperadora = "";
        string idBanco, nombreSucursal, nombreBanco, operadora;

        if (GetUsuarioActual.Rol.Funcionalidades.Contains("Imprimir Pines"))
        {
            funcionalidadOperadora = "Imprimir Pines";
        }
        else
        if (GetUsuarioActual.Rol.Funcionalidades.Contains("Imprimir Tarjetas"))
        {
            funcionalidadOperadora = "Imprimir Tarjetas";
        }
        List <LotePersistente> lotes = GetUsuarioActual.ObtenerLotesPinORTarjetaPorImprimir(funcionalidadOperadora);

        if (lotes.Count == 0)
        {
            throw new Exception("1");
        }
        List <Datoslote>   datosLotesPorimprimir = new List <Datoslote>();
        Datoslote          dlote    = new Datoslote();
        TarjetaPersistente auxiliar = new TarjetaPersistente();

        foreach (LotePersistente lote in lotes)
        {
            if (lote.Tarjetas.Count == 0)
            {
                continue;
            }
            auxiliar       = lote.Tarjetas[0];                                                     //primera tarjeta de cada lote
            nombreSucursal = GetUsuarioActual.BuscarNombreSucursalDadoNumero(auxiliar.NoSucursal); //obtener nombre de la sucursal
            idBanco        = auxiliar.IdNumeroTarjeta.Substring(0, 2);
            nombreBanco    = GetUsuarioActual.GetBancoDadoID(idBanco);
            operadora      = GetUsuarioActual.Nombre;
            dlote          = new Datoslote(lote, nombreSucursal, nombreBanco, operadora);
            datosLotesPorimprimir.Add(dlote);
        }
        return(datosLotesPorimprimir.ToArray());
    }