Anand Doshi | 1947b17 | 2016-03-23 12:12:38 +0530 | [diff] [blame] | 1 | {% extends "templates/web.html" %} |
rohitwaghchaure | 2851a41 | 2023-10-18 16:31:35 +0530 | [diff] [blame] | 2 | {% from "erpnext/templates/includes/macros.html" import product_image %} |
Rushabh Mehta | 156ce60 | 2015-09-11 18:49:59 +0530 | [diff] [blame] | 3 | |
Saurabh | df2783d | 2016-01-06 15:21:21 +0530 | [diff] [blame] | 4 | {% block breadcrumbs %} |
| 5 | {% include "templates/includes/breadcrumbs.html" %} |
| 6 | {% endblock %} |
| 7 | |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 8 | {% block title %} |
| 9 | {{ doc.name }} |
| 10 | {% endblock %} |
Rushabh Mehta | a334062 | 2016-06-23 18:25:50 +0530 | [diff] [blame] | 11 | |
Rushabh Mehta | dbb5154 | 2017-08-10 21:06:09 +0530 | [diff] [blame] | 12 | {% block header %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 13 | <h3 class="m-0">{{ doc.name }}</h3> |
Rushabh Mehta | dbb5154 | 2017-08-10 21:06:09 +0530 | [diff] [blame] | 14 | {% endblock %} |
| 15 | |
| 16 | {% block header_actions %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 17 | <div class="row"> |
| 18 | <div class="dropdown"> |
| 19 | <button class="btn btn-sm btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> |
| 20 | <span class="font-md">{{ _('Actions') }}</span> |
| 21 | <b class="caret"></b> |
| 22 | </button> |
| 23 | <ul class="dropdown-menu dropdown-menu-right" role="menu"> |
| 24 | {% if doc.doctype == 'Purchase Order' and show_make_pi_button %} |
| 25 | <a class="dropdown-item" |
| 26 | href="/api/method/erpnext.buying.doctype.purchase_order.purchase_order.make_purchase_invoice_from_portal?purchase_order_name={{ doc.name }}" |
| 27 | data-action="make_purchase_invoice">{{ _("Make Purchase Invoice") }} |
| 28 | </a> |
| 29 | {% endif %} |
| 30 | <a class="dropdown-item" |
| 31 | href='/printview?doctype={{ doc.doctype}}&name={{ doc.name }}&format={{ print_format }}' target="_blank" |
| 32 | rel="noopener noreferrer"> |
| 33 | {{ _("Print") }} |
| 34 | </a> |
| 35 | </ul> |
| 36 | </div> |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 37 | </div> |
Rushabh Mehta | dbb5154 | 2017-08-10 21:06:09 +0530 | [diff] [blame] | 38 | {% endblock %} |
Rushabh Mehta | 156ce60 | 2015-09-11 18:49:59 +0530 | [diff] [blame] | 39 | |
Rushabh Mehta | 51008f2 | 2016-01-01 17:23:12 +0530 | [diff] [blame] | 40 | {% block page_content %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 41 | <div> |
| 42 | <div class="row transaction-subheading mt-1"> |
| 43 | <div class="col-6 text-muted small mt-1"> |
| 44 | {{ frappe.utils.format_date(doc.transaction_date, 'medium') }} |
| 45 | {% if doc.valid_till %} |
| 46 | <p> |
| 47 | {{ _("Valid Till") }}: {{ frappe.utils.format_date(doc.valid_till, 'medium') }} |
| 48 | </p> |
Anupam | a4df105 | 2020-09-24 13:21:54 +0530 | [diff] [blame] | 49 | {% endif %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 50 | </div> |
Manas Solanki | da486ee | 2018-07-06 12:36:57 +0530 | [diff] [blame] | 51 | </div> |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 52 | <div class="row indicator-container mt-2"> |
| 53 | <div class="col-10"> |
| 54 | <span class="indicator-pill {{ doc.indicator_color or (" blue" if doc.docstatus==1 else "darkgrey" ) }}"> |
| 55 | {% if doc.doctype == "Quotation" and not doc.docstatus %} |
| 56 | {{ _("Pending") }} |
| 57 | {% else %} |
| 58 | {{ _(doc.get('indicator_title')) or _(doc.status) or _("Submitted") }} |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 59 | {% endif %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 60 | </span> |
| 61 | </div> |
| 62 | <div class="text-right col-2"> |
| 63 | {%- set party_name = doc.supplier_name if doc.doctype in ['Supplier Quotation', 'Purchase Invoice', 'Purchase |
| 64 | Order'] else doc.customer_name %} |
| 65 | <b>{{ party_name }}</b> |
| 66 | |
| 67 | {% if doc.contact_display and doc.contact_display != party_name %} |
| 68 | <br> |
| 69 | {{ doc.contact_display }} |
| 70 | {% endif %} |
| 71 | </div> |
| 72 | </div> |
| 73 | |
| 74 | {% if doc._header %} |
| 75 | {{ doc._header }} |
| 76 | {% endif %} |
| 77 | |
| 78 | <div class="order-container mt-4"> |
| 79 | <!-- items --> |
| 80 | <div class="w-100"> |
| 81 | <div class="order-items order-item-header mb-1 row text-muted"> |
| 82 | <span class="col-5"> |
| 83 | {{ _("Item") }} |
| 84 | </span> |
| 85 | <span class="d-s-n col-3"> |
| 86 | {{ _("Quantity") }} |
| 87 | </span> |
| 88 | <span class="col-2 pl-10"> |
| 89 | {{ _("Rate") }} |
| 90 | </span> |
| 91 | <span class="col-2 text-right"> |
| 92 | {{ _("Amount") }} |
| 93 | </span> |
| 94 | </div> |
| 95 | {% for d in doc.items %} |
| 96 | <div class="order-items row align-items-center"> |
| 97 | <span class="order-item-name col-5 pr-0"> |
| 98 | {{ item_name_and_description(d) }} |
| 99 | </span> |
| 100 | |
| 101 | <span class="d-s-n col-3 pl-10"> |
| 102 | {{ d.get_formatted("qty") }} |
| 103 | </span> |
| 104 | <span class="order-rate pl-4 col-2"> |
| 105 | {{ d.get_formatted("rate") }} |
| 106 | </span> |
| 107 | <span class="col-2 text-right"> |
| 108 | {{ d.get_formatted("amount") }} |
| 109 | </span> |
| 110 | </div> |
| 111 | {% endfor %} |
| 112 | </div> |
| 113 | |
| 114 | <!-- taxes --> |
| 115 | <div class=""> |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 116 | {% include "erpnext/templates/includes/order/order_taxes.html" %} |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 117 | </div> |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 118 | </div> |
| 119 | </div> |
| 120 | |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 121 | {% if attachments %} |
| 122 | <div class="order-item-table"> |
| 123 | <div class="row order-items order-item-header text-muted"> |
| 124 | <div class="col-sm-12 h6 text-uppercase"> |
| 125 | {{ _("Attachments") }} |
| 126 | </div> |
| 127 | </div> |
| 128 | <div class="row order-items"> |
| 129 | <div class="col-sm-12"> |
| 130 | {% for attachment in attachments %} |
| 131 | <p class="small"> |
| 132 | <a href="{{ attachment.file_url }}" target="blank"> {{ attachment.file_name }} </a> |
| 133 | </p> |
| 134 | {% endfor %} |
| 135 | </div> |
| 136 | </div> |
| 137 | </div> |
| 138 | {% endif %} |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 139 | |
| 140 | {% if doc.terms %} |
| 141 | <div class="terms-and-condition text-muted small"> |
Summayya Hashmani | da43a5e | 2022-10-04 09:57:07 +0530 | [diff] [blame] | 142 | <hr> |
| 143 | <p>{{ doc.terms }}</p> |
marination | 3a32596 | 2021-10-27 10:57:48 +0530 | [diff] [blame] | 144 | </div> |
| 145 | {% endif %} |
Rushabh Mehta | 156ce60 | 2015-09-11 18:49:59 +0530 | [diff] [blame] | 146 | {% endblock %} |
Manas Solanki | da486ee | 2018-07-06 12:36:57 +0530 | [diff] [blame] | 147 | |
rohitwaghchaure | 2851a41 | 2023-10-18 16:31:35 +0530 | [diff] [blame] | 148 | {% macro item_name_and_description(d) %} |
| 149 | <div class="row item_name_and_description"> |
| 150 | <div class="col-xs-4 col-sm-2 order-image-col"> |
| 151 | <div class="order-image h-100"> |
| 152 | {% if d.thumbnail or d.image %} |
| 153 | {{ product_image(d.thumbnail or d.image, no_border=True) }} |
| 154 | {% else %} |
| 155 | <div class="no-image-cart-item" style="min-height: 100px;"> |
| 156 | {{ frappe.utils.get_abbr(d.item_name) or "NA" }} |
| 157 | </div> |
| 158 | {% endif %} |
| 159 | </div> |
| 160 | </div> |
| 161 | <div class="col-xs-8 col-sm-10"> |
| 162 | {{ d.item_code }} |
| 163 | <div class="text-muted small item-description"> |
| 164 | {{ html2text(d.description) | truncate(140) }} |
| 165 | </div> |
| 166 | <span class="text-muted mt-2 d-l-n order-qty"> |
| 167 | {{ _("Qty ") }}({{ d.get_formatted("qty") }}) |
| 168 | </span> |
| 169 | </div> |
| 170 | </div> |
| 171 | {% endmacro %} |