Merge pull request 'Changes to bill detail and po detail ui' (#117) from frontend into main
Reviewed-on: #117
This commit is contained in:
commit
4af455510f
@ -2703,7 +2703,8 @@ class CustomGroup(models.Model):
|
||||
"carfinance",
|
||||
"notes",
|
||||
"tasks",
|
||||
"activity",],
|
||||
"activity",
|
||||
"payment"],
|
||||
other_perms=[
|
||||
"view_car",
|
||||
"view_carlocation",
|
||||
|
||||
@ -43,8 +43,7 @@
|
||||
<div class="card shadow-sm" >
|
||||
<div class="card-body">
|
||||
{% include 'bill/includes/card_bill.html' with dealer_slug=request.dealer.slug bill=bill entity_slug=view.kwargs.entity_slug style='bill-detail' %}
|
||||
<hr class="my-4">
|
||||
{% include 'bill/includes/card_vendor.html' with vendor=bill.vendor %}
|
||||
|
||||
<div class="d-grid mt-4">
|
||||
<a href="{% url 'bill_list' request.dealer.slug %}"
|
||||
class="btn btn-phoenix-primary">
|
||||
|
||||
@ -7,30 +7,18 @@
|
||||
|
||||
{% block content %}
|
||||
<div class="container py-4">
|
||||
<div class="row g-4">
|
||||
<!-- Vendor Card -->
|
||||
<div class="col-12">
|
||||
{% include 'bill/includes/card_vendor.html' with vendor=bill_model.vendor %}
|
||||
</div>
|
||||
<div class="row g-2">
|
||||
|
||||
|
||||
<!-- Bill Form -->
|
||||
<div class="col-12">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="card mb-2">
|
||||
<div class="card-body">
|
||||
{% include 'bill/includes/card_bill.html' with dealer_slug=request.dealer.slug bill=bill_model style='bill-detail' entity_slug=view.kwargs.entity_slug %}
|
||||
|
||||
<form action="{% url 'bill-update' dealer_slug=request.dealer.slug entity_slug=view.kwargs.entity_slug bill_pk=bill_model.uuid %}" method="post">
|
||||
{% csrf_token %}
|
||||
|
||||
<div class="mb-3">
|
||||
{{ form|crispy }}
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-phoenix-primary w-100 mb-2">
|
||||
<i class="fas fa-save me-2"></i>{% trans 'Save Bill' %}
|
||||
</button>
|
||||
|
||||
<a href="{% url 'bill-detail' dealer_slug=request.dealer.slug entity_slug=view.kwargs.entity_slug bill_pk=bill_model.uuid %}"
|
||||
<a href="{% url 'bill-detail' dealer_slug=request.dealer.slug entity_slug=view.kwargs.entity_slug bill_pk=bill_model.uuid %}"
|
||||
class="btn btn-phoenix-secondary w-100 mb-2">
|
||||
<i class="fas fa-arrow-left me-2"></i>{% trans 'Back to Bill Detail' %}
|
||||
</a>
|
||||
@ -39,12 +27,21 @@
|
||||
class="btn btn-phoenix-info w-100 mb-2">
|
||||
<i class="fas fa-list me-2"></i>{% trans 'Bill List' %}
|
||||
</a>
|
||||
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Bill Item Formset -->
|
||||
<div class="col-12">
|
||||
{% bill_item_formset_table itemtxs_formset %}
|
||||
|
||||
@ -90,7 +90,7 @@
|
||||
{% elif style == 'bill-detail' %}
|
||||
<!-- Detail Style Card -->
|
||||
<div class="">
|
||||
<div class="card-header p-4 bg-{{ bill.get_status_badge_color }}">
|
||||
<div class="card-header p-2 bg-{{ bill.get_status_badge_color }}">
|
||||
<div class="d-flex align-items-center">
|
||||
<i class="fas fa-file-invoice me-3 text-white"></i>
|
||||
<h2 class="mb-0 text-white">
|
||||
@ -98,10 +98,14 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body p-4 text-center">
|
||||
<div class="card-body p-2 text-center">
|
||||
{% if bill.is_draft %}
|
||||
<h3 class="text-warning fw-bold mb-4">{% trans 'This bill is' %} {{ bill.get_bill_status_display }}</h3>
|
||||
<div class="border-bottom pb-4 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Vendor Name' %}:</span>
|
||||
{{ bill.vendor.vendor_name }}
|
||||
</p>
|
||||
<div class="border-bottom pb-2 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Amount Due' %}:</span>
|
||||
{% currency_symbol %}{{ bill.amount_due | currency_format }}
|
||||
@ -121,7 +125,11 @@
|
||||
</div>
|
||||
{% elif bill.is_review %}
|
||||
<h3 class="text-warning fw-bold mb-4">{% trans 'This bill is' %} {{ bill.get_bill_status_display }}</h3>
|
||||
<div class="border-bottom pb-4 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Vendor Name' %}:</span>
|
||||
{{ bill.vendor.vendor_name }}
|
||||
</p>
|
||||
<div class="border-bottom pb-2 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Amount Due' %}:</span>
|
||||
{% currency_symbol %}{{ bill.amount_due | currency_format }}
|
||||
@ -144,7 +152,11 @@
|
||||
{% endif %}
|
||||
{% elif bill.is_approved %}
|
||||
<h3 class="text-info fw-bold mb-4">{% trans 'This bill is' %} {{ bill.get_bill_status_display }}</h3>
|
||||
<div class="border-bottom pb-4 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Vendor Name' %}:</span>
|
||||
{{ bill.vendor.vendor_name }}
|
||||
</p>
|
||||
<div class="border-bottom pb-2 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Amount Due' %}:</span>
|
||||
{% currency_symbol %}{{ bill.amount_due | currency_format }}
|
||||
@ -176,7 +188,11 @@
|
||||
{% endif %}
|
||||
{% elif bill.is_paid %}
|
||||
<h3 class="text-success fw-bold mb-4">{% trans 'This bill is' %} {{ bill.get_bill_status_display }}</h3>
|
||||
<div class="border-bottom pb-4 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Vendor Name' %}:</span>
|
||||
{{ bill.vendor.vendor_name }}
|
||||
</p>
|
||||
<div class="border-bottom pb-2 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Amount Paid' %}:</span>
|
||||
{% currency_symbol %}{{ bill.amount_paid | currency_format }}
|
||||
@ -190,7 +206,7 @@
|
||||
<p class="text-muted fst-italic">{% trans 'External Ref' %}: {{ bill.xref }}</p>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<div class="border-bottom pb-4 mb-4">
|
||||
<div class="border-bottom pb-2 mb-4">
|
||||
<p class="mb-2">
|
||||
<span class="fw-bold">{% trans 'Bill Amount' %}:</span>
|
||||
{% currency_symbol %}{{ bill.amount_due | currency_format }}
|
||||
|
||||
@ -140,7 +140,7 @@
|
||||
<!-- Action Buttons -->
|
||||
<div class="row mt-4">
|
||||
<div class="col-12">
|
||||
<div class="d-flex justify-content-end gap-2">
|
||||
<div class="d-flex justify-content-start gap-2">
|
||||
{% if not item_formset.has_po %}
|
||||
<a href="{% url 'django_ledger:product-create' entity_slug=entity_slug %}"
|
||||
class="btn btn-phoenix-primary">
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
<div class="row mt-4">
|
||||
<div class="d-flex justify-content-between mb-2">
|
||||
<h3 class=""><i class="fa-solid fa-book"></i> {% trans "Accounts" %}</h3>
|
||||
{% if perms.django_ledger.create_chartofaccountmodel %}
|
||||
{% if perms.django_ledger.add_chartofaccountmodel %}
|
||||
<a href="{% url 'account_create' request.dealer.slug %}" class="btn btn-md btn-phoenix-primary"><i class="fa fa-plus me-2"></i>{% trans 'New Account' %}</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
@ -32,134 +32,87 @@
|
||||
{% if not create_po %}
|
||||
{% if style == 'po-detail' %}
|
||||
<div class="card shadow-sm border-0 mb-2">
|
||||
<div class="card-header bg-light">
|
||||
<div class="d-flex align-items-center">
|
||||
<span class="me-3 text-primary">
|
||||
{% icon 'uil:bill' 36 %}
|
||||
</span>
|
||||
<h2 class="h3 mb-0">
|
||||
{{ po_model.po_number }}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-header bg-light">
|
||||
<div class="d-flex align-items-center">
|
||||
<span class="me-3 text-primary">
|
||||
{% icon 'uil:bill' 36 %}
|
||||
</span>
|
||||
<h2 class="h3 mb-0">
|
||||
{{ po_model.po_number }}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<h3 class="h4 mb-4">
|
||||
<div class="card-body">
|
||||
<div class='row g-3'>
|
||||
|
||||
<div class='col-12 col-md-3 col-lg-2'>
|
||||
<h3 class="h4 mb-0 mb-md-4">
|
||||
<span class="badge bg-{% if po_model.is_draft %}success{% elif po_model.is_approved %}success{% elif po_model.is_fulfilled %}primary{% else %}warning{% endif %}">
|
||||
{{ po_model.get_po_status_display }}
|
||||
</span>
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
{# Display PO Contract Information #}
|
||||
{% if po_model.is_contract_bound %}
|
||||
<div class="alert alert-info d-flex align-items-center mb-4">
|
||||
<i class="fas fa-file-contract me-3 fs-4"></i>
|
||||
<div>
|
||||
<h4 class="h6 mb-1">{% trans 'Contract' %}</h4>
|
||||
<p class="mb-0">{{ po_model.ce_model.estimate_number }}</p>
|
||||
</div>
|
||||
|
||||
|
||||
<a href="{% url 'estimate_detail' po_model.ce_model_id %}"
|
||||
class="btn btn-sm btn-outline-info ms-auto">
|
||||
|
||||
{% trans 'View Contract' %}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class='col-12 col-md-4 col-lg-3'>
|
||||
{% if po_model.is_draft %}
|
||||
<h5 class="h6 text-muted mb-1">{% trans 'Draft Date' %}</h5>
|
||||
<p class="h5 mb-3">{{ po_model.date_draft|date }}</p>
|
||||
{% endif %}
|
||||
|
||||
<div class="row g-3 mb-4">
|
||||
{% if po_model.is_draft %}
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Draft Date' %}</h5>
|
||||
<p class="h5">{{ po_model.date_draft|date }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Purchase Order Amount' %}</h5>
|
||||
<p class="h5"><span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount|currency_format }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if po_model.is_review %}
|
||||
<h5 class="h6 text-muted mb-1">{% trans 'Review Date' %}</h5>
|
||||
<p class="h5 mb-3">{{ po_model.date_in_review|date }}</p>
|
||||
{% endif %}
|
||||
|
||||
{% if po_model.is_review %}
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Review Date' %}</h5>
|
||||
<p class="h5">{{ po_model.date_in_review|date }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Purchase Order Amount' %}</h5>
|
||||
<p class="h5"><span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount|currency_format }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if po_model.is_approved %}
|
||||
<h5 class="h6 text-muted mb-1">{% trans 'Approved Date' %}</h5>
|
||||
<p class="h5 mb-3">{{ po_model.date_approved|date }}</p>
|
||||
{% endif %}
|
||||
|
||||
{% if po_model.is_approved %}
|
||||
<div class="col-md-4">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Approved Date' %}</h5>
|
||||
<p class="h5">{{ po_model.date_approved|date }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'PO Amount' %}</h5>
|
||||
<p class="h5">{{ po_model.po_amount|currency_format }}<span class="currency">{{CURRENCY}}</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Received Amount' %}</h5>
|
||||
<p class="h5 text-success">{{ po_model.po_amount_received|currency_format }}<span class="currency">{{CURRENCY}}</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if po_model.is_fulfilled %}
|
||||
<h5 class="h6 text-muted mb-1">{% trans 'Fulfilled Date' %}</h5>
|
||||
<p class="h5 mb-3">{{ po_model.date_fulfilled|date }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if po_model.is_fulfilled %}
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'Fulfilled Date' %}</h5>
|
||||
<p class="h5">{{ po_model.date_fulfilled|date }}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='col-12 col-md-5 col-lg-5'>
|
||||
<div class="row text-center g-0">
|
||||
<div class="col-6 border-end">
|
||||
<div class="p-2">
|
||||
<h6 class="text-muted mb-2">{% trans 'PO Amount' %}</h6>
|
||||
<h3 class="fw-light mb-0">
|
||||
<span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount | absolute | currency_format }}
|
||||
</h3>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="card border-light h-100">
|
||||
<div class="card-body">
|
||||
<h5 class="h6 text-muted mb-2">{% trans 'PO Amount' %}</h5>
|
||||
<div class="d-flex align-items-center">
|
||||
<p class="h5 mb-0 me-2"><span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount|currency_format }}</p>
|
||||
<span class="badge bg-success">
|
||||
<i class="fas fa-check-circle me-1"></i>{% trans 'Fulfilled' %}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<h6 class="text-muted mb-2">{% trans 'Amount Received' %}</h6>
|
||||
<h3 class="fw-light mb-0 text-success">
|
||||
<span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount_received | currency_format }}
|
||||
</h3>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='col-12 col-md-12 col-lg-2 d-grid align-content-end'>
|
||||
<a class="btn btn-phoenix-primary py-2"
|
||||
href="{% url 'purchase_order_list' request.dealer.slug request.dealer.entity.slug %}"
|
||||
title="Click to view the complete list of Purchase Orders"
|
||||
role="button"
|
||||
>
|
||||
<i class="fas fa-list me-2"></i>{% trans 'PO List' %}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="card-footer bg-light">
|
||||
{% if perms.django_ledger.change_purchaseordermodel%}
|
||||
<div class="d-flex flex-wrap gap-2 justify-content-between">
|
||||
@ -170,7 +123,7 @@
|
||||
</a>
|
||||
|
||||
<div class="d-flex flex-wrap gap-2">
|
||||
{# Status Action Buttons #}
|
||||
|
||||
{% if po_model.can_draft %}
|
||||
<button class="btn btn-phoenix-secondary"
|
||||
onclick="showPOModal('Draft PO', '{% url 'po-action-mark-as-draft' request.dealer.slug entity_slug po_model.pk %}', 'Mark As Draft')">
|
||||
@ -200,25 +153,25 @@
|
||||
|
||||
{% endif %}
|
||||
|
||||
{# Danger Action Buttons #}
|
||||
|
||||
{% if po_model.can_delete %}
|
||||
{% if perms.django_ledger.delete_purchaseordermodel%}
|
||||
<button class="btn btn-outline-danger"
|
||||
<button class="btn btn-phoenix-danger"
|
||||
onclick="showPOModal('Delete PO', '{% url 'po-delete' request.dealer.slug entity_slug po_model.pk %}', 'Delete')">
|
||||
<i class="fas fa-ban me-2"></i>{% trans 'Delete' %}
|
||||
<i class="fas fa-trash me-2"></i>{% trans 'Delete' %}
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if po_model.can_void %}
|
||||
<button class="btn btn-outline-danger"
|
||||
<button class="btn btn-phoenix-danger"
|
||||
onclick="showPOModal('Void PO', '{% url 'po-action-mark-as-void' request.dealer.slug entity_slug po_model.pk %}', 'Mark As Void')">
|
||||
<i class="fas fa-times-circle me-2"></i>{% trans 'Void' %}
|
||||
</button>
|
||||
{% endif %}
|
||||
|
||||
{% if po_model.can_cancel %}
|
||||
<button class="btn btn-outline-danger"
|
||||
<button class="btn btn-phoenix-secondary"
|
||||
onclick="showPOModal('Cancel PO', '{% url 'po-action-mark-as-canceled' request.dealer.slug entity_slug po_model.pk %}', 'Mark As Cancelled')">
|
||||
<i class="fas fa-ban me-2"></i>{% trans 'Cancel' %}
|
||||
</button>
|
||||
|
||||
@ -8,69 +8,19 @@
|
||||
<div class="container-fluid mt-4">
|
||||
<div class="row g-1">
|
||||
|
||||
|
||||
<div class="col-lg-12 mb-3 ">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-9">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
{% include 'purchase_orders/includes/card_po.html' with dealer_slug=request.dealer.slug po_model=po_model entity_slug=entity_slug style='po-detail' %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='col-3'>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-12">
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<div class="row text-center">
|
||||
<div class="col-md-6 border-end">
|
||||
<div class="p-2">
|
||||
<h6 class="text-muted mb-2">{% trans 'PO Amount' %}</h6>
|
||||
<h3 class="fw-light mb-0">
|
||||
<span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount | absolute | currency_format }}
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="p-2">
|
||||
<h6 class="text-muted mb-2">{% trans 'Amount Received' %}</h6>
|
||||
<h3 class="fw-light mb-0 text-success">
|
||||
<span class="currency">{{CURRENCY}}</span>{{ po_model.po_amount_received | currency_format }}
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12">
|
||||
<a class="btn btn-phoenix-primary w-100 py-2"
|
||||
href="{% url 'purchase_order_list' request.dealer.slug request.dealer.entity.slug %}">
|
||||
<i class="fas fa-list me-2"></i>{% trans 'PO List' %}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-lg-12 mb-3">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
{% include 'purchase_orders/includes/card_po.html' with dealer_slug=request.dealer.slug po_model=po_model entity_slug=entity_slug style='po-detail' %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-lg-12">
|
||||
<div class="table-responsive">
|
||||
{% po_item_table1 po_items %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-lg-12">
|
||||
<div class="table-responsive">
|
||||
{% po_item_table1 po_items %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -82,16 +82,23 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex align-items-center gap-2">
|
||||
{% if perms.django_ledger.change_invoicemodel%}
|
||||
{% if invoice.invoice_status == 'in_review' %}
|
||||
<button id="accept_invoice" class="btn btn-phoenix-secondary" data-bs-toggle="modal" data-bs-target="#confirmModal"><span class="d-none d-sm-inline-block"><i class="fa-solid fa-check-double"></i> {% trans 'Accept' %}</span></button>
|
||||
{% endif %}
|
||||
{% if invoice.invoice_status == 'approved' %}
|
||||
{% if perms.inventory.add_payment%}
|
||||
<a href="{% url 'payment_create' request.dealer.slug invoice.pk %}" class="btn btn-phoenix-success"><span class="d-none d-sm-inline-block"><i class="fa-solid fa-money-bill"></i> {% trans 'Record Payment' %}</span></a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if not invoice.is_paid %}
|
||||
{% if perms.inventory.change_payment%}
|
||||
<button {% if invoice.is_review or invoice.amount_paid|to_int < invoice.amount_due|to_int %}disabled{% endif %} id="mark_invoice_as_paid" class="btn btn-phoenix-secondary" data-bs-toggle="modal" data-bs-target="#mark_as_paid_Modal"><span class="d-none d-sm-inline-block"><span class="icon-saudi_riyal"></span> {% trans 'Mark as Paid' %}</span></button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
<a href="{% url 'invoice_preview' request.dealer.slug invoice.pk %}" class="btn btn-phoenix-primary"><span class="d-none d-sm-inline-block"><i class="fa-regular fa-eye"></i> {% trans 'Preview' %}</span></a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{{invoice.amount_owned}}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user