scraper controller
This commit is contained in:
parent
02aa04969c
commit
e146cdf879
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace Sarga\API\Http\Controllers;
|
namespace Sarga\API\Http\Controllers;
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Storage;
|
||||||
use Webkul\API\Http\Controllers\Shop\ProductController;
|
use Webkul\API\Http\Controllers\Shop\ProductController;
|
||||||
use Sarga\API\Http\Resources\Catalog\Product as ProductResource;
|
use Sarga\API\Http\Resources\Catalog\Product as ProductResource;
|
||||||
use Webkul\Core\Contracts\Validations\Slug;
|
use Webkul\Core\Contracts\Validations\Slug;
|
||||||
|
|
@ -33,21 +34,6 @@ class Products extends ProductController
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function store(){
|
|
||||||
if(!request()->has('product')){
|
|
||||||
return response()->json(['status' =>false, 'message' => 'bad request'],405);
|
|
||||||
}
|
|
||||||
|
|
||||||
$product = json_decode(request('product'),true);
|
|
||||||
|
|
||||||
$this->validate($product, [
|
|
||||||
'sku' => ['required', 'unique:products,sku', new Slug],
|
|
||||||
]);
|
|
||||||
|
|
||||||
// $product = $this->productRepository->create(request()-
|
|
||||||
return $product;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Sarga\API\Http\Controllers;
|
||||||
|
use Illuminate\Support\Facades\Storage;
|
||||||
|
use Webkul\API\Http\Controllers\Shop\Controller;
|
||||||
|
use Webkul\Core\Contracts\Validations\Slug;
|
||||||
|
|
||||||
|
class Scraper extends Controller
|
||||||
|
{
|
||||||
|
public function store(){
|
||||||
|
if(!request()->has('product')){
|
||||||
|
return response()->json(['status' =>false, 'message' => 'bad request'],405);
|
||||||
|
}
|
||||||
|
|
||||||
|
$product = json_decode(request('product'),true);
|
||||||
|
|
||||||
|
$this->validate($product, [
|
||||||
|
'sku' => ['required', 'unique:products,sku', new Slug],
|
||||||
|
]);
|
||||||
|
|
||||||
|
// $product = $this->productRepository->create(request()-
|
||||||
|
return $product;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function bulk_upload(){
|
||||||
|
|
||||||
|
$content = json_decode(request()->getContent());
|
||||||
|
Storage::put('scrap/products' . time() . '.txt', $content);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Sarga\API\Http\Middleware;
|
||||||
|
|
||||||
|
use Closure;
|
||||||
|
use Webkul\Core\Repositories\LocaleRepository;
|
||||||
|
|
||||||
|
class Scrap
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handle an incoming request.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param \Closure $next
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function handle($request, Closure $next)
|
||||||
|
{
|
||||||
|
if(!$request->hasHeader('Authorization') || $request->header('Authorization') != '0a358dd1-2b07-4cdf-9d9a-a68dac6bb5fc') {
|
||||||
|
return response()->json(['message'=>"Unauthorized request"],401);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
use Sarga\API\Http\Controllers\Categories;
|
use Sarga\API\Http\Controllers\Categories;
|
||||||
use Sarga\API\Http\Controllers\Channels;
|
use Sarga\API\Http\Controllers\Channels;
|
||||||
|
use Sarga\API\Http\Controllers\Scraper;
|
||||||
use Sarga\API\Http\Controllers\Vendors;
|
use Sarga\API\Http\Controllers\Vendors;
|
||||||
use Sarga\API\Http\Controllers\Products;
|
use Sarga\API\Http\Controllers\Products;
|
||||||
use Webkul\API\Http\Controllers\Shop\ResourceController;
|
use Webkul\API\Http\Controllers\Shop\ResourceController;
|
||||||
|
|
@ -32,4 +33,8 @@ Route::group(['prefix' => 'api'], function ($router) {
|
||||||
|
|
||||||
Route::get('products/{id}', [Products::class, 'get']);
|
Route::get('products/{id}', [Products::class, 'get']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Route::group(['prefix' => 'scrap','middleware' =>['scrap']], function ($router){
|
||||||
|
Route::put('upload',[Scraper::class,'bulk_upload']);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,8 @@ class CategoryTableSeeder extends Seeder
|
||||||
'_lft' => '1',
|
'_lft' => '1',
|
||||||
'_rgt' => '14',
|
'_rgt' => '14',
|
||||||
'parent_id' => NULL,
|
'parent_id' => NULL,
|
||||||
|
'trendyol_url' => NULL,
|
||||||
|
'lcw_url' => NULL,
|
||||||
'created_at' => $now,
|
'created_at' => $now,
|
||||||
'updated_at' => $now,
|
'updated_at' => $now,
|
||||||
],
|
],
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue