This commit is contained in:
Ludovic CANDELLIER
2021-03-27 01:16:37 +01:00
parent 22fa3d3246
commit 4855254a7f
21 changed files with 219 additions and 137 deletions

View File

@@ -8,7 +8,7 @@ use App\Models\Shop\TagGroup;
class TagGroupsDataTable extends DataTable
{
public $model_name = 'TagGroups';
public $model_name = 'tag_groups';
public function query(TagGroup $model)
{

View File

@@ -21,6 +21,11 @@ class SpecieController extends Controller
return Species::getDatatable($request->all());
}
public function getOptions()
{
return response()->json(Species::getOptions());
}
public function create()
{
return view('Botanic.Admin.Species.create');

View File

@@ -10,66 +10,66 @@ use App\DataTables\Shop\ArticlesDataTable;
class ArticleController extends Controller
{
public function index(ArticlesDataTable $dataTable)
{
return $dataTable->render('Shop.Admin.Articles.list');
}
public function index(ArticlesDataTable $dataTable)
{
return $dataTable->render('Shop.Admin.Articles.list');
}
public function getDatatable(Request $request)
{
return Articles::getTables($request->all());
}
public function getDatatable(Request $request)
{
return Articles::getTables($request->all());
}
public function create()
{
$data = $this->getMeta();
return view('Shop.Admin.Articles.create', $data);
}
public function create()
{
$data = $this->getMeta();
return view('Shop.Admin.Articles.create', $data);
}
public function store(Request $request)
{
Articles::storeFull($request->all());
return redirect()->route('Shop.Admin.Articles.index');
}
public function store(Request $request)
{
Articles::storeFull($request->all());
return redirect()->route('Shop.Admin.Articles.index');
}
public function show($id)
{
$data = Articles::get($id);
return view('Shop.Admin.Articles.view', $data);
}
public function show($id)
{
$data = Articles::get($id);
return view('Shop.Admin.Articles.view', $data);
}
public function edit($id)
{
$data = Articles::getFull($id);
return view('Shop.Admin.Articles.edit', $data);
}
public function edit($id)
{
$data = Articles::getFull($id);
return view('Shop.Admin.Articles.edit', $data);
}
public function update(Request $request)
{
//
}
public function update(Request $request)
{
//
}
public function destroy($id)
{
return Articles::destroy($id);
}
public function destroy($id)
{
return Articles::destroy($id);
}
public function getMeta($data = [])
{
return Articles::getMeta($data);
}
public function getMeta($data = [])
{
return Articles::getMeta($data);
}
public function getImages(Request $request, $id = false)
{
$id = $id ? $id : $request->input('id');
$data['images'] = Articles::getImages($id);
return view('components.uploader.mini-gallery-items', $data);
}
public function getImages(Request $request, $id = false)
{
$id = $id ? $id : $request->input('id');
$data['images'] = Articles::getImages($id);
return view('components.uploader.mini-gallery-items', $data);
}
public function deleteImage(Request $request)
{
$id = $request->input('id');
$index = $request->input('index');
return Articles::deleteImage($id, $index);
}
public function deleteImage(Request $request)
{
$id = $request->input('id');
$index = $request->input('index');
return Articles::deleteImage($id, $index);
}
}

View File

@@ -5,52 +5,52 @@ namespace App\Http\Controllers\Shop\Admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Repositories\Shop\TagGroup;
use App\Repositories\Shop\TagGroups;
use App\DataTables\Shop\TagGroupsDataTable;
class TagGroupController extends Controller
{
public function index(TagGroupsDataTable $dataTable)
{
return $dataTable->render('Shop.Admin.TagGroups.list');
}
public function index(TagGroupsDataTable $dataTable)
{
return $dataTable->render('Shop.Admin.TagGroups.list');
}
public function getDatatable(Request $request)
{
return TagGroups::getTables($request->all());
}
public function getDatatable(Request $request)
{
return TagGroups::getTables($request->all());
}
public function create($data)
{
return view('Shop.Admin.TagGroups.create', $data);
}
public function create($data)
{
return view('Shop.Admin.TagGroups.create', $data);
}
public function store(Request $request)
{
$ret = TagGroups::store($request->all());
return redirect()->route('Shop.Admin.TagGroups.index');
}
public function store(Request $request)
{
$ret = TagGroups::store($request->all());
return redirect()->route('Shop.Admin.TagGroups.index');
}
public function show($id)
{
$data = TagGroups::get($id);
return view('Shop.Admin.TagGroups.view', $data);
}
public function show($id)
{
$data = TagGroups::get($id);
return view('Shop.Admin.TagGroups.view', $data);
}
public function edit($id)
{
$data = TagGroups::get($id);
return view('Shop.Admin.TagGroups.edit', $data);
}
public function edit($id)
{
$data = TagGroups::get($id);
return view('Shop.Admin.TagGroups.edit', $data);
}
public function update(Request $request)
{
//
}
public function update(Request $request)
{
//
}
public function destroy($id)
{
return TagGroups::destroy($id);
}
public function destroy($id)
{
return TagGroups::destroy($id);
}
}

View File

@@ -15,7 +15,7 @@ class Shop
$menu->addTo('shop', 'Articles', [ 'route' => 'Shop.Admin.Articles.index', 'permission' => 'backend_access' ])
->activeIfRoute(['Shop.Admin.Articles.*'])->order(1);
$menu->addTo('shop', 'Categories', [ 'route' => 'Shop.Admin.Categories.index', 'permission' => 'backend_access' ])
$menu->addTo('shop', 'Rayons', [ 'route' => 'Shop.Admin.Categories.index', 'permission' => 'backend_access' ])
->activeIfRoute(['Shop.Admin.Categories.*'])->order(2);
$menu->addTo('shop', 'Familles d\'articles', [ 'route' => 'Shop.Admin.ArticleFamilies.index', 'permission' => 'backend_access' ])
->activeIfRoute(['Shop.Admin.ArticleFamilies.*'])->order(3);

View File

@@ -22,8 +22,8 @@ class ArticleFamily extends Model
return $this->hasMany('App\Models\Shop\Price');
}
public function unities()
public function packages()
{
return $this->hasMany('App\Models\Shop\Unity');
return $this->hasMany('App\Models\Shop\Package');
}
}

