little refactoring
This commit is contained in:
@@ -44,9 +44,9 @@ class ProducersDataTable extends DataTable
|
||||
Column::make('thumb')->title('')->searchable(false)->orderable(false)->width(40)->class('text-center'),
|
||||
Column::make('name')->title('Nom'),
|
||||
Column::make('tags2')->title('Tags')->searchable(false)->orderable(false),
|
||||
Column::make('merchandises_count')->title('#Mar')->class('text-right')->searchable(false),
|
||||
Column::make('tags_count')->title('#Tag')->class('text-right')->searchable(false),
|
||||
Column::make('images_count')->title('#Pho')->class('text-right')->searchable(false),
|
||||
Column::make('merchandises_count')->title('#Marchandises')->class('text-right')->searchable(false),
|
||||
// Column::make('tags_count')->title('#Tag')->class('text-right')->searchable(false),
|
||||
// Column::make('images_count')->title('#Pho')->class('text-right')->searchable(false),
|
||||
$this->makeColumnButtons(),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -3,9 +3,8 @@
|
||||
namespace App\Http\Controllers\Admin\Shop;
|
||||
|
||||
use App\Datatables\Admin\Shop\MerchandisesDataTable;
|
||||
use App\Http\Requests\Admin\Shop\StoreMerchandisePost;
|
||||
use App\Repositories\Shop\Merchandises;
|
||||
use App\Repositories\Shop\Producers;
|
||||
use App\Repositories\Shop\TagGroups;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class MerchandiseController extends Controller
|
||||
@@ -17,13 +16,12 @@ class MerchandiseController extends Controller
|
||||
|
||||
public function create()
|
||||
{
|
||||
$data['producers_list'] = Producers::getOptions();
|
||||
$data['tags_list'] = TagGroups::getTreeTags();
|
||||
$data = Merchandises::init();
|
||||
|
||||
return view('Admin.Shop.Merchandises.create', $data);
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
public function store(StoreMerchandisePost $request)
|
||||
{
|
||||
$data = $request->all();
|
||||
Merchandises::storeFull($data);
|
||||
@@ -33,14 +31,15 @@ class MerchandiseController extends Controller
|
||||
|
||||
public function show($id)
|
||||
{
|
||||
return view('Admin.Shop.Merchandises.view', Merchandises::get($id));
|
||||
$data = Merchandises::get($id);
|
||||
|
||||
return view('Admin.Shop.Merchandises.view', $data);
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data['merchandise'] = Merchandises::getFull($id);
|
||||
$data['producers_list'] = Producers::getOptions();
|
||||
$data['tags_list'] = TagGroups::getTreeTags();
|
||||
$data = Merchandises::init();
|
||||
$data['merchandise'] = Merchandises::getArray($id);
|
||||
|
||||
return view('Admin.Shop.Merchandises.edit', $data);
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ class OfferController extends Controller
|
||||
|
||||
public function previewVariation($id)
|
||||
{
|
||||
$data['variation'] = Variations::get($id)->toArray();
|
||||
$data['variation'] = Variations::getArray($id);
|
||||
|
||||
return view('Admin.Shop.Offers.partials.variation', $data);
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ class ProducerController extends Controller
|
||||
|
||||
public function create()
|
||||
{
|
||||
$data['tags_list'] = TagGroups::getTreeTags();
|
||||
$data = Producers::init();
|
||||
|
||||
return view('Admin.Shop.Producers.create', $data);
|
||||
}
|
||||
@@ -31,13 +31,15 @@ class ProducerController extends Controller
|
||||
|
||||
public function show($id)
|
||||
{
|
||||
return view('Admin.Shop.Producers.view', Producers::get($id));
|
||||
$data = Producers::get($id);
|
||||
|
||||
return view('Admin.Shop.Producers.view', $data);
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Producers::init();
|
||||
$data['producer'] = Producers::getFull($id);
|
||||
$data['tags_list'] = TagGroups::getTreeTags();
|
||||
|
||||
return view('Admin.Shop.Producers.edit', $data);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
namespace App\Http\Controllers\Admin\Shop;
|
||||
|
||||
use App\Datatables\Admin\Shop\VariationsDataTable;
|
||||
use App\Http\Requests\Admin\Shop\StoreVariationPost;
|
||||
use App\Repositories\Shop\Packages;
|
||||
use App\Repositories\Shop\Unities;
|
||||
use App\Repositories\Shop\Variations;
|
||||
@@ -24,22 +25,20 @@ class VariationController extends Controller
|
||||
|
||||
public function create()
|
||||
{
|
||||
$data['packages'] = Packages::getOptions();
|
||||
$data['unities'] = Unities::getOptions();
|
||||
$data = Variations::init();
|
||||
|
||||
return view('Admin.Shop.Variations.create', $data);
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Variations::init();
|
||||
$data['variation'] = Variations::get($id);
|
||||
$data['packages'] = Packages::getOptions();
|
||||
$data['unities'] = Unities::getOptions();
|
||||
|
||||
return view('Admin.Shop.Variations.edit', $data);
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
public function store(StoreVariationPost $request)
|
||||
{
|
||||
$ret = Variations::store($request->all());
|
||||
|
||||
|
||||
21
app/Http/Requests/Admin/Shop/StoreArticleNaturePost.php
Normal file
21
app/Http/Requests/Admin/Shop/StoreArticleNaturePost.php
Normal file
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Admin\Shop;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreArticleNaturePost extends FormRequest
|
||||
{
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'product_type' => 'required',
|
||||
'name' => 'required',
|
||||
];
|
||||
}
|
||||
}
|
||||
21
app/Http/Requests/Admin/Shop/StoreMerchandisesPost.php
Normal file
21
app/Http/Requests/Admin/Shop/StoreMerchandisesPost.php
Normal file
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Admin\Shop;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreMerchandisePost extends FormRequest
|
||||
{
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => 'required',
|
||||
'producer_id' => 'required',
|
||||
];
|
||||
}
|
||||
}
|
||||
21
app/Http/Requests/Admin/Shop/StoreProducerPost.php
Normal file
21
app/Http/Requests/Admin/Shop/StoreProducerPost.php
Normal file
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Admin\Shop;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreProducerPost extends FormRequest
|
||||
{
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => 'required',
|
||||
'alias' => 'required',
|
||||
];
|
||||
}
|
||||
}
|
||||
23
app/Http/Requests/Admin/Shop/StoreVariationPost.php
Normal file
23
app/Http/Requests/Admin/Shop/StoreVariationPost.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Admin\Shop;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreVariationPost extends FormRequest
|
||||
{
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'package_id' => 'required',
|
||||
'quantity' => 'required',
|
||||
'unity_id' => 'required',
|
||||
'weight' => 'required',
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -3,12 +3,21 @@
|
||||
namespace App\Repositories\Shop;
|
||||
|
||||
use App\Models\Shop\Merchandise;
|
||||
use App\Traits\Model\Basic;
|
||||
use App\Repositories\Core\Tag;
|
||||
use App\Traits\Repository\Imageable;
|
||||
|
||||
class Merchandises
|
||||
{
|
||||
use Imageable;
|
||||
use Basic, Imageable;
|
||||
|
||||
public static function init()
|
||||
{
|
||||
return [
|
||||
'producers_list' => Producers::getOptions(),
|
||||
'tags_list' => TagGroups::getTreeTags(),
|
||||
];
|
||||
}
|
||||
|
||||
public static function autocomplete($str)
|
||||
{
|
||||
@@ -26,11 +35,6 @@ class Merchandises
|
||||
return Merchandise::with(['price_lists.price_list_values', 'price_lists.sale_channel'])->find($id);
|
||||
}
|
||||
|
||||
public static function getOptions()
|
||||
{
|
||||
return Merchandise::orderBy('name', 'asc')->get()->pluck('name', 'id')->toArray();
|
||||
}
|
||||
|
||||
public static function getStatus($status_id)
|
||||
{
|
||||
return self::getStatuses()[$status_id];
|
||||
@@ -41,36 +45,11 @@ class Merchandises
|
||||
return ['Actif', 'Suspendu', 'Invisible', 'Obsolete'];
|
||||
}
|
||||
|
||||
public static function getAll()
|
||||
{
|
||||
return Merchandise::orderBy('name', 'asc')->get();
|
||||
}
|
||||
|
||||
public static function get($id)
|
||||
{
|
||||
return Merchandise::find($id);
|
||||
}
|
||||
|
||||
public static function getFull($id)
|
||||
{
|
||||
$data = self::get($id)->toArray();
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
public static function getTags($id)
|
||||
{
|
||||
return self::get($id)->tags;
|
||||
}
|
||||
|
||||
public static function store($data)
|
||||
{
|
||||
$id = isset($data['id']) ? $data['id'] : false;
|
||||
$item = $id ? self::update($data, $id) : self::create($data);
|
||||
|
||||
return $item;
|
||||
}
|
||||
|
||||
public static function storeFull($data)
|
||||
{
|
||||
$images = $data['images'] ?? false;
|
||||
@@ -89,22 +68,9 @@ class Merchandises
|
||||
return Tag::storeTags($merchandise, $tags);
|
||||
}
|
||||
|
||||
public static function create($data)
|
||||
{
|
||||
return Merchandise::create($data);
|
||||
}
|
||||
|
||||
public static function update($data, $id = false)
|
||||
public static function getModel()
|
||||
{
|
||||
$id = $id ? $id : $data['id'];
|
||||
$item = self::get($id);
|
||||
$item->update($data);
|
||||
|
||||
return $item;
|
||||
}
|
||||
|
||||
public static function destroy($id)
|
||||
{
|
||||
return Merchandise::destroy($id);
|
||||
return Merchandise::query();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,11 +4,19 @@ namespace App\Repositories\Shop;
|
||||
|
||||
use App\Models\Shop\Producer;
|
||||
use App\Repositories\Core\Tag;
|
||||
use App\Traits\Model\Basic;
|
||||
use App\Traits\Repository\Imageable;
|
||||
|
||||
class Producers
|
||||
{
|
||||
use Imageable;
|
||||
use Basic, Imageable;
|
||||
|
||||
public static function init()
|
||||
{
|
||||
return [
|
||||
'tags_list' => TagGroups::getTreeTags(),
|
||||
];
|
||||
}
|
||||
|
||||
public static function autocomplete($str)
|
||||
{
|
||||
@@ -31,21 +39,6 @@ class Producers
|
||||
return Tag::storeTags($variety, $tags);
|
||||
}
|
||||
|
||||
public static function getOptions()
|
||||
{
|
||||
return Producer::orderBy('name', 'asc')->get()->pluck('name', 'id')->toArray();
|
||||
}
|
||||
|
||||
public static function getAll()
|
||||
{
|
||||
return Producer::orderBy('name', 'asc')->get();
|
||||
}
|
||||
|
||||
public static function get($id)
|
||||
{
|
||||
return Producer::find($id);
|
||||
}
|
||||
|
||||
public static function getFull($id)
|
||||
{
|
||||
$producer = self::get($id);
|
||||
@@ -73,27 +66,8 @@ class Producers
|
||||
return $producer;
|
||||
}
|
||||
|
||||
public static function store($data)
|
||||
public static function getModel()
|
||||
{
|
||||
return ($data['id'] ?? false) ? self::update($data) : self::create($data);
|
||||
}
|
||||
|
||||
public static function create($data)
|
||||
{
|
||||
return Producer::create($data);
|
||||
}
|
||||
|
||||
public static function update($data, $id = false)
|
||||
{
|
||||
$id = $id ? $id : $data['id'];
|
||||
$item = self::get($id);
|
||||
$item->update($data);
|
||||
|
||||
return $item;
|
||||
}
|
||||
|
||||
public static function destroy($id)
|
||||
{
|
||||
return Producer::destroy($id);
|
||||
return Producer::query();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,10 +3,20 @@
|
||||
namespace App\Repositories\Shop;
|
||||
|
||||
use App\Models\Shop\Variation;
|
||||
use App\Traits\Model\Basic;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class Variations
|
||||
{
|
||||
use Basic;
|
||||
|
||||
public static function init()
|
||||
{
|
||||
return [
|
||||
'packages' => Packages::getOptions(),
|
||||
'unities' => Unities::getOptions(),
|
||||
];
|
||||
}
|
||||
public static function autocomplete($str)
|
||||
{
|
||||
$data = Variation::where('name', 'LIKE', "%${str}%")->orderBy('name')->limit(30)->get()->pluck('name', 'id');
|
||||
@@ -36,7 +46,10 @@ class Variations
|
||||
|
||||
public static function getName($variation)
|
||||
{
|
||||
return $variation->package->value.' '.$variation->quantity.' '.($variation->unity->value ?? null).' '.Str::limit(strip_tags($variation->description), 15, ' (...)');
|
||||
return $variation->package->value.' '.
|
||||
$variation->quantity.' '.
|
||||
($variation->unity->value ?? null).' '.
|
||||
Str::limit(strip_tags($variation->description), 15, ' (...)');
|
||||
}
|
||||
|
||||
public static function buildName($data)
|
||||
@@ -44,29 +57,12 @@ class Variations
|
||||
return Packages::getName($data['package_id']).' '.$data['quantity'].' '.Unities::getName($data['unity_id']);
|
||||
}
|
||||
|
||||
public static function getAll()
|
||||
{
|
||||
return Variation::orderBy('value', 'asc')->get();
|
||||
}
|
||||
|
||||
public static function getFull($id)
|
||||
{
|
||||
return Variation::with(['package', 'unity'])->findOrFail($id);
|
||||
}
|
||||
|
||||
public static function get($id)
|
||||
{
|
||||
return Variation::findOrFail($id);
|
||||
}
|
||||
|
||||
public static function store($data)
|
||||
{
|
||||
$id = isset($data['id']) ? $data['id'] : false;
|
||||
$item = $id ? self::update($data) : self::create($data);
|
||||
|
||||
return $item->id;
|
||||
}
|
||||
|
||||
public static function create($data)
|
||||
{
|
||||
$data['name'] = self::buildName($data);
|
||||
@@ -76,7 +72,7 @@ class Variations
|
||||
|
||||
public static function update($data, $id = false)
|
||||
{
|
||||
$id = isset($data['id']) ? $data['id'] : false;
|
||||
$id = $id ? $id : $data['id'];
|
||||
$variation = self::get($id);
|
||||
$data['name'] = self::buildName($data);
|
||||
$variation->update($data);
|
||||
@@ -84,8 +80,8 @@ class Variations
|
||||
return $variation;
|
||||
}
|
||||
|
||||
public static function destroy($id)
|
||||
public static function getModel()
|
||||
{
|
||||
return Variation::destroy($id);
|
||||
return Variation::query();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user