Fall 5041: Anpassungen Rechnungsreport, US01 umgesetzt
							parent
							
								
									f8c775176a
								
							
						
					
					
						commit
						06c0d8f1a9
					
				|  | @ -2,3 +2,4 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| from . import report_helper | from . import report_helper | ||||||
|  | from . import account_invoice | ||||||
|  |  | ||||||
|  | @ -0,0 +1,21 @@ | ||||||
|  | # Copyright 2018-Today datenpol gmbh (<http://www.datenpol.at>) | ||||||
|  | # License OPL-1 or later (https://www.odoo.com/documentation/user/11.0/legal/licenses/licenses.html#licenses). | ||||||
|  | 
 | ||||||
|  | from odoo import api, models | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | class AccountInvoice(models.Model): | ||||||
|  |     _inherit = 'account.invoice' | ||||||
|  | 
 | ||||||
|  |     @api.multi | ||||||
|  |     def order_lines_layouted(self): | ||||||
|  |         res = super(AccountInvoice, self).order_lines_layouted() | ||||||
|  |         uncategorized = False | ||||||
|  |         # Rechnungszeilen ohne Kategorie löschen und an den Anfang stellen | ||||||
|  |         for idx1, page in enumerate(res): | ||||||
|  |             for idx2, category in enumerate(page): | ||||||
|  |                 if category.get('name') == 'Uncategorized': | ||||||
|  |                     uncategorized = page.pop(idx2) | ||||||
|  |             if uncategorized: | ||||||
|  |                 res[idx1] = [uncategorized] + res[idx1] | ||||||
|  |         return res | ||||||
|  | @ -67,73 +67,83 @@ | ||||||
|                     <span class="col-xs-2" t-field="o.name"/> |                     <span class="col-xs-2" t-field="o.name"/> | ||||||
|                 </div> |                 </div> | ||||||
|                 <div class="row mt32"/> |                 <div class="row mt32"/> | ||||||
|                 <table class="table table-condensed"> |                 <t t-foreach="o.order_lines_layouted()" t-as="page" name="lines_layouted"> | ||||||
|                     <t t-set="discount_is_set" t-value="field_set_in_lines(o.invoice_line_ids, 'discount')"/> |                     <table class="table table-condensed"> | ||||||
|                     <thead class="table-header"> |                         <t t-set="discount_is_set" t-value="field_set_in_lines(o.invoice_line_ids, 'discount')"/> | ||||||
|                         <tr> |                         <thead class="table-header"> | ||||||
|                             <th class="text-center">Pos.</th> |  | ||||||
|                             <th class="text-center">Anzahl</th> |  | ||||||
|                             <th class="text-right">Gewicht</th> |  | ||||||
|                             <th class="text-right"></th> |  | ||||||
|                             <th class="text-left">Artikel</th> |  | ||||||
|                             <th class="text-right">EP</th> |  | ||||||
|                             <th class="text-right" t-if="discount_is_set">Rabatt</th> |  | ||||||
|                             <th class="text-right">Gesamtpreis</th> |  | ||||||
|                         </tr> |  | ||||||
|                     </thead> |  | ||||||
| 
 |  | ||||||
|                     <tbody class="invoice-tbody"> |  | ||||||
|                         <t t-set="pos_nr" t-value="0"/> |  | ||||||
|                         <t t-foreach="o.invoice_line_ids" t-as="invoice_line"> |  | ||||||
|                             <tr> |                             <tr> | ||||||
|                                 <t t-set="pos_nr" t-value="pos_nr+1"/> |                                 <th class="text-center">Pos.</th> | ||||||
|                                 <td class="text-center"> |                                 <th class="text-center">Anzahl</th> | ||||||
|                                     <span t-esc="pos_nr"/> |                                 <th class="text-right">Gewicht</th> | ||||||
|                                 </td> |                                 <th class="text-right"></th> | ||||||
|                                 <td class="text-right"> |                                 <th class="text-left">Artikel</th> | ||||||
|                                     <span t-field="invoice_line.quantity"/> |                                 <th class="text-right">EP</th> | ||||||
|                                 </td> |                                 <th class="text-right" t-if="discount_is_set">Rabatt</th> | ||||||
|                                 <td class="text-right"> |                                 <th class="text-right">Gesamtpreis</th> | ||||||
|                                     <span t-field="invoice_line.product_id.weight"/> kg |  | ||||||
|                                 </td> |  | ||||||
|                                 <td class="text-right"> |  | ||||||
|                                 </td> |  | ||||||
|                                 <td rowspan="2" class="text-left"> |  | ||||||
|                                     <t t-if="invoice_line.product_id.default_code"> |  | ||||||
|                                         <strong> |  | ||||||
|                                             <span t-field="invoice_line.product_id.default_code"/> |  | ||||||
|                                         </strong> |  | ||||||
|                                         <br/> |  | ||||||
|                                     </t> |  | ||||||
|                                     <span> |  | ||||||
|                                         <strong>Zolltarif Nr.:</strong> |  | ||||||
|                                         <span t-field="invoice_line.product_id.intrastat_id"/> |  | ||||||
|                                     </span> |  | ||||||
|                                     <br/> |  | ||||||
|                                     <span t-field="invoice_line.name"/> |  | ||||||
|                                 </td> |  | ||||||
|                                 <td rowspan="2" class="text-right"> |  | ||||||
|                                     <span t-field="invoice_line.price_unit"/> |  | ||||||
|                                 </td> |  | ||||||
|                                 <td rowspan="2" class="text-right" t-if="discount_is_set"> |  | ||||||
|                                     <span t-field="invoice_line.discount"/> |  | ||||||
|                                 </td> |  | ||||||
|                                 <td rowspan="2" class="text-right"> |  | ||||||
|                                     <span t-field="invoice_line.price_subtotal"/> |  | ||||||
|                                 </td> |  | ||||||
|                             </tr> |                             </tr> | ||||||
|  |                         </thead> | ||||||
| 
 | 
 | ||||||
