170 lines
8.2 KiB
HTML
170 lines
8.2 KiB
HTML
<report-body v-bind="$props">
|
|
<template v-slot:header>
|
|
<report-header v-bind="$props" v-bind:company-code="invoice.companyCode"></report-header>
|
|
</template>
|
|
<div class="grid-row">
|
|
<div class="grid-block">
|
|
<div class="columns vn-mb-lg">
|
|
<div class="size75">
|
|
<div class="size100 vn-mt-ml">
|
|
<table class="row-oriented ticket-info">
|
|
<tbody>
|
|
<tr>
|
|
<td class="font gray uppercase">{{$t('supplierId')}}</td>
|
|
<th>{{invoice.supplierId}}</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="font gray uppercase">{{$t('invoiceId')}}</td>
|
|
<th>{{invoice.supplierRef}}</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="font gray uppercase">{{$t('date')}}</td>
|
|
<th>{{formatDate(invoice.issued, '%d-%m-%Y')}}</th>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="size25">
|
|
<div class="panel">
|
|
<div class="header">{{$t('invoiceData')}}</div>
|
|
<div class="body">
|
|
<h3 class="uppercase">{{invoice.name}}</h3>
|
|
<div>{{invoice.postalAddress}}</div>
|
|
<div>{{invoice.postcodeCity}}</div>
|
|
<div>{{invoice.postCode}}, {{invoice.city}}, ({{invoice.province}})</div>
|
|
<div v-if="invoice.nif">{{$t('fiscalId')}}: {{invoice.nif}}</div>
|
|
<div v-if="invoice.phone">{{$t('phone')}}: {{invoice.phone}}</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="vn-mt-lg" v-for="entry in entries">
|
|
<div class="table-title clearfix">
|
|
<div class="pull-left">
|
|
<h2>{{$t('entry')}}</h2>
|
|
</div>
|
|
<div class="pull-left vn-mr-md">
|
|
<div class="field rectangle">
|
|
<span>{{entry.id}}</span>
|
|
</div>
|
|
</div>
|
|
<div class="pull-left">
|
|
<h2>{{$t('date')}}</h2>
|
|
</div>
|
|
<div class="pull-left">
|
|
<div class="field rectangle">
|
|
<span>{{formatDate(entry.landed, '%d-%m-%Y')}}</span>
|
|
</div>
|
|
</div>
|
|
<span id="nickname" class="pull-right">
|
|
<div class="pull-left">
|
|
<h2>{{$t('reference')}}</h2>
|
|
</div>
|
|
<div class="pull-left">
|
|
<div class="field rectangle">
|
|
<span>{{entry.reference}}</span>
|
|
</div>
|
|
</div>
|
|
</span>
|
|
</div>
|
|
<table class="column-oriented">
|
|
<thead>
|
|
<tr>
|
|
<th width="50%">{{$t('item')}}</th>
|
|
<th class="number">{{$t('quantity')}}</th>
|
|
<th class="number">{{$t('buyingValue')}}</th>
|
|
<th class="number">{{$t('amount')}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody v-for="buy in entry.buys" class="no-page-break">
|
|
<tr>
|
|
<td width="50%">{{buy.name}}</td>
|
|
<td class="number">{{buy.quantity}}</td>
|
|
<td class="number">{{buy.buyingValue | currency('EUR', $i18n.locale)}}</td>
|
|
<td class="number">{{buyImport(buy) | currency('EUR', $i18n.locale)}}</td>
|
|
</tr>
|
|
<tr class="description font light-gray">
|
|
<td colspan="4">
|
|
<span v-if="buy.value5"> <strong>{{buy.tag5}}</strong> {{buy.value5}} </span>
|
|
<span v-if="buy.value6"> <strong>{{buy.tag6}}</strong> {{buy.value6}} </span>
|
|
<span v-if="buy.value7"> <strong>{{buy.tag7}}</strong> {{buy.value7}} </span>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
<tfoot>
|
|
<tr>
|
|
<td colspan="3" class="font bold">
|
|
<span class="pull-right">{{$t('subtotal')}}</span>
|
|
</td>
|
|
<td class="number">{{entrySubtotal(entry) | currency('EUR', $i18n.locale)}}</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="columns vn-mt-xl">
|
|
<div id="signature" class="size50 pull-left no-page-break vn-pr-xs">
|
|
<div class="panel">
|
|
<div class="header">{{$t('payMethod')}}: {{invoice.payMethod}}</div>
|
|
<div class="body">
|
|
<div class="vn-mt-md">{{$t('signer.received')}}:</div>
|
|
<div class="vn-my-md">{{$t('signer.signed')}}:</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="taxes" class="size50 pull-right no-page-break vn-pl-xs vn-mt-md" v-if="taxes">
|
|
<table class="column-oriented">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="4">{{$t('taxBreakdown')}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr v-for="tax in taxes">
|
|
<td width="45%">{{tax.name}}</td>
|
|
<td width="25%" class="number">{{tax.taxableBase | currency('EUR', $i18n.locale)}}
|
|
</td>
|
|
<td>{{(tax.rate / 100) | percentage}}</td>
|
|
<td class="number">{{tax.vat | currency('EUR', $i18n.locale)}}</td>
|
|
</tr>
|
|
</tbody>
|
|
<tfoot>
|
|
<tr class="font bold">
|
|
<td width="45%">{{$t('subtotal')}}</td>
|
|
<td width="20%" class="number">
|
|
{{sumTotal(taxes, 'taxableBase') | currency('EUR', $i18n.locale)}}
|
|
</td>
|
|
<td></td>
|
|
<td class="number">{{sumTotal(taxes, 'vat') | currency('EUR', $i18n.locale)}}</td>
|
|
</tr>
|
|
<tr class="font bold">
|
|
<td colspan="2">{{$t('total')}}</td>
|
|
<td colspan="2" class="number">{{taxTotal() | currency('EUR', $i18n.locale)}}</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
|
|
<div class="panel" v-if="invoice.footNotes">
|
|
<div class="header">{{$t('notes')}}</div>
|
|
<div class="body">
|
|
<span>{{invoice.footNotes}}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="footer" class="vn-mt-xl">
|
|
<h2 class="centered bold">{{$t('footer')}}</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<template v-slot:footer>
|
|
<report-footer id="pageFooter" v-bind:company-code="invoice.companyCode" v-bind:left-text="$t('invoiceId')"
|
|
v-bind:center-text="invoice.name" v-bind="$props">
|
|
</report-footer>
|
|
</template>
|
|
</report-body>
|