Example #1
0
def buscar_pdfs_facturas(pk, field='', factura=None, fecha_factura=None):
    from FacturasNorte.custom_classes import Factura
    cliente = get_object_or_404(Cliente, nroUsuario=pk)
    storageManager = FileSystemStorage()
    facturas = storageManager.listdir(config.PDF_FACTURAS)[1]
    pedidos = storageManager.listdir(config.PDF_PEDIDOS)[1]
    PDFs = []

    if field != '':
        if field == '1':
            query = factura
        else:
            query = fecha_factura

    for fac in facturas:
        check = fac.split('_')[0]
        if check == 'FAC':
            cuit = fac.split('-')[1]
            if (cuit == cliente.cuit):
                nroFac = fac.split('-')[2]
                nroPed = fac.split('-')[3]
                fechaFac = fac.split('-')[4].split('.')[0]
                fechaFac = obtener_fecha_factura(fechaFac)

            if (field == '') or \
                    ((field == '1') and (query == nroFac)) or \
                    ((field == '3') and (query == fechaFac)):

                for ped in pedidos:
                    check = fac.split('_')[0]
                    if check == 'PED':
                        numero_pedido = ped.split('-')[2]
                        if (numero_pedido == nroPed):
                            fechaPed = ped.split('-')[3].split('.')[0]
                            fechaPed = obtener_fecha_factura(fechaPed)

                            pdf = Factura()
                            pdf.set_cliente(cuit)
                            pdf.set_nroPedido(nroPed)
                            pdf.set_nroFactura(nroFac)
                            pdf.set_fechaPed(fechaPed)
                            pdf.set_fechaFac(fechaFac)
                            pdf.set_rutaFac(config.CARPETA_FACTURAS + fac)
                            pdf.set_rutaPed(config.CARPETA_PEDIDOS + ped)
                            PDFs.append(pdf)
                return PDFs