View File

@@ -32,9 +32,10 @@ class Varieties
$data = [];
foreach ($varieties as $variety)
{
$data[] = ['id' => $variety->id, 'text' => (isset($variety->specie->name) ? $variety->specie->name . ' ' : '') . $variety->name];
$data[$variety->id] = (isset($variety->specie->name) ? $variety->specie->name . ' ' : '') . $variety->name;
}
return collect($data)->sortBy('text')->values()->all();
asort($data, SORT_NATURAL | SORT_FLAG_CASE);
return $data;
}
public static function getAll()

View File

@@ -8,6 +8,8 @@ use Illuminate\Support\Str;
use Yajra\DataTables\DataTables;
use App\Repositories\Botanic\Species;
use App\Repositories\Botanic\Varieties;
use App\Models\Shop\Article;
class Articles
@@ -37,11 +39,12 @@ class Articles
public static function getMeta(&$data = [])
{
$data['products'] = ($data['product_type'] == 'App\Models\Botanic\Variety') ? Varieties::getOptionsWithSpecie() : Species::getOptions();
$data['categories_options'] = Categories::getOptions();
$data['price_generics'] = PriceGenericCategories::getOptionsWithChildrens();
$data['families_options'] = ArticleFamilies::getOptions();
$data['taxes_options'] = Taxes::getOptions();
$data['packages'] = Packages::getSelectByFamily($data['article_family_id']);
$data['packages'] = ($data['article_family_id'] ?? false) ? Packages::getSelectByFamily($data['article_family_id']) : [];
$data['unities'] = ($data['packages']['id'] ?? false) ? Unities::getSelectByPackage($data['packages']['id']) : [];
$data['tags_list'] = TagGroups::getTreeTags();
$data['models_options'] = ['App\Models\Botanic\Specie' => 'Espèces', 'App\Models\Botanic\Variety' => 'Variétés'];