319 lines
8.3 KiB
PHP
Executable File
319 lines
8.3 KiB
PHP
Executable File
<?php
|
|
$booking_id = $_GET['booking_id'];
|
|
$get_invoices_sql = mysqli_query($db, "SELECT branch.pu_name, emplyee.name AS emp_name, user.name AS user_name, invoices_free.id, invoices_free.date_time, tretment.name, tretment.number, invoices_free.discount, services.service, invoices_free.price, invoices_free.price_vat
|
|
FROM (((((((invoices_free
|
|
LEFT JOIN booking ON invoices_free.booking_id = booking.id)
|
|
LEFT JOIN booking_details ON invoices_free.booking_id = booking_details.booking_id)
|
|
LEFT JOIN tretment ON booking.tretment_id = tretment.id)
|
|
LEFT JOIN services ON booking_details.the_service = services.id)
|
|
LEFT JOIN branch ON booking_details.branch_id = branch.id)
|
|
LEFT JOIN emplyee ON booking_details.emplyee_id = emplyee.id)
|
|
LEFT JOIN user ON invoices_free.user_id = user.id)
|
|
WHERE invoices_free.booking_id='$booking_id' AND (booking_details.state = 7)
|
|
ORDER BY booking_details.date_time DESC LIMIT 1");
|
|
$invoices_row = mysqli_fetch_assoc($get_invoices_sql);
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>طباعة الفاتورة</title>
|
|
|
|
<!-- Normalize or reset CSS with your favorite library -->
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/7.0.0/normalize.min.css">
|
|
|
|
<!-- Load paper.css for happy printing -->
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/paper-css/0.3.0/paper.css">
|
|
|
|
<!-- Custom styles for this document -->
|
|
<link href="https://fonts.googleapis.com/css?family=Tangerine:700" rel="stylesheet" type="text/css">
|
|
|
|
<link rel="stylesheet" href="assets/css/mo2_style.css">
|
|
<style>
|
|
body {
|
|
font-family: 'Cairo', sans-serif !important;
|
|
}
|
|
</style>
|
|
|
|
<style>
|
|
@page { size: A4 }
|
|
body { font-size: 21pt; font-weight: 700; }
|
|
.mo_border { border-bottom: #000 solid 1px; padding-bottom: 15px; margin-bottom:15px; }
|
|
/*
|
|
@media print{
|
|
div#display {
|
|
display: flex;
|
|
height: auto;
|
|
width: 100%;
|
|
align-items: center;
|
|
}
|
|
}
|
|
*/
|
|
</style>
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body onload="print_f()" class="A4" dir="rtl" style="margin: 0 320px;">
|
|
<?php
|
|
|
|
require_once('assets/php/barcode/vendor/autoload.php');
|
|
$label = '';
|
|
$code = $invoices_row['id'];
|
|
$type = 'C128';
|
|
|
|
$generator = new Picqer\Barcode\BarcodeGeneratorPNG();
|
|
$code2 ='';
|
|
foreach(str_split($code) as $key => $c){
|
|
$code2 .=$c;
|
|
if(count(str_split($code)) != $key)
|
|
$code2 .=' ';
|
|
|
|
}
|
|
?>
|
|
|
|
<section>
|
|
<article>
|
|
|
|
<table width="100%" border="0">
|
|
|
|
<tbody><tr>
|
|
<td colspan="4" height="25px" align="center">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><img src="<?=$campany_info['logo-sm']?>" style="margin-left: 25px;width: 100%;"></td>
|
|
<td colspan="3">
|
|
<div class="mo_border"><h3><?=$campany_info['company_name']?></h3></div>
|
|
<div class="mo_border"><b>الفرع</b> : <?=$invoices_row['pu_name']?></div>
|
|
<div class="mo_border"><b>الرقم الضريبي</b> : <?=$campany_info['vat_number']?></div>
|
|
<div class="mo_border" style="display: flex;justify-content: space-between;"><span><b>الموظف</b> : <?=$invoices_row['user_name']?></span> <span style="margin-left: 25px;"><b>الفني</b> : <?=$invoices_row['emp_name']?></span></div>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td colspan="4" height="25px" align="center">
|
|
</td>
|
|
</tr>
|
|
</tbody></table>
|
|
|
|
<div style="text-align: center;">
|
|
<h1>فاتورة ضريبية مبسطة</h1>
|
|
<h3>Simplified Tax Invoice</h3>
|
|
</div>
|
|
|
|
<table width="100%" border="0">
|
|
<tbody>
|
|
<tr>
|
|
<td colspan="4" height="25px" align="center">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="mo_border"><b>رقم الفاتورة</b></td>
|
|
<td class="mo_border"><b>التاريخ</b></td>
|
|
<td class="mo_border"><b>العميل</b></td>
|
|
<td class="mo_border"><b>جوال العميل</b></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="mo_border"><b><?=$invoices_row['id']?></b></td>
|
|
<td class="mo_border"><?=date('d-m-Y h:i A', strtotime($invoices_row['date_time']))?></td>
|
|
<td class="mo_border"><?=$invoices_row['name']?></td>
|
|
<td class="mo_border">0<?=$invoices_row['number']?></td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
<table width="100%" border="0">
|
|
|
|
<tbody>
|
|
<tr>
|
|
<td colspan="4" height="25px" align="center">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="mo_border" width="9%"><b></b></td>
|
|
<td class="mo_border" width="25%"><b>نوع الخدمة</b></td>
|
|
<td class="mo_border"><b>السعر</b></td>
|
|
<td class="mo_border" width="25%"><b>الإجمالي غير شامل الضريبة</b></td>
|
|
</tr>
|
|
|
|
|
|
|
|
<?php
|
|
if (!empty($invoices_row['discount'])) {
|
|
?>
|
|
<tr>
|
|
<td class="mo_border">1</td>
|
|
<td class="mo_border"><?=$invoices_row['service']?></td>
|
|
<td class="mo_border"><?=round($invoices_row['price'],2)?></td>
|
|
<td class="mo_border"><?=round($invoices_row['price'],2)?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="mo_border"></td>
|
|
<td class="mo_border">خصم</td>
|
|
<td class="mo_border">-<?php if(round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2) == 0) {echo round($invoices_row['price'],2);}else {echo round($invoices_row['discount'],2);}?></td>
|
|
<td class="mo_border"><?php if(round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2) == 0) {echo 0;}else {echo round($invoices_row['price'] - $invoices_row['discount'],2);}?></td>
|
|
</tr>
|
|
|
|
<?php
|
|
} else {
|
|
?>
|
|
<tr>
|
|
<td class="mo_border">1</td>
|
|
<td class="mo_border"><?=$invoices_row['service']?></td>
|
|
<td class="mo_border"><?=round($invoices_row['price'],2)?></td>
|
|
<td class="mo_border"><?=round($invoices_row['price'],2)?></td>
|
|
</tr>
|
|
<?php
|
|
}
|
|
?>
|
|
<tr>
|
|
<td class="mo_border"></td>
|
|
<td class="mo_border"></td>
|
|
<td class="mo_border">ضريبة القيمة المضافة <br> V.A.T 15%</td>
|
|
<td class="mo_border"><?php if(round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2) == 0) {echo 0;}else {echo round($invoices_row['price_vat'],2);}?></td>
|
|
</tr>
|
|
|
|
|
|
<tr>
|
|
<td class="mo_border"></td>
|
|
<td class="mo_border"></td>
|
|
<td class="mo_border">الإجمالي شامل ضريبة القيمة المضافة <br></td>
|
|
<td class="mo_border">
|
|
<?php
|
|
if (round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2) == 0) {
|
|
?>
|
|
<b>مجاني</b>
|
|
<?php
|
|
} else {
|
|
?>
|
|
<b><?=round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2)?> ريال سعودي</b>
|
|
<?php
|
|
}
|
|
?>
|
|
</td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td colspan="4" height="75px" align="center">
|
|
</td>
|
|
</tr>
|
|
|
|
<?/*
|
|
<tr>
|
|
<td style="direction: ltr;" colspan="4" height="35px" align="center">
|
|
<div id="field">
|
|
<center><large><b><?php echo $label ?></b></large></center>
|
|
<img src="data:image/png;base64,<?php echo base64_encode($generator->getBarcode($code, $type)) ?>" style="width: 50%;">
|
|
<div id="code"><?php echo $code2 ?></div>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
*/?>
|
|
|
|
<?php
|
|
/*
|
|
* QR Encoding Functions
|
|
*/
|
|
|
|
function __getLength($value) {
|
|
return strlen($value);
|
|
}
|
|
|
|
function __toHex($value) {
|
|
return pack("H*", sprintf("%02X", $value));
|
|
}
|
|
|
|
function __toString($__tag, $__value, $__length) {
|
|
$value = (string) $__value;
|
|
return __toHex($__tag) . __toHex($__length) . $value;
|
|
}
|
|
|
|
function __getTLV($dataToEncode) {
|
|
$__TLVS = '';
|
|
for ($i = 0; $i < count($dataToEncode); $i++) {
|
|
$__tag = $dataToEncode[$i][0];
|
|
$__value = $dataToEncode[$i][1];
|
|
$__length = __getLength($__value);
|
|
$__TLVS .= __toString($__tag, $__value, $__length);
|
|
}
|
|
|
|
return $__TLVS;
|
|
}
|
|
|
|
|
|
|
|
$dataToEncode = [
|
|
[1, $campany_info['company_name']],
|
|
[2, $campany_info['vat_number']],
|
|
[3, date("Y-m-d\TH:i:s",strtotime($invoices_row['date_time']))],
|
|
[4, round($invoices_row['price_vat'] + ($invoices_row['price'] - $invoices_row['discount']),2)],
|
|
[5, round($invoices_row['price_vat'],2)]
|
|
];
|
|
|
|
$__TLV = __getTLV($dataToEncode);
|
|
$__QR = base64_encode($__TLV);
|
|
|
|
?>
|
|
|
|
<td colspan="4" align="center" height="35px">
|
|
<img src="https://chart.googleapis.com/chart?chs=215x215&cht=qr&chl=<?=$__QR?>&chld=L|0&choe=UTF-8" width="215" height="215">
|
|
<br>
|
|
--- Check Closed ---
|
|
</td>
|
|
<tr>
|
|
<td colspan="4" align="center">
|
|
<h3>شكراً على زيارتكم</h3>
|
|
<h3></h3>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td colspan="4" height="75px" align="center">
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td colspan="4" align="center">
|
|
<?=$campany_info['link']?>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td style="direction: ltr;" colspan="4" height="35px" align="center">
|
|
<?= date('d-m-Y h:i A', strtotime($date_time));?>
|
|
</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
</article>
|
|
</section>
|
|
|
|
<script type="text/javascript">
|
|
window.onafterprint = function(e){
|
|
closePrintView();
|
|
};
|
|
|
|
function print_f(){
|
|
window.print();
|
|
}
|
|
|
|
function closePrintView() {
|
|
window.close();
|
|
}
|
|
</script>
|
|
|
|
</body>
|
|
|
|
</html>
|