نحوه صادرات بارکد منحصر به فرد به اکسل در لاراول
سلام صنعتگر
چه خبر؟ امید همه خوبن در این آموزش مثالی برای صادرات بارکد در اکسل در لاراول با استفاده از جاوا اسکریپت می زنم.
به راحتی می توانید بارکد را در لاراول 5، لاراول 6، لاراول 7، لاراول 8، لاراول 9 و لاراول 10 صادر کنید.
مرحله 1
در مرحله اول، اگر لاراول را در سیستم خود نصب نکرده اید، می توانید دستور زیر را اجرا کنید و پروژه جدید لاراول را دریافت کنید.
composer create-project --prefer-dist laravel/laravel export-barcode
گام 2
اکنون به نصب بسته بارکد لاراول نیاز داریم. بسته های بارکد زیادی برای لاراول داریم. در میان آنها می توانید از هر کدام استفاده کنید. در این صورت من بسته picqer/php-barcode-generator را برای بارکد مولد نصب می کنم، به این ترتیب می توانیم از روش آن استفاده کنیم. بنابراین ترمینال خود را باز کنید و دستور زیر را اجرا کنید.
composer require picqer/php-barcode-generator
مرحله 3
در این مرحله یک مسیر برای نمونه تست ایجاد می کنیم. بنابراین، اجازه دهید مسیر جدیدی را روی آن فایل اضافه کنیم.
routes/web.php
<?php
Route::view('export-barcode', 'export-barcode');
اکنون باید export-barcode.blade.php را برای نمایش بارکد ایجاد کنیم. بنابراین بیایید فایل blade را مانند کد زیر ایجاد کنیم:
resources/views/export-barcode.blade.php
مرحله 4
این بخش اصلی این آموزش است. در اینجا ما عملیات اصلی خود را برای صادرات بارکد به اکسل انجام خواهیم داد. توجه داشته باشید که بارکدهای تولید شده با فرمت base64 هستند. بنابراین هر زمان که نیاز به صادرات بارکد برای اکسل داشته باشیم. ابتدا باید بارکد تولید را در حافظه محلی خود ذخیره کنید. در اینجا کد ذخیره تصویر base64 به محلی است.
@php
$generatorPNG = new Picqer\Barcode\BarcodeGeneratorPNG();
$somecode = time() . '.png'; //left as excersise for the reader.
$baseImage="data:image/png;base64," . base64_encode($generatorPNG->getBarcode('000005263635', $generatorPNG::TYPE_CODE_128));
$img = str_replace('data:image/png;base64,', '', $baseImage);
$img = str_replace(' ', '+', $img);
$data = base64_decode($img);
$path = public_path() . '/barcode/' . $somecode;
file_put_contents($path, $data);
@endphp
پس از ذخیره تصویر در محلی از مسیر ذخیره شده تصویر در جدول رندر شده استفاده کنید.
مرحله 5
در نهایت ما به یک تابع js نیاز داریم که اکسل را صادر کند. کد زیر تابع js است.
$(function() {
$(".exportToExcel").click(function(event) {
console.log("Exporting XLS");
$("#studentTable").table2excel({
exclude: ".excludeThisClass",
name: $("#studentTable").data("tableName"),
filename: "StudentTable.xls",
preserveColors: false
});
});
});
فراموش نکنید که پیوند CDN را در زیر وارد کنید.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdn.rawgit.com/rainabba/jquery-table2excel/1.1.0/dist/jquery.table2excel.min.js"></script>
خروجی
در اینجا عکس فوری از خروجی ما است.
توجه: اگر نمیخواهید همه بارکدها را در فضای ذخیرهسازی محلی خود ذخیره کنید، میتوانید درخواست Ajax را بزنید تا تمام تصویر بارکد پس از صادرات حذف شود.