Fall 4574, 4576: Dokumentenvorlagen

develop
Roman Widmann 2018-02-01 12:48:12 +01:00
parent dda1d24f46
commit d0a56ed8df
4 changed files with 291 additions and 263 deletions

View File

@ -33,70 +33,84 @@
<template id="external_layout_header">
<div class="header">
<div class="row">
<div class="col-xs-7">
<div class="col-xs-10 header-label">
<p t-if="o._name == 'account.invoice'">
<span t-if="o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')">
RECHNUNG
</span>
<span t-if="o.type == 'out_invoice' and o.state == 'draft'">RECHNUNGSENTWURF</span>
<span t-if="o.type == 'out_invoice' and o.state == 'cancel'">STORNIERTE RECHNUNG</span>
<span t-if="o.type == 'out_refund'">GUTSCHRIFT</span>
<span t-if="o.type == 'in_refund'">LIEFERANTENSTORNO</span>
<span t-if="o.type == 'in_invoice'">EINGANGSRECHNUNG</span>
<span t-field="o.number"/>
</p>
<p t-if="o._name == 'sale.order'">
<t t-if="not (env.context.get('proforma', False) or is_pro_forma)">
<span t-if="o.state not in ['draft','sent']">Auftragsbestätigung</span>
<span t-if="o.state in ['draft','sent']">Angebot</span>
</t>
<t t-if="env.context.get('proforma', False) or is_pro_forma">
<span>Proformarechnung</span>
</t>
<span t-field="o.quote_name"/>
</p>
</div>
<div class="col-xs-2">
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % company.logo.decode()"
style="max-height: 85px;"/>
<div style="margin-top: 15mm;">
<div name="company_address"
style="font-weight: lighter; font-size: 9pt;">
<span style="border-bottom: 1px solid black;">
<span t-esc="company.partner_id.name"/>
|
<span t-esc="company.partner_id.street"/>
|
<span t-esc="company.partner_id.zip"/>
<span t-esc="company.partner_id.city"/>
</span>
</div>
</div>
</div>
<div class="col-xs-5 text-right">
<strong>
<span t-esc="company.partner_id.name"/>
</strong>
<div>
<div class="col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.street"/>
</div>
<div class="col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.zip"/>
<t t-esc="company.partner_id.city"/>
</div>
<div class="col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.country_id.name"/>
</div>
<div class="oe_mt16 col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.phone"/>
</div>
<div class="col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.email"/>
</div>
<div class="col-xs-12" style="padding-right:0px;">
<t t-esc="company.partner_id.website"/>
</div>
</div>
</div>
<div class="row">
<hr class="col-xs-12 red-line-1"/>
</div>
</div>
</template>
<template id="external_layout_footer">
<div class="footer" style="font-size:9pt;">
<div class="row" style="padding-left:0;border-top: 2px solid black;">
<div class="col-xs-10 text-center">
<div class="row" style="padding-left:0;border-top: 2px solid #A72523;">
<div class="col-xs-12 text-center">
<strong>
<span t-esc="company.name"/>
<strong style="font-size:larger;">&#183;</strong>
&#183;
<span t-esc="company.street"/>
<strong style="font-size:larger;">&#183;</strong>
&#183;
<span t-esc="company.zip"/>
<span t-esc="company.city"/>
&#183;
<span t-esc="company.phone"/>
<strong style="font-size:larger;">&#183;</strong>
&#183;
<span t-esc="company.email"/>
<strong style="font-size:larger;">&#183;</strong>
&#183;
<span t-esc="company.website"/>
</strong>
</div>
<div class="col-xs-2 text-right">
</div>
<div class="row">
<div class="col-xs-12 text-center">
<strong>
IBAN:
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].acc_number"/>
&#183;
BIC:
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].bank_id.bic"/>
&#183;
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].bank_id.name"/>
&#183;
UID-Nr.:
<span t-esc="company.vat"/>
&#183;
EORI-Nr.:
<span t-esc="company.eori_nr"/>
&#183;
Firmenbuch Nr.:
<span t-esc="company.company_registry"/>
</strong>
</div>
</div>
<div class="row">
<div class="col-xs-12 text-right">
<ul class="list-inline">
<li>Seite:</li>
<li>
@ -109,28 +123,42 @@
</ul>
</div>
</div>
<div class="row">
<div class="col-xs-12 text-center">
IBAN:
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].acc_number"/>
<strong style="font-size:larger;">&#183;</strong>
BIC:
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].bank_id.bic"/>
<strong style="font-size:larger;">&#183;</strong>
<span t-if="company.bank_ids" t-esc="company.bank_ids[0].bank_id.name"/>
<strong style="font-size:larger;">&#183;</strong>
UID-Nr.:
<span t-esc="company.vat"/>
<strong style="font-size:larger;">&#183;</strong>
EORI-Nr.:
<span t-esc="company.eori_nr"/>
<strong style="font-size:larger;">&#183;</strong>
Firmenbuch Nr.:
<span t-esc="company.company_registry"/>
</div>
</div>
</div>
</template>
<template id="company_data">
<t t-set="company" t-value="res_company"/>
<strong>
<span t-esc="company.partner_id.name"/>
</strong>
<div class="company-data">
<span t-esc="company.partner_id.street"/><br/>
<span t-esc="company.partner_id.zip"/><span t-esc="company.partner_id.city"/><br/>
<span t-esc="company.partner_id.country_id.name"/><br/><br/>
Phone: <span t-esc="company.partner_id.phone"/><br/>
Fax: +43 2538/8628 - 400<br/>
E-Mail: <span t-esc="company.partner_id.email"/><br/>
</div>
<div>
<strong><span t-esc="company.partner_id.website"/></strong>
</div>
</template>
<template id="partner_data">
<strong>
Kundendaten
</strong>
<div class="partner-data">
<span t-esc="o.partner_id.name"/><br/>
<span t-esc="o.partner_id.street"/><br/>
<span t-esc="o.partner_id.zip"/><span t-esc="o.partner_id.city"/><br/>
<span t-esc="o.partner_id.country_id.name"/><br/>
<t t-if="o.partner_id.email">
Email: <span t-esc="o.partner_id.email"/><br/>
</t>
<t t-if="o.partner_id.phone">
Telefon: <span t-esc="o.partner_id.phone"/>
</t>
</div>
</template>
</data>
</odoo>

