Skip to content

Instantly share code, notes, and snippets.

@MaxMorais
Forked from monojoker/gist:c74ea65877358595f749
Last active August 29, 2015 14:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MaxMorais/7e7f8c5a4d06fdbc58e9 to your computer and use it in GitHub Desktop.
Save MaxMorais/7e7f8c5a4d06fdbc58e9 to your computer and use it in GitHub Desktop.
{%- macro add_header(page_num, max_pages, doc) -%}
{%- if doc.meta.is_submittable and doc.docstatus==2-%}
<div class="alert alert-danger text-center">
<h4 style="margin: 0px;">{{ _("CANCELLED") }}</h4></div>
{%- endif -%}
{% if max_pages > 1 %}
<p class="text-right">{{ _("Page #{0} of {1}").format(page_num, max_pages) }}</p>
{% endif %}
{%- endmacro -%}
<small>
<font face="verdana">
<table style="width: 100%; height: 60px;">
<tr>
<td style="width: 30%;"><img src="/files/erpnext_logo.JPG" height="42" width="158"></td>
<td style="width: 20%; text-align: right;"></td>
<td style="width: 20%; text-align: left;">
{%- if doc.workflow_state!='Pending' -%}<img src="http://barcodes4.me/barcode/c128b/{{ doc.name }}.jpg" height="50" width="125">{%- endif -%}
</td>
<td style="width: 30%; text-align: right;"><font size="5"><b>
{%- if doc.deco_no -%}
{{ doc.deco_no }}
{%- else -%}
{{ doc.name }}
{%- endif -%}</b></font>
{%- if 'URGENT' in (doc.priority or '') -%}<font color=#FF0000><font size="3"> <b> *URGENT* </b> </font></font>{%- endif -%}
</td>
</tr>
</table>
{%- if doc.workflow_state=='Pending' -%}
<table style="width: 100%; height: 30px;">
<td style="width: 100%; text-align: center;"><h4>SALES ORDER APPROVAL</h4></td>
</table>
{%- endif -%}
<table style="background-color: #000000 !important; width: 100%">
<tr>
<td style="width: 65%; text-align: left;"><font size="3"><font color="white !important"><b> {{ doc.job_name }} </b></font></font></td>
<td style="width: 35%; text-align: left;"><font size="2"><font color="white !important"><b> {{ doc.customer_name }} </b></font></font></td>
</tr>
</table>
<div class="row">
<div class="col-xs-7">
<div class="row">
<div class="col-xs-4 text-left"><big><b>Shipping Address:</b></big></div>
<div class="col-xs-8 "><big>{%- if doc.manual_contact -%} {{ doc.manual_contact }} {%- else -%} {{ doc.contact_display }}{%- endif -%}<br>
{%- if doc.manual_address_1 -%}
{{ doc.manual_address_1.replace('\n', "<br/>") }}<br>
{%- else -%}
{{ doc.customer_name }}<br>
{{ doc.shipping_address }}
{%- endif -%}</big> </div>
</div>
<div class="row">
<div class="col-xs-4 text-left"><big><b>Phone:</b></big></div>
<div class="col-xs-8 text-left"><big>{{ frappe.db.get_value("Address", {"customer": doc.customer}, "phone") }}</big></div>
</div>
</div>
<div class="col-xs-5">
<div class="row">
<div class="col-xs-6 text-right"><big><b>Cust Order No:</b></big></div>
<div class="col-xs-6 "><big>{{ doc.po_no or '' }}</big> </div>
</div>
<div class="row">
<div class="col-xs-6 text-right"> <big><b>Order Date:</b></big> </div>
<div class="col-xs-6 ">
<big>{{ doc.get_formatted("transaction_date") }}</big></div>
</div>
<div class="row">
<font color = "red">
<div class="col-xs-6 text-right"><big><b>Due Date:</b></big></div>
<div class="col-xs-6 "><big><b>{{ doc.get_formatted("delivery_date") }}</b></big> </div>
</font>
</div>
<div class="row">
<div class="col-xs-6 text-right"> <big><b>Ship By:</b></big> </div>
<div class="col-xs-6 ">
<big>{{ doc.ship_by }}</big></div>
</div>
{%- if doc.workflow_state!="Pending" -%}
<div class="row">
<div class="col-xs-6 text-right"> <big><b>Balance Owing:</b></big> </div>
<div class="col-xs-6 ">
<big>{{ frappe.format_value((doc.base_grand_total or 0.0)- (doc.deposit or 0.0), doc.meta.get_field('base_grand_total'),doc) }}</big></div>
{%- else -%}
<div class="row">
<div class="col-xs-6 text-right"> <big><b>Total Price:</b></big> </div>
<div class="col-xs-6 ">
<big>{{ frappe.format_value((doc.base_grand_total or 0.0)- (doc.deposit or 0.0), doc.meta.get_field('base_grand_total'),doc) }}</big></div>
{%- endif -%}
</div>
</div>
</div>
<br>
<table class="table table-condensed table-hover table-bordered">
{%- for row in doc.items -%}
{% if frappe.db.get_value("Item", row.item_code, "item_group") != 'Services' %}
<tr>
<th style="width: 100%; text-align: left; font-size:9pt">
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><u>Job Type:</u></div>
<div class="col-xs-8">{{ row.job_type or '' }}</div>
</div>
{%- if row.print_process -%}
<div class="row">
<div class="col-xs-4 text-left"><u>Print Process:</u></div>
<div class="col-xs-8 ">{{ row.print_process or '' }}</div>
</div>
{%- endif -%}
</th>
<th style="font-size:9pt; text-align: left">
{%- if row.artwork_instructions -%}
<u>Artwork Instructions:</u><br> {{ row.artwork_instructions.replace('\n', "<br/>") or '' }}
{%- endif -%}</th>
</tr>
<tr>
<td style="width: 100%; text-align: left; font-size:9pt">
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Item:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.item_name }}</div>
</div>
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Quantity:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ '%4d' % row.qty or '' }}</div>
</div>
{%- if row.description -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b> Description: </b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.description.replace('\n', "<br/>") or '' }} <br></div>
</div>
{%- endif -%}
{%- if row.stock -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Stock:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.stock or '' }}</div>
</div>
{%- endif -%}
{%- if row.stock_colour -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Stock Colour:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.stock_colour or '' }}</div>
</div>
{%- endif -%}
{%- if row.code_or_supplier -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Code/Supplier:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.code_or_supplier or '' }}</div>
</div>
{%- endif -%}
{%- if row.size -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Stock Size:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.size.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
{%- if row.shirt_sizes -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Shirt Sizes:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.shirt_sizes.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
{%- if row.print_size -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Print Size:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.print_size.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
{%- if row.finished_size -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finished Size:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finished_size.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
{%- if row.thickness -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Thickness:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.thickness or '' }}</div>
</div>
{%- endif -%}
{%- if row.print_pms_colours -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Print Colours:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.print_pms_colours or '' }}</div>
</div>
{%- endif -%}
{%- if row.print_positions -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Print Positions:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.print_positions.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
{%- if row.sides -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Sides:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.sides or '' }}</div>
</div>
{%- endif -%}
{%- if row.copy_type -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Copy Type:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.copy_type or '' }}</div>
</div>
{%- endif -%}
{%- if row.perforation -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Perforation:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.perforation or '' }}</div>
</div>
{%- endif -%}
{%- if row.tape -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Tape:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.tape or '' }}</div>
</div>
{%- endif -%}
{%- if row.binding_type -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Binding Type:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.binding_type or '' }}</div>
</div>
{%- endif -%}
{%- if row.cover -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Cover:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.cover or '' }}</div>
</div>
{%- endif -%}
{%- if row.starting_number -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Starting No:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.starting_number or '' }}</div>
</div>
{%- endif -%}
{%- if row.terms_and_conditions -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Ts & Cs:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.terms_and_conditions or '' }}</div>
</div>
{%- endif -%}
{%- if row.magnet_grade -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Grade:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.magnet_grade or '' }}</div>
</div>
{%- endif -%}
{%- if row.number_up -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Number Up:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.number_up or '' }}</div>
</div>
{%- endif -%}
{%- if row.application -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Application:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.application or '' }}</div>
</div>
{%- endif -%}
{%- if row.supply_install -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Supply/Install:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.supply_install or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing_gen -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing_gen or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing_mgt -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing_mgt or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing_cor -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing_cor or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing_bsc -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing_bsc or '' }}</div>
</div>
{%- endif -%}
{%- if row.finishing_stk -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Finishing:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.finishing_stk or '' }}</div>
</div>
{%- endif -%}
{%- if row.other_details -%}
<div class="row">
<div class="col-xs-4 text-left" style="padding-bottom: 10px"><b>Other:</b></div>
<div class="col-xs-8 text-left" style="padding-bottom: 10px">{{ row.other_details.replace('\n', "<br/>") or '' }}</div>
</div>
{%- endif -%}
</td>
<td style="font-size:9pt">
<div style="width: 250px">
{%- if row.artwork -%}
{{ row.artwork }}
{%- else -%}
{{ doc.artwork }}
{%- endif -%}
</div><br>
</td>
</tr>
{% endif %}
{%- endfor -%}
</tbody>
</table>
{%- if doc.general_information -%}
{{ doc.general_information }}
{%- endif -%}
<p>
{%- if doc.despatch_instructions -%}
<table class="table table-condensed table-hover table-bordered">
<tr>
<th class="text-left"><b>Special Despatch Instructions:</b></th>
</tr>
<tr>
<td>
<b><font size="3"><font color="red">{{ doc.despatch_instructions }}</font></b></td>
</tr>
{%- endif -%}
<p>
</small>
</font>
{%- if doc.workflow_state=="Pending" -%}
{%- for row in doc.items -%}
{% if frappe.db.get_value("Item", row.item_code, "item_group") != 'Services' %}
<p style="page-break-after:always;"></p>
{%- if row.artwork -%}
{{ row.artwork }}
{%- else -%}
{{ doc.artwork }}
{%- endif -%}
{%- endif -%}
{%- endfor -%}
{%- endif -%}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment