Example #1
0
def edit_payroll_invoice(request, dk):
    instance = get_object_or_404(PayrollInvoice, id=dk)
    payments = instance.payorders
    form = CreatePayrollForm(instance=instance)
    page_title, back_url = 'Edit %s' % instance.title, reverse(
        'billings:payroll_page')
    duplicate_url = reverse('billings:duplicate_payroll_invoice',
                            kwargs={'dk': dk})
    form_payment = PaymentForm(
        initial={
            'content_type': ContentType.objects.get_for_model(PayrollInvoice),
            'object_id': dk,
            'date_expired': datetime.datetime.now(),
            'is_paid': True,
            'is_expense': True,
            'value': instance.get_remaining_value(),
        })
    if 'edit_form' in request.POST:
        form = CreatePayrollForm(request.POST, instance=instance)
        if form.is_valid():
            if instance.payorders.all():
                messages.info(request,
                              'You need to delete the payments first!')
            else:
                form.save()
                messages.success(request, 'You edit the invoice succesfully')
                return HttpResponseRedirect(reverse('billings:payroll_page'))
    if 'create_payment' in request.POST:
        form = PaymentForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(
                reverse('billings:edit_bill', kwargs={'pk': dk}))
    context = locals()
    return render(request, 'billings/form.html', context)
Example #2
0
    def get(self, request):
        user = request.user
        if user.has_active_investment:
            messages.error(request,
                           FAILURE_MESSAGES["user_has_active_investment"])
        try:
            package = Package.objects.get(codename=request.GET.get("codename"))
        except Package.DoesNotExist:
            package = None

        if package:
            payment_form = PaymentForm(initial={"package": package})
        else:
            payment_form = PaymentForm()
        return render(
            request,
            "dashboard/invest/payment.html",
            context={
                "payment_form": payment_form,
                "email": user.email,
                "firstname": user.firstname,
                "lastname": user.lastname,
                "paystatck_pub_key": settings.PAYSTACK_PUBLIC_KEY,
            },
        )
Example #3
0
def warehouser_order_paid_detail(request, pk):
    instance = get_object_or_404(Order, id=pk)
    vendor = instance.vendor
    create = True
    form = PaymentForm(request.POST or None,
                       initial={
                           'value':
                           instance.get_remaining_value,
                           'content_type':
                           ContentType.objects.get_for_model(instance),
                           'payment_type':
                           instance.payment_method,
                           'title':
                           '%s' % instance.code,
                           'date_expired':
                           instance.date_created,
                           'object_id':
                           pk,
                           'is_expense':
                           True,
                           'is_paid':
                           True,
                       })
    if request.POST:
        if form.is_valid():
            form.save()
            messages.success(request, 'The payment added!')
            return HttpResponseRedirect(
                reverse('inventory:ware_order_paid_detail', kwargs={'pk': pk}))
    context = locals()
    return render(request, 'inventory_manager/payment_details.html', context)
Example #4
0
def billing_invoice_paid(request, dk):
    instance = get_object_or_404(FixedCostInvoice, id=dk)
    payments = instance.payorders
    form = PaymentForm(request.POST or None)
    if form.is_valid():
        form.save()
        return HttpResponseRedirect(reverse('billings:home'))
    context = locals()
    return render(request, 'billings/payment_bill_detail.html', context)
Example #5
0
def validate_package_amount(request):
    if request.user.has_active_investment:
        response = {
            "success": False,
            "message": FAILURE_MESSAGES["user_has_active_investment"],
        }
        return JsonResponse(data=response, status=400)

    data = json.loads(request.body)
    payment_form = PaymentForm(data=data)
    if not payment_form.is_valid():
        return JsonResponse({**payment_form.errors}, status=400)
    return JsonResponse({}, status=200)
Example #6
0
def billings_invoice_edit(request, pk):
    bill_edit = True
    instance = get_object_or_404(FixedCostInvoice, id=pk)
    page_title, back_url = 'Edit %s' % instance.title, reverse(
        'billings:billings')
    payment_orders = instance.payorders
    form = CreateBillForm(instance=instance)
    form_payment = PaymentForm(
        initial={
            'content_type': ContentType.objects.get_for_model(
                FixedCostInvoice),
            'object_id': pk,
            'date_expired': datetime.datetime.now(),
            'is_paid': True,
            'is_expense': True,
            'value': instance.get_remaining_value(),
        })
    if 'edit_form' in request.POST:
        form = CreateBillForm(request.POST, instance=instance)
        if form.is_valid():
            if instance.payorders:
                messages.info(request,
                              'You need to delete the payments first!')
            else:
                form.save()
            return HttpResponseRedirect(
                reverse('billings:edit_bill', kwargs={'pk': pk}))
    if 'create_payment' in request.POST:
        form = PaymentForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect(
                reverse('billings:edit_bill', kwargs={'pk': pk}))

    context = locals()
    return render(request, 'billings/form.html', context)
Example #7
0
def warehouse_edit_paid_order(request, dk, pk):
    instance = get_object_or_404(Order, id=dk)
    payorder = get_object_or_404(PaymentOrders, id=pk)
    form = PaymentForm(request.POST or None,
                       instance=payorder,
                       initial={'is_expense': True})
    create = False
    if request.POST:
        if form.is_valid():
            form.save()
            messages.success(request, 'The paid order is edited')
            return HttpResponseRedirect(
                reverse('inventory:ware_order_paid_detail',
                        kwargs={'pk': instance.id}))
    context = locals()
    return render(request, 'inventory_manager/form_edit_payment_order.html',
                  context)
Example #8
0
def edit_check_order(request, pk):
    instance = get_object_or_404(PaymentOrders, id=pk)
    form = PaymentForm(request.POST or None,
                       instance=instance,
                       initial={'is_expense': True})
    if form.is_valid():
        form.save()
        messages.success(request, 'The Check order is edited')
        return HttpResponseRedirect(
            reverse('inventory:vendor_detail',
                    kwargs={'pk': instance.object_id}))
    print(form.errors)
    page_title = 'Edit %s' % instance.title
    context = locals()
    return render(request, 'dash_ware/form.html', context)

    def get_success_url(self):
        instance = get_object_or_404(PaymentOrders, id=self.kwargs['pk'])
        return reverse('inventory:vendor_detail',
                       kwargs={'pk': instance.object_id})