View File

@ -16,3 +16,49 @@ body.container {
font-family: 'Raleway';
}
.header-label {
font-size:20pt;
font-weight: bold;
color: #A72523;
vertical-align: bottom;
}
.company-data {
color: #A5A5A5;
}
hr.red-line-1 {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #A72523;
margin: 1em 0;
padding: 0;
}
hr.red-line-2 {
display: block;
height: 2px;
border: 0;
border-top: 2px solid #A72523;
margin: 1em 0;
padding: 0;
}
div.height-20 {
overflow: hidden;
max-height: 20px;
}
thead.table-header {
background-color: #9D9D9D;
color: white;
}
tbody.sale-tbody {
background-color: #E6E7E9;
}
tr.amount-total {
border-bottom: 2px solid #A72523;
}

View File

@ -41,64 +41,53 @@
<br/>
<span t-esc="o.partner_shipping_id.country_id.name"/>
</div>
<div class="text-right" style="width:38%;float: left;margin-top: 80px;">
<div class="row" style="margin-right:0px;" t-if="o.partner_id.ref">
<span class="col-xs-6 text-left">Kundennr.:</span>
<span class="col-xs-6" t-field="o.partner_id.ref"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.partner_id.vat">
<span class="col-xs-6 text-left">Ihre UID:</span>
<span class="col-xs-6" t-field="o.partner_id.vat"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.name">
<span class="col-xs-6 text-left">Ihre Referenz:</span>
<span class="col-xs-6" t-field="o.name"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.origin">
<span class="col-xs-6 text-left">Referenzbeleg:</span>
<span class="col-xs-6" t-field="o.origin"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.date_invoice">
<span class="col-xs-6 text-left">Rechnungsdatum:</span>
<span class="col-xs-6" t-field="o.date_invoice"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id">
<span class="col-xs-6 text-left">Ansprechpartner:</span>
<span class="col-xs-6" t-field="o.user_id"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id and o.user_id.email">
<span class="col-xs-6 text-left">Email:</span>
<span class="col-xs-6" t-field="o.user_id.email"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id and o.user_id.phone">
<span class="col-xs-6 text-left">Telefon:</span>
<span class="col-xs-6" t-field="o.user_id.phone"/>
</div>
<div class="row oe_mt16" style="margin-right:0px;">
<span class="col-xs-offset-2 col-xs-4 text-left">Positionen:</span>
<span class="col-xs-6" t-field="o.positions"/>
</div>
<div class="row" style="margin-right:0px;">
<span class="col-xs-offset-2 col-xs-4 text-left">Artikel:</span>
<span class="col-xs-6" t-field="o.num_items"/>
<div name="invoice_address" style="width:32%;padding-left:15px;padding-right:15px;float: left;">
<u style="font-size: large;">Rechnungsadresse</u>
<br/>
<strong>
<span t-esc="o.partner_id.name"/>
</strong>
<br/>
<span t-esc="o.partner_id.street"/>
<br/>
<span t-esc="o.partner_id.zip"/>
<span t-esc="o.partner_id.city"/>
<br/>
<span t-esc="o.partner_id.country_id.name"/>
<br/>
Email:
<span t-esc="o.partner_id.email"/>
<br/>
Telefon:
<span t-esc="o.partner_id.phone"/>
</div>
</div>
<div class="row">
<hr class="col-xs-12 red-line-2"/>
</div>
<div class="row mt32">
<div class="col-xs-12 text-left">
<h4>
<span t-if="o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')">
Rechnung
</span>
<span t-if="o.type == 'out_invoice' and o.state == 'draft'">Rechnungsentwurf</span>
<span t-if="o.type == 'out_invoice' and o.state == 'cancel'">Stornierte Rechnung</span>
<span t-if="o.type == 'out_refund'">Gutschrift</span>
<span t-if="o.type == 'in_refund'">Lieferantenstorno</span>
<span t-if="o.type == 'in_invoice'">Eingangsrechnungen</span>
<span t-field="o.number"/>
</h4>
<div class="row height-20">
<span class="col-xs-2">Kundennr.:</span>
<span class="col-xs-2" t-field="o.partner_id.ref"/>
<span class="col-xs-2">Ansprechpartner:</span>
<span class="col-xs-2" t-field="o.user_id"/>
<span class="col-xs-2">Positionen:</span>
<span class="col-xs-2" t-field="o.positions"/>
</div>
<div class="row height-20">
<span class="col-xs-2">Angebotsdatum:</span>
<span class="col-xs-2">?????????</span>
<span class="col-xs-2">Email:</span>
<span class="col-xs-2" t-field="o.user_id.email"/>
<span class="col-xs-2">Artikel:</span>
<span class="col-xs-2" t-field="o.num_items"/>
</div>
<div class="row height-20">
<span class="col-xs-2">Lieferdatum:</span>
<span class="col-xs-2">?????????</span>
<span class="col-xs-2">Telefon:</span>
<span class="col-xs-2" t-field="o.user_id.phone"/>
<span class="col-xs-2">Bezeichnung:</span>
<span class="col-xs-2">?????????</span>
</div>
<table class="mt32 table table-condensed">
@ -108,7 +97,7 @@
<th class="text-center">Pos.</th>
<th class="text-center">Anzahl</th>
<th class="text-right">Gewicht</th>
<th class="text-right">Einzelpreis</th>
<th class="text-right">EP</th>
<th class="text-left">Artikel</th>
<th class="text-right" t-if="discount_is_set">Rabatt</th>
<th class="text-right">Gesamtpreis</th>
@ -117,9 +106,12 @@
<tbody class="invoice_tbody">
<t t-set="pos_nr" t-value="0"/>
<t t-set="weight_total" t-value="0"/>
<t t-foreach="o.invoice_line_ids" t-as="invoice_line">
<tr>
<t t-set="pos_nr" t-value="pos_nr+1"/>
<t t-set="weight_total"
t-value="weight_total+invoice_line.product_id.weight*invoice_line.quantity"/>
<td class="text-center">
<span t-esc="pos_nr"/>
</td>
@ -127,7 +119,7 @@
<span t-field="invoice_line.quantity"/>
</td>
<td class="text-right">
<span t-field="invoice_line.product_id.weight"/>
<span t-field="invoice_line.product_id.weight"/> kg
</td>
<td class="text-right">
<span t-field="invoice_line.price_unit"/>
@ -202,6 +194,11 @@
<p class="col-xs-12">
<span t-field="o.comment"/>
</p>
<p class="col-xs-12">
Gesamtgewicht:
<span t-esc="round(weight_total, 2)"/> kg
<br/>
</p>
<p class="col-xs-12" t-if="o.incoterms_id.name">
Lieferkonditionen:
<span t-esc="o.incoterms_id.name"/>

