Add the rest of available countries. #48
@@ -6,6 +6,7 @@ namespace Krzysiej\RyobiCrawler\Command;
|
|||||||
|
|
||||||
use Illuminate\Database\Capsule\Manager as Capsule;
|
use Illuminate\Database\Capsule\Manager as Capsule;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Krzysiej\RyobiCrawler\Models\Country;
|
||||||
use Symfony\Component\Console\Attribute\AsCommand;
|
use Symfony\Component\Console\Attribute\AsCommand;
|
||||||
use Symfony\Component\Console\Command\Command;
|
use Symfony\Component\Console\Command\Command;
|
||||||
use Symfony\Component\Console\Input\InputInterface;
|
use Symfony\Component\Console\Input\InputInterface;
|
||||||
@@ -93,6 +94,7 @@ class Migrate extends Command
|
|||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
if (Capsule::schema()->hasTable('countries') && !Country::where('countryName', 'Poland')->exists()) {
|
||||||
$id = Capsule::table('countries')->insertGetId(
|
$id = Capsule::table('countries')->insertGetId(
|
||||||
[
|
[
|
||||||
'countryName' => 'Poland',
|
'countryName' => 'Poland',
|
||||||
@@ -103,6 +105,8 @@ class Migrate extends Command
|
|||||||
'created_at' => now(),
|
'created_at' => now(),
|
||||||
'updated_at' => now(),
|
'updated_at' => now(),
|
||||||
]);
|
]);
|
||||||
|
}
|
||||||
|
if (Capsule::schema()->hasTable('countries') && !Country::where('countryName', 'UK')->exists()) {
|
||||||
Capsule::table('countries')->insert([
|
Capsule::table('countries')->insert([
|
||||||
'countryName' => 'UK',
|
'countryName' => 'UK',
|
||||||
'productsUrl' => 'https://uk.ryobitools.eu/api/product-listing/get-products',
|
'productsUrl' => 'https://uk.ryobitools.eu/api/product-listing/get-products',
|
||||||
@@ -113,6 +117,43 @@ class Migrate extends Command
|
|||||||
'updated_at' => now(),
|
'updated_at' => now(),
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
if (Capsule::schema()->hasTable('countries') && !Country::where('countryName', 'Netherlands')->exists()) {
|
||||||
|
Capsule::table('countries')->insert([
|
||||||
|
'countryName' => 'Netherlands',
|
||||||
|
'productsUrl' => 'https://nl.ryobitools.eu/api/product-listing/get-products',
|
||||||
|
'cultureCode' => 'nl-NL',
|
||||||
|
'currency' => 'EUR',
|
||||||
|
'locale' => 'nl',
|
||||||
|
'created_at' => now(),
|
||||||
|
'updated_at' => now(),
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (Capsule::schema()->hasTable('countries') && !Country::where('countryName', 'France')->exists()) {
|
||||||
|
Capsule::table('countries')->insert([
|
||||||
|
'countryName' => 'France',
|
||||||
|
'productsUrl' => 'https://fr.ryobitools.eu/api/product-listing/get-products',
|
||||||
|
'cultureCode' => 'fr-FR',
|
||||||
|
'currency' => 'EUR',
|
||||||
|
'locale' => 'fr',
|
||||||
|
'created_at' => now(),
|
||||||
|
'updated_at' => now(),
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (Capsule::schema()->hasTable('countries') && !Country::where('countryName', 'Spain')->exists()) {
|
||||||
|
Capsule::table('countries')->insert([
|
||||||
|
'countryName' => 'Spain',
|
||||||
|
'productsUrl' => 'https://es.ryobitools.eu/api/product-listing/get-products',
|
||||||
|
'cultureCode' => 'es-ES',
|
||||||
|
'currency' => 'EUR',
|
||||||
|
'locale' => 'es',
|
||||||
|
'created_at' => now(),
|
||||||
|
'updated_at' => now(),
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
if (!Capsule::schema()->hasColumn('products', 'country_id')) {
|
if (!Capsule::schema()->hasColumn('products', 'country_id')) {
|
||||||
Capsule::schema()->table('products', function (Blueprint $table) use ($id) {
|
Capsule::schema()->table('products', function (Blueprint $table) use ($id) {
|
||||||
@@ -174,9 +215,11 @@ class Migrate extends Command
|
|||||||
|
|
||||||
public function index(): void
|
public function index(): void
|
||||||
{
|
{
|
||||||
|
if (!count(Capsule::select('SELECT name FROM sqlite_master WHERE type = "index" and name = "products_skuid_country_id_unique"'))) {
|
||||||
Capsule::schema()->table('products', function (Blueprint $table) {
|
Capsule::schema()->table('products', function (Blueprint $table) {
|
||||||
$table->integer('skuID')->unique(false)->change();
|
$table->integer('skuID')->unique(false)->change();
|
||||||
$table->unique(['skuID', 'country_id']);
|
$table->unique(['skuID', 'country_id']);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user