What's wrong with my code, I tried to export my data table using framework Laravel. The file is downloaded with empty content.
StockModel.php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Stock extends Model {
protected $table = 'stock_tb';
protected $primaryKey = 'id';
protected $fillable = ['stock_id', 'input_date', 'quantity'];
}
AdminController.php
use Excel;
use App\Stock;
use App\Exports\StockExport;
class adminController extends Controller {
public function __construct() { }
public function printStockReport(){
return Excel::download(new StockExport('07/01/2020'), 'ado.xlsx');
}
StockExport.php
namespace App\Exports;
use App\Stock;
use Maatwebsite\Excel\Concerns\FromQuery;
class StockExport implements FromQuery
{
protected $id;
public function __construct($date_var)
{
$this->date = $date_var;
}
public function query()
{
return Stock::query()->where('input_date', $this->date)->get();
}
}
Router
Route::get('admin/printStockReport', 'adminController@printStockReport');
Fyi: I run the SQL code on my RDBMS with criteria input date 07/01/2020. It returns 129 records.
Thank you