View File

@ -6,127 +6,78 @@
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
<div class="page">
<div class="row">
<div style="width:32%;padding-left:15px;padding-right:15px;float: left;">
<u style="font-size: large;">Kundendaten</u>
<br/>
<strong>
<span t-esc="o.partner_id.name"/>
</strong>
<br/>
<span t-esc="o.partner_id.street"/>
<br/>
<span t-esc="o.partner_id.zip"/>
<span t-esc="o.partner_id.city"/>
<br/>
<span t-esc="o.partner_id.country_id.name"/>
<br/>
Email:
<span t-esc="o.partner_id.email"/>
<br/>
Telefon:
<span t-esc="o.partner_id.phone"/>
<div class="col-xs-3">
<t t-call="dp_reports.partner_data"/>
</div>
<div style="width:30%;padding-left:15px;padding-right:10px;float: left;">
<u style="font-size: large;">Lieferadresse</u>
<br/>
<strong>
<div class="col-xs-3">
<strong>Lieferadresse</strong>
<div class="partner-data">
<span t-esc="o.partner_shipping_id.name"/>
</strong>
<br/>
<span t-esc="o.partner_shipping_id.street"/>
<br/>
<span t-esc="o.partner_shipping_id.zip"/>
<span t-esc="o.partner_shipping_id.city"/>
<br/>
<span t-esc="o.partner_shipping_id.street"/><br/>
<span t-esc="o.partner_shipping_id.zip"/><span t-esc="o.partner_shipping_id.city"/><br/>
<span t-esc="o.partner_shipping_id.country_id.name"/>
</div>
<div class="text-right" style="width:38%;float: left;;">
<div class="row" style="margin-right:0px;" t-if="o.partner_id.ref">
<span class="col-xs-6 text-left">Kundennr.:</span>
<span class="col-xs-6" t-field="o.partner_id.ref"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.partner_id.vat">
<span class="col-xs-6 text-left">Ihre UID:</span>
<span class="col-xs-6" t-field="o.partner_id.vat"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.client_order_ref">
<span class="col-xs-6 text-left">Ihre Referenz:</span>
<span class="col-xs-6" t-field="o.client_order_ref"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.state in ['draft','sent'] and o.date_order">
<span class="col-xs-6 text-left">Angebotsdatum:</span>
<span class="col-xs-6" t-field="o.date_order"
t-options='{"format": "dd.MM.yyyy"}'/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.earliest_scheduled_date">
<span class="col-xs-6 text-left">Lieferdatum:</span>
<span class="col-xs-6" t-field="o.earliest_scheduled_date"
t-options='{"format": "dd.MM.yyyy"}'/>
</div>
<div class="row" style="margin-right:0px;"
t-if="o.state in ['draft','sent'] and o.validity_date">
<span class="col-xs-6 text-left">Gültig bis:</span>
<span class="col-xs-6" t-field="o.validity_date"
t-options='{"format": "dd.MM.yyyy"}'/>
</div>
<div class="row" style="margin-right:0px;"
t-if="o.state not in ['draft','sent'] and o.confirmation_date">
<span class="col-xs-6 text-left">Bestelldatum:</span>
<span class="col-xs-6" t-field="o.confirmation_date"
t-options='{"format": "dd.MM.yyyy"}'/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id">
<span class="col-xs-6 text-left">Ansprechpartner:</span>
<span class="col-xs-6" t-field="o.user_id"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id and o.user_id.email">
<span class="col-xs-6 text-left">Email:</span>
<span class="col-xs-6" t-field="o.user_id.email"/>
</div>
<div class="row" style="margin-right:0px;" t-if="o.user_id and o.user_id.phone">
<span class="col-xs-6 text-left">Telefon:</span>
<span class="col-xs-6" t-field="o.user_id.phone"/>
</div>
<div class="row oe_mt16" style="margin-right:0px;">
<span class="col-xs-6 text-left">Positionen:</span>
<span class="col-xs-6" t-field="o.positions"/>
</div>
<div class="row" style="margin-right:0px;">
<span class="col-xs-6 text-left">Artikel:</span>
<span class="col-xs-6" t-field="o.num_items"/>
</div>
</div>
</div>
<div class="row oe_mt32">
<div class="col-xs-12 text-left">
<h4>
<t t-if="not (env.context.get('proforma', False) or is_pro_forma)">
<span t-if="o.state not in ['draft','sent']">Auftragsbestätigung</span>
<span t-if="o.state in ['draft','sent']">Angebot</span>
<div class="col-xs-3">
<strong>Rechnungsadresse</strong>
<div class="partner-data">
<span t-esc="o.partner_invoice_id.name"/><br/>
<span t-esc="o.partner_invoice_id.street"/><br/>
<span t-esc="o.partner_invoice_id.zip"/><span t-esc="o.partner_invoice_id.city"/><br/>
<span t-esc="o.partner_invoice_id.country_id.name"/><br/>
<t t-if="o.partner_invoice_id.email">
Email: <span t-esc="o.partner_invoice_id.email"/><br/>
</t>
<t t-if="env.context.get('proforma', False) or is_pro_forma">
<span>Proformarechnung</span>
<t t-if="o.partner_invoice_id.phone">
Telefon: <span t-esc="o.partner_invoice_id.phone"/>
</t>
<span t-field="o.quote_name"/>
</h4>
</div>
</div>
<table class="oe_mt32 table table-condensed">
<div class="col-xs-3">
<t t-call="dp_reports.company_data"/>
</div>
<div class="row height-20">
<strong><span class="col-xs-2">Kundennr.:</span></strong>
<span class="col-xs-2" t-field="o.partner_id.ref"/>
<strong><span class="col-xs-2">Ansprechpartner:</span></strong>
<span class="col-xs-2" t-field="o.user_id"/>
<strong><span class="col-xs-2">Positionen:</span></strong>
<span class="col-xs-2" t-field="o.positions"/>
</div>
<div class="row height-20">
<strong><span class="col-xs-2">Angebotsdatum:</span></strong>
<span class="col-xs-2" t-field="o.date_order"/>
<strong><span class="col-xs-2">Email:</span></strong>
<span class="col-xs-2" t-field="o.user_id.email"/>
<strong><span class="col-xs-2">Artikel:</span></strong>
<span class="col-xs-2" t-field="o.num_items"/>
</div>
<div class="row height-20">
<strong><span class="col-xs-2">Lieferdatum:</span></strong>
<span class="col-xs-2" t-field="o.earliest_scheduled_date"/>
<strong><span class="col-xs-2">Telefon:</span></strong>
<span class="col-xs-2" t-field="o.user_id.phone"/>
<strong><span class="col-xs-2">Bezeichnung:</span></strong>
<span class="col-xs-2">?????????</span>
</div>
</div>
<div class="row">
<hr class="col-xs-12 red-line-2"/>
</div>
<table class="table table-condensed">
<t t-set="discount_is_set" t-value="field_set_in_lines(o.order_line, 'discount')"/>
<thead>
<thead class="table-header">
<tr>
<th class="text-center">Pos.</th>
<th class="text-center">Anzahl</th>
<th class="text-right">Gewicht</th>
<th class="text-right">Einzelpreis</th>
<th class="text-right">EP</th>
<th class="text-left">Artikel</th>
<th class="text-right" t-if="discount_is_set">Rabatt</th>
<th class="text-right">Gesamtpreis</th>
</tr>
</thead>
<tbody class="sale_tbody">
<tbody class="sale-tbody">
<t t-set="pos_nr" t-value="0"/>
<t t-foreach="o.order_line" t-as="order_line">
<tr>
@ -180,10 +131,15 @@
</tbody>
</table>
<div class="row">
<hr class="col-xs-12 red-line-2"/>
</div>
<div class="row">
<div class="col-xs-4 pull-right">
<table class="table table-condensed">
<tr class="border-black">
<tbody class="sale-tbody">
<tr>
<td>
<strong>Zwischensumme</strong>
</td>
@ -192,7 +148,7 @@
t-options='{"widget": "monetary", "display_currency": o.currency_id}'/>
</td>
</tr>
<tr>
<tr class="amount-total">
<td>
<span>MwSt.</span>
</td>
@ -201,7 +157,7 @@
t-options='{"widget": "monetary", "display_currency": o.currency_id}'/>
</td>
</tr>
<tr class="border-black">
<tr>
<td>
<strong>Gesamtsumme</strong>
</td>
@ -210,6 +166,7 @@
t-options='{"widget": "monetary", "display_currency": o.currency_id}'/>
</td>
</tr>
</tbody>
</table>
</div>
</div>