|                             <tr> |                         <tbody class="invoice-tbody"> | ||||||
|                                 <td colspan="4" style="border: 0;text-align: center;"> |                             <t t-set="pos_nr" t-value="0"/> | ||||||
|                                     <!-- Fall 5078, Rechnung - keine Bilder mehr |                             <t t-foreach="page" t-as="layout_category"> | ||||||
|                                     <img t-if="invoice_line.product_id.image_medium" |                                 <tr t-if="layout_category['name'] != 'Uncategorized'"> | ||||||
|                                          t-att-src="'data:image/png;base64,%s' % invoice_line.product_id.image_medium.decode()"/> |                                     <td colspan="7"> | ||||||
|                                     --> |                                         <strong><t t-esc="layout_category['name']"/></strong> | ||||||
|                                 </td> |                                     </td> | ||||||
|                             </tr> |                                 </tr> | ||||||
|                         </t> |                                 <t t-foreach="layout_category['lines']" t-as="invoice_line"> | ||||||
|                     </tbody> |                                 <!-- <t t-foreach="o.invoice_line_ids" t-as="invoice_line"> --> | ||||||
|                 </table> |                                     <tr> | ||||||
|  |                                         <t t-set="pos_nr" t-value="pos_nr+1"/> | ||||||
|  |                                         <td class="text-center"> | ||||||
|  |                                             <span t-esc="pos_nr"/> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td class="text-right"> | ||||||
|  |                                             <span t-field="invoice_line.quantity"/> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td class="text-right"> | ||||||
|  |                                             <span t-field="invoice_line.product_id.weight"/> kg | ||||||
|  |                                         </td> | ||||||
|  |                                         <td class="text-right"> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td rowspan="2" class="text-left"> | ||||||
|  |                                             <t t-if="invoice_line.product_id.default_code"> | ||||||
|  |                                                 <strong> | ||||||
|  |                                                     <span t-field="invoice_line.product_id.default_code"/> | ||||||
|  |                                                 </strong> | ||||||
|  |                                                 <br/> | ||||||
|  |                                             </t> | ||||||
|  |                                             <span> | ||||||
|  |                                                 <strong>Zolltarif Nr.:</strong> | ||||||
|  |                                                 <span t-field="invoice_line.product_id.intrastat_id"/> | ||||||
|  |                                             </span> | ||||||
|  |                                             <br/> | ||||||
|  |                                             <span t-field="invoice_line.name"/> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td rowspan="2" class="text-right"> | ||||||
|  |                                             <span t-field="invoice_line.price_unit"/> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td rowspan="2" class="text-right" t-if="discount_is_set"> | ||||||
|  |                                             <span t-field="invoice_line.discount"/> | ||||||
|  |                                         </td> | ||||||
|  |                                         <td rowspan="2" class="text-right"> | ||||||
|  |                                             <span t-field="invoice_line.price_subtotal"/> | ||||||
|  |                                         </td> | ||||||
|  |                                     </tr> | ||||||
|  | 
 | ||||||
|  |                                     <tr> | ||||||
|  |                                         <td colspan="4" style="border: 0;text-align: center;"> | ||||||
|  |                                             <!-- Fall 5078, Rechnung - keine Bilder mehr | ||||||
|  |                                             <img t-if="invoice_line.product_id.image_medium" | ||||||
|  |                                                  t-att-src="'data:image/png;base64,%s' % invoice_line.product_id.image_medium.decode()"/> | ||||||
|  |                                             --> | ||||||
|  |                                         </td> | ||||||
|  |                                     </tr> | ||||||
|  |                                 </t> | ||||||
|  |                             </t> | ||||||
|  |                         </tbody> | ||||||
|  |                     </table> | ||||||
|  |                 </t> | ||||||
|                 <div class="row"> |                 <div class="row"> | ||||||
|                     <div class="col-xs-4 pull-right"> |                     <div class="col-xs-4 pull-right"> | ||||||
|                         <table class="table table-condensed"> |                         <table class="table table-condensed"> | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue