Files
crm.e5.pl/modules/EcmInvoiceOuts/PDFTemplate/tpl/content_k.php
2024-04-27 09:23:34 +02:00

420 lines
14 KiB
PHP

<?php
$w = "35"; // first column width
$w3 = "35";
$w2 = "25"; // second column width
$content = '
<table style="width: 100%; font-size: 8pt;">
<tr>
<td style="width: ' . $w . '%">
<b>' . $labels['LBL_PDF_CONTENT_INVOICE_FOR'] . '</b>
</td>
<td style="width: ' . $w3 . '%">';
if ($focus->parent_shipping_address_name != '') {
$content .= '<b>' . $labels['LBL_PDF_CONTENT_DELIVERY'] . '</b>';
}
$content .= '</td>
<td style="width: ' . $w2 . '%">';
if ($focus->parent_payer_address_name != '') {
$content .= '<b>' . $labels['LBL_PDF_CONTENT_PAYER'] . '</b>';
}
$content .= '</td>
<td style="text-align: right"></td>
</tr>
<tr>
<td style="width: ' . $w . '%">
' . $focus->parent_name . '
</td>
<td style="width: ' . $w3 . '%">
' . $focus->parent_shipping_address_name . '
</td>
<td style="width: ' . $w2 . '%">' . $focus->parent_payer_address_name . '</td>
<td style="text-align: right"></td>
</tr>
<tr>
<td style="width: ' . $w . '%">
' . $focus->parent_address_street . '
</td>
<td style="width: ' . $w3 . '%">
' . $focus->parent_shipping_address_street . '
</td>
<td style="width: ' . $w2 . '%">
' . $focus->parent_payer_address_street . '
</td>
<td style="text-align: right">
</td>
</tr>
<tr>
<td style="width: ' . $w . '%">
' . $focus->parent_address_postalcode . ' ' . $focus->parent_address_city;
if (!is_null($focus->parent_address_country) & $focus->parent_address_country != '')
$content .= ', ' . $focus->parent_address_country;
$content .= '
</td>
<td style="width: ' . $w3 . '%">
' . $focus->parent_shipping_address_postalcode . ' ' . $focus->parent_shipping_address_city;
if (!is_null($focus->parent_shipping_address_country) & $focus->parent_shipping_address_country != '')
$content .= ', ' . $focus->parent_shipping_address_country;
$content .= '
</td>
<td style="width: ' . $w2 . '%">
' . $focus->parent_payer_address_postalcode . ' ' . $focus->parent_payer_address_city;
if (!is_null($focus->parent_payer_address_country) & $focus->parent_payer_address_country != '')
$content .= ', ' . $focus->parent_payer_address_country;
$content .= '
</td>
<td style="text-align: right">
</td>
</tr>';
$content .= '
<tr>
<td valign="top" style="width: ' . $w . '%">';
if (!is_null($focus->parent_nip) && $focus->parent_nip) {
$content .= $labels['LBL_PDF_CONTENT_NIP'] . ' ' . $focus->parent_nip;
$nip = true;
}
if (!is_null($focus->parent_iln) && $focus->parent_iln) {
if ($nip) $content .= '<br>';
$nip = false;
$content .= 'ILN: ' . $focus->parent_iln;
}
$content .= '
</td>';
$content .= '
<td valign="top" style="width: ' . $w3 . '%">';
if (!is_null($focus->parent_shipping_address_nip) && $focus->parent_shipping_address_nip) {
$content .= $labels['LBL_PDF_CONTENT_NIP'] . ' ' . $focus->parent_shipping_address_nip;
$nip = true;
}
if (!is_null($focus->parent_shipping_iln) && $focus->parent_shipping_iln) {
if ($nip) $content .= '<br>';
$nip = false;
$content .= 'ILN: ' . $focus->parent_shipping_iln;
}
$content .= '
</td>';
$content .= '
<td valign="top" style="width: ' . $w3 . '%">';
if (!is_null($focus->parent_payer_address_nip) && $focus->parent_payer_address_nip) {
$content .= $labels['LBL_PDF_CONTENT_NIP'] . ' ' . $focus->parent_payer_address_nip;
$nip = true;
}
if (!is_null($focus->parent_payer_iln) && $focus->parent_payer_iln) {
if ($nip) $content .= '<br>';
$nip = false;
$content .= 'ILN: ' . $focus->parent_payer_iln;
}
$content .= '</td>
<td colspan="0" valign="top" style="text-align: right">
</td>
</tr>';
$content .= '
</table>
';
if ($focus->name && $focus->name != '') {
$content .= '
<table style="width: 100%; text-align: center">
<tr><td>
<b>' . $focus->name . '</b>
</td></tr>
</table>
';
}
$content .= '<br><table width="100%" style="font-size: 7pt;text-align:left;vertical-align:top;">
<tr><td width="18%" >' . $labels['LBL_PDF_CONTENT_REGISTER_DATE'] . '<br>' . $labels['LBL_PLACE_PDF'] . '<br>' . $labels['LBL_PDF_CONTENT_SELL_DATE'] . '<br>' . $corl . '</td>
<td style="text-align: left;" width="35%"><b>' . $focus->register_date . '</b><br><b>Warszawa</b><br><b>' . $focus->sell_date . '</b>' . $korekta . '</td>
<td rowspan="2" style="text-align: left;vertical-align:top;">';
if ($focus->wz_name != '') {
$content .= $labels['LBL_PDF_CONTENT_PARENT_DOCUMENT_WZ'] . ':<br>';
}
if ($focus->order_no != '') {
$content .= $labels['LBL_PDF_CONTENT_PARENT_DOCUMENT_NO'] . ':<br>';
}
if ($focus->supplier_code != '') {
$content .= $labels['LBL_SUPPLIER_CODE'] . ':<br>';
}
if ($focus->payment_date != '') {
$content .= $labels['LBL_PAYMENT_DATE_PDF'] . ':<br>';
}
if ($focus->ecmpaymentcondition_id != '') {
$content .= $labels['LBL_PAYMENT_METHOD_PDF'] . ':<br>';
}
$pay = new EcmPaymentCondition();
$pay->retrieve($focus->ecmpaymentcondition_id);
$content .= '</td>
<td rowspan="2" style="vertical-align:top;">';
if ($focus->wz_name != '') {
$content .= '<b>' . $focus->wz_name . '</b><br>';
}
if ($focus->order_no != '') {
$content .= '<b>' . $focus->order_no . '</b><br>';
}
if ($focus->supplier_code != '') {
$content .= '<b>' . $focus->supplier_code . '</b><br>';
}
if ($focus->payment_date != '') {
$content .= '<b>' . date('d.m.Y', strtotime($focus->payment_date)) . '</b><br>';
}
if ($focus->ecmpaymentcondition_id != '') {
$content .= '<b>' . $GLOBALS['app_list_strings']['ecmpaymentconditions_payment_method_dom'][$pay->payment_method] . '</b><br>';
}
$content .= '</td></tr></table><br>';
// start items table
$columns = array();
$columns['position'] = array(
'field' => array(
'position'
),
'label' => 'Lp.',
'align' => 'center'
);
$columns['name'] = array(
'field' => array(
'name',
'product_code'
),
'label' => 'Nazwa<br>Indeks',
'align' => 'left'
);
if ($recipient_code == 1) {
$columns['recipient_code'] = array(
'field' => array(
'recipient_code'
),
'label' => 'Kod Tow.',
'align' => 'center'
);
}
$columns['qty'] = array(
'field' => array(
'quantity',
'unit_name'
),
'label' => 'Ilość<br>J.m.',
'align' => 'right'
);
$columns['price_netto'] = array(
'field' => array(
'price_netto'
),
'label' => 'Cena netto',
'align' => 'right'
);
$columns['total_netto'] = array(
'field' => array(
'total_netto'
),
'label' => 'Wartość<br>netto',
'align' => 'right'
);
$columns['ecmvat_name'] = array(
'field' => array(
'ecmvat_name'
),
'label' => 'VAT<br>(%)',
'align' => 'center'
);
$columns['total_vat'] = array(
'field' => array(
'total_vat'
),
'label' => 'Wartość<br>VAT',
'align' => 'right'
);
$columns['total_brutto'] = array(
'field' => array(
'total_brutto'
),
'label' => 'Wartość<br>brutto',
'align' => 'right'
);
// set widths
$totals = array();
$columns['position']['width'] = '5';
$columns['name']['width'] = '41';
if ($recipient_code == 1) {
$columns['recipient_code']['width'] = '10';
}
$columns['qty']['width'] = '10';
$columns['price_netto']['width'] = '10';
$columns['total_netto']['width'] = '10';
$columns['ecmvat_name']['width'] = '4';
$columns['total_vat']['width'] = '10';
$columns['total_brutto']['width'] = '10';
// rysujemy :)
$content .= '
<table style="width: 100%; font-size: 7pt; border: 0.5 solid black; border-collapse: collapse;"><thead>
<tr>
';
foreach ($columns as $col) {
$content .= '
<th style="border: 0.5 solid black; width: ' . $col['width'] . '%;background-color: #E9E9E9;">' . $col['label'] . '</th>
';
}
$content .= '
</tr></thead><tbody>
';
$counter = 1;
foreach ($positions as $pos) {
$content .= '<tr>';
foreach ($columns as $col) {
$content .= '<td style="border: 0.5 solid black; text-align: ' . $col['align'] . ';">';
foreach ($col['field'] as $f) {
if (!$pos[$f] || $pos[$f] == '')
$pos[$f] = '-';
$content .= $pos[$f] . '<br>';
}
$content .= '</td>';
}
$content .= '</tr>';
}
$content .= '
</tbody></table>
';
// summary table
// get currency symbol
$c = new Currency();
$c->retrieve($focus->currency_id);
$symbol = $c->symbol;
unset($c);
$content .= '
<br>
<table style="font-size: 9pt; border: 0.5 solid black; border-collapse: collapse; width: 300px; margin-left: 60%">
';
$content .= '
<tr>
<td style="font-size: 7pt; border: 0.5 solid black; width: 23%;text-align: center;">
<b>VAT (%)</b>
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: center;">
<b>Wartość netto</b>
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: center;">
<b>Wartość VAT</b>
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 27%;text-align: center;">
<b>Wartość brutto</b>
</td>';
$content .= '</tr>
';
$vats = explode(",", $focus->vats_summary);
foreach ($vats as $v) {
if ($v == '') continue;
$v2 = explode(":", $v);
$content .= '
<tr>
<td style="font-size: 7pt; border: 0.5 solid black; width: 23%;text-align: center;">
' . $v2[0] . '
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: right;">
' . format_number($v2[1]) . '
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: right;">
' . format_number($v2[2]) . '
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 27%;text-align: right;">
' . format_number($v2[3]) . '
</td></tr>';
}
$total_paid_vat = 0;
$total_paid_netto = 0;
if ($focus->prepaid != '') {
$vat_value = substr($k,0,-1)+'';
if (strlen($vat_value) == 1) $vat_value = '0'.$vat_value;
$paid_netto = round($focus->prepaid / 1.23,2);
$paid_vat = $focus->prepaid - $paid_netto;
$total_paid_netto += $paid_netto;
$total_paid_vat += $paid_vat;
$content .= '
<tr>
<td style="font-size: 7pt; border: 0.5 solid black; width: 23%;text-align: center;">
23%
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: right;">
-' .format_number($paid_netto). '
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 25%;text-align: right;">
-' .format_number($paid_vat). '
</td>
<td style="font-size: 7pt; border: 0.5 solid black; width: 27%;text-align: right;">
-' . format_number($focus->prepaid) . '
</td></tr>';
}
// totals
$content .= '
<tr>
<td style="font-size: 6.5pt; border: 0.5 solid black; width: 23%;text-align: center;background-color: #E9E9E9;">
<b>Razem</b>
</td>
<td style="font-size: 6.5pt; border: 0.5 solid black; width: 25%;text-align: right;background-color: #E9E9E9;">
<b>' . format_number($focus->total_netto-$total_paid_netto) . '</b>
</td>
<td style="font-size: 6.5pt; border: 0.5 solid black; width: 25%;text-align: right;background-color: #E9E9E9;">
<b>' . format_number($focus->total_vat-$total_paid_vat) . '</b>
</td>
<td style="font-size: 6.5pt; border: 0.5 solid black; width: 27%;text-align: right;background-color: #E9E9E9;">
<b>' . format_number($focus->total_brutto-$focus->prepaid) . '</b>
</td></tr>';
$left_to_paid = $focus->total_brutto - $focus->paid_val - $focus->prepaid;
$content .= '
</table>
<table style="font-size: 7pt;">';
if ($focus->prepaid != '') {
$content .= '<tr><td>FV przedpłatowa:</td><td style="text-align: right;"><b>' . $focus->prepaid_nr . '</b></td><td style="text-align:left;"></td></tr>';
}
$content .= '<tr><td>' . $labels['LBL_PDF_TO_PAY'] . '</td><td style="text-align: right;"><b>' . format_number($focus->total_brutto) . ' ' . $symbol . '</b></td><td></td></tr>';
if ($focus->prepaid != '') {
$content .= '<tr><td>Przedpłata</td><td style="text-align: right;"><b>' . format_number($focus->prepaid) . ' ' . $symbol . '</b></td><td style="text-align:left;"></td></tr>';
}
if ($focus->paid_val != '') {
if ($focus->paid_val != 0) $pay_text = $GLOBALS['app_list_strings']['ecmpaymentconditions_payment_method_dom'][$focus->payment_method_paid];
$content .= '<tr><td>' . $labels['LBL_PDF_PAID'] . '</td><td style="text-align: right;"><b>' . format_number($focus->paid_val) . ' ' . $symbol . '</b></td><td style="text-align:left;">' . $pay_text . '</td></tr>';
}
if ($focus->ecmpaymentcondition_id != '') {
$q = $db->query("select name from ecmpaymentconditions where id='$focus->ecmpaymentcondition_id'");
$r = $db->fetchByAssoc($q);
//$paid_text='w Terminie <b>'.$r['name'].'</b> do <b>'.date('d.m.Y',strtotime($focus->payment_date)).'</b> '.$GLOBALS['app_list_strings']['payment_method_dom'][$focus->payment_method];
} else {
if ($focus->payment_date != '') {
$dni = (strtotime($focus->payment_date) - strtotime($focus->sell_date)) / (3600 * 24);
//$paid_text='w Terminie <b>'.$dni.' dni</b> do <b>'.date('d.m.Y',strtotime($focus->payment_date)).'</b> '.$GLOBALS['app_list_strings']['payment_method_dom'][$focus->payment_method];
}
}
$content .= '<tr><td>' . $labels['LBL_PDF_LEFT_TO_PAID'] . '</td><td style="text-align: right;"><b>' . format_number($left_to_paid) . ' ' . $symbol . '</b></td><td style="text-align:left;">' . $paid_text . '</td></tr>
</table>';
if ($focus->currency_id != 'PLN') {
//get currency date
$dd = $GLOBALS['db']->fetchByAssoc($GLOBALS['db']->query("SELECT date, value FROM currency_nbp_archive WHERE currency_id='" . $focus->currency_id . "' AND nbp_table_name='" . $focus->currency_table . "' "));
$content .= "<p style='font-size: 7pt;'>Wartość VAT w zł: " . format_number(($focus->total_vat * $dd['value'])) . ". Przeliczowo wg. kursu NBP (" . $focus->currency_table . ": " . format_number($dd['value'], 4, 4) . " zł) z dnia " . $dd['date'] . '</p>';
}
$content .= '<p style="font-size: 7pt;">' . $labels['LBL_PDF_CONTENT_ISSUED_BY'] . ' <b>' . $user->full_name . '</b></p>
<br><br>
' . $focus->pdf_text . '
';