Esempio n. 1
0
    def save_model(self, request, obj, form, change):
        obj.save()
        if obj.status in br_settings.INVOICE_FINISH_STATUS:
            # Set the invoice id
            if not obj.invoice_no:
                invoice_list = Invoice.objects.filter(
                    invoice_no__isnull=False).order_by('-invoice_no')
                try:
                    invoice = invoice_list[0]
                except:
                    # There are no numbered invoices
                    invoice_no = getattr(br_settings, 'INVOICE_START_NUMBER',
                                         1)
                else:
                    invoice_no = invoice.invoice_no + 1
                obj.invoice_no = invoice_no
                obj.save()

            # Generate the pdf for this invoice
            context_dict = {
                'invoice': obj,
                'client': obj.client,
                'items': obj.items.all(),
            }

            generate_pdf(obj.invoice_id,
                         context_dict,
                         "brookie/invoice_%s_pdf.html" % obj.currency,
                         save=True)
Esempio n. 2
0
    def save_model(self, request, obj, form, change):
        obj.save()
        if obj.status in br_settings.INVOICE_FINISH_STATUS:
            context_dict = {'invoice': obj,
                            'client': obj.client,
                            'items': obj.items.all(),}

            generate_pdf(obj.invoice_id, context_dict, "brookie/invoice_%s_pdf.html" % obj.currency, save=True)
Esempio n. 3
0
def generate_invoice(request, id):
    """ Compile dictionary and generate pdf for invoice """
    invoice = get_object_or_404(Invoice, pk=id)

    context_dict = {'invoice': invoice,
                    'client': invoice.client,
                    'items': invoice.items.all(),}
    
    return generate_pdf(invoice.invoice_id, context_dict, "brookie/invoice_%s_pdf.html" % invoice.currency)
Esempio n. 4
0
    def save_model(self, request, obj, form, change):
        obj.save()
        if obj.status in br_settings.INVOICE_FINISH_STATUS:
            # Set the invoice id
            if not obj.invoice_no:
                invoice_list = Invoice.objects.filter(invoice_no__isnull=False).order_by("-invoice_no")
                try:
                    invoice = invoice_list[0]
                except:
                    # There are no numbered invoices
                    invoice_no = getattr(br_settings, "INVOICE_START_NUMBER", 1)
                else:
                    invoice_no = invoice.invoice_no + 1
                obj.invoice_no = invoice_no
                obj.save()

            # Generate the pdf for this invoice
            context_dict = {"invoice": obj, "client": obj.client, "items": obj.items.all()}

            generate_pdf(obj.invoice_id, context_dict, "brookie/invoice_%s_pdf.html" % obj.currency, save=True)
Esempio n. 5
0
    def save_model(self, request, obj, form, change):
        obj.save()
        if obj.status in br_settings.INVOICE_FINISH_STATUS:
            # Set the invoice id
            if obj.invoice_no is None:
                invoice_list = Invoice.objects.filter(invoice_no__isnull=False).order_by('-invoice_no')
                try:
                    invoice = invoice_list[0]
                    invoice_no = invoice.invoice_no + 1
                except:
                    # There are no numbered invoices
                    invoice_no = getattr(br_settings, 'INVOICE_START_NUMBER', 1)
                obj.invoice_no = invoice_no
                obj.save()

            # Generate the pdf for this invoice
            context_dict = {'invoice': obj,
                            'client': obj.client,
                            'items': obj.items.all(),}

            generate_pdf(obj.invoice_id, context_dict, "brookie/invoice_%s_pdf.html" % obj.currency, save=True)
Esempio n. 6
0
def generate_quote(request, id):
    """ Generate dictionary and generate pdf for quote """
    quote = get_object_or_404(Quote, pk=id)

    # Replace values in the quote
    quote.content = quote.content.replace('-company-', quote.client.company)
    
    context_dict = {'quote': quote,
                    'client': quote.client,
                    'items': quote.items.all(),}

    return generate_pdf(quote.quote_id, context_dict, "brookie/quote_pdf.html")