53 lines
1.4 KiB
PHP
53 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Goods;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use App\Models\GoodsSku;
|
|
use App\Http\Resources\GoodsSkuResource;
|
|
use App\Imports\GoodsSkusImport;
|
|
use Illuminate\Validation\ValidationException;
|
|
use Maatwebsite\Excel\Facades\Excel;
|
|
|
|
class GoodsSkusController extends Controller
|
|
{
|
|
public function __construct()
|
|
{
|
|
$this->middleware(['role:super-admin','permission:publish articles|edit articles']);
|
|
}
|
|
|
|
public function index(Request $request)
|
|
{
|
|
return new GoodsSkuResource(GoodsSku::query()->get(['id', 'title']));
|
|
}
|
|
|
|
public function show($id)
|
|
{
|
|
return new GoodsSkuResource(GoodsSku::query()->with(['goods', 'brand'])->find($id));
|
|
}
|
|
|
|
public function update($id, Request $request)
|
|
{
|
|
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
if (!$request->hasFile('goodsSkus')) {
|
|
$this->res = [
|
|
'httpCode' => 404,
|
|
'errorCode' => 404404,
|
|
'errorMessage' => 'not found goodsSkus file',
|
|
];
|
|
}
|
|
try {
|
|
Excel::import(new GoodsSkusImport(), $request->file('goodsSkus'));
|
|
} catch (ValidationException $exception) {
|
|
$this->setValidatorFailResponse($exception->validator->getMessageBag()->getMessages());
|
|
}
|
|
|
|
return response($this->res, $this->res['httpCode']);
|
|
}
|
|
}
|