diff --git a/app/Datatables/Shop/TariffUnitiesDataTable.php b/app/Datatables/Shop/TariffUnitiesDataTable.php new file mode 100644 index 00000000..a759a00d --- /dev/null +++ b/app/Datatables/Shop/TariffUnitiesDataTable.php @@ -0,0 +1,25 @@ +buildQuery($model); + } + + protected function getColumns() + { + return [ + Column::make('value')->title('Valeur'), + $this->makeColumnButtons(), + ]; + } +} diff --git a/app/Http/Controllers/Admin/Shop/TariffUnityController.php b/app/Http/Controllers/Admin/Shop/TariffUnityController.php new file mode 100644 index 00000000..07bd2c64 --- /dev/null +++ b/app/Http/Controllers/Admin/Shop/TariffUnityController.php @@ -0,0 +1,61 @@ +render('Admin.Shop.TariffUnities.list', $data); + } + + public function getOptionsByPackage(Request $request) + { + $id = $request->input('package_id'); + return response()->json(TariffUnities::getOptionsByPackage($id)); + } + + public function create() + { + $data['packages'] = Packages::getOptions(); + return view('Admin.Shop.TariffUnities.create'); + } + + public function store(Request $request) + { + $ret = TariffUnities::store($request->all()); + return redirect()->route('Admin.Shop.TariffUnities.index'); + } + + public function show($id) + { + $data = TariffUnities::get($id); + return view('Admin.Shop.TariffUnities.view', $data); + } + + public function edit($id) + { + $data['packages'] = Packages::getOptions(); + $data['unity'] = TariffUnities::get($id)->toArray(); + return view('Admin.Shop.TariffUnities.edit', $data); + } + + public function destroy($id) + { + return TariffUnities::destroy($id); + } + + public function update($id) + { + } +} diff --git a/app/Menu/Shop.php b/app/Menu/Shop.php index f3e6a19e..867b7353 100644 --- a/app/Menu/Shop.php +++ b/app/Menu/Shop.php @@ -37,6 +37,9 @@ class Shop $menu->addTo('shop', 'Packages', [ 'route' => 'Admin.Shop.Packages.index', 'permission' => 'backend_access' ]) ->activeIfRoute(['Admin.Shop.Packages.*'])->order(12); + $menu->addTo('shop', 'Unités de tarifs', [ 'route' => 'Admin.Shop.TariffUnities.index', 'permission' => 'backend_access' ]) + ->activeIfRoute(['Admin.Shop.TariffUnities.*'])->order(13); + $menu->addTo('shop', 'Unités', [ 'route' => 'Admin.Shop.Unities.index', 'permission' => 'backend_access' ]) ->activeIfRoute(['Admin.Shop.Unities.*'])->order(14); } diff --git a/app/Repositories/Botanic/Genres.php b/app/Repositories/Botanic/Genres.php index 78d8d470..bf04c3ea 100644 --- a/app/Repositories/Botanic/Genres.php +++ b/app/Repositories/Botanic/Genres.php @@ -2,11 +2,6 @@ namespace App\Repositories\Botanic; -use Illuminate\Support\Facades\Storage; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Str; - -use Yajra\DataTables\DataTables; use Maatwebsite\Excel\Facades\Excel; use App\Models\Botanic\Genre; @@ -14,11 +9,6 @@ use App\Exports\Botanic\GenresExport; class Genres { - public static function getDatatable() - { - $model = Genre::orderBy('name'); - return Datatables::of($model)->make(true); - } public static function getOptions() { @@ -37,8 +27,7 @@ class Genres public static function store($data) { - $id = isset($data['id']) ? $data['id'] : false; - $item = $id ? self::update($data, $id) : self::create($data); + $item = ($data['id'] ?? false) ? self::update($data) : self::create($data); return $item->id; } @@ -49,8 +38,10 @@ class Genres public static function update($data, $id = false) { - $id = isset($data['id']) ? $data['id'] : false; - return self::get($id)->update($data); + $id = $id ? $id : $data['id']; + $model = self::get($id); + $model->update($data); + return $model; } public static function destroy($id) diff --git a/app/Repositories/Botanic/Species.php b/app/Repositories/Botanic/Species.php index 04bb4bfb..14de7170 100644 --- a/app/Repositories/Botanic/Species.php +++ b/app/Repositories/Botanic/Species.php @@ -68,9 +68,7 @@ class Species public static function store($data) { - $id = $data['id'] ?? false; - $specie = $id ? self::update($data, $id) : self::create($data); - return $specie; + return ($data['id'] ?? false) ? self::update($data) : self::create($data); } public static function create($data) diff --git a/app/Repositories/Botanic/Varieties.php b/app/Repositories/Botanic/Varieties.php index 6dd5b227..76c29a5d 100644 --- a/app/Repositories/Botanic/Varieties.php +++ b/app/Repositories/Botanic/Varieties.php @@ -78,7 +78,7 @@ class Varieties public static function store($data) { - return isset($data['id']) ? self::update($data) : self::create($data); + return ($data['id'] ?? false) ? self::update($data) : self::create($data); } public static function create($data) diff --git a/resources/views/Admin/Shop/TariffUnities/create.blade.php b/resources/views/Admin/Shop/TariffUnities/create.blade.php new file mode 100644 index 00000000..7f9af264 --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/create.blade.php @@ -0,0 +1,11 @@ +@extends('layout.index', [ + 'title' => __('shop.tariff_unities.title'), + 'subtitle' => __('shop.tariff_unities.add'), + 'breadcrumb' => [__('shop.tariff_unities.title')] +]) + +@section('content') + {{ Form::open(['route' => 'Admin.Shop.TariffUnities.store', 'id' => 'tariff_unity-form', 'autocomplete' => 'off']) }} + @include('Admin.Shop.TariffUnities.form') + +@endsection diff --git a/resources/views/Admin/Shop/TariffUnities/edit.blade.php b/resources/views/Admin/Shop/TariffUnities/edit.blade.php new file mode 100644 index 00000000..5454f52d --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/edit.blade.php @@ -0,0 +1,14 @@ +@extends('layout.index', [ + 'title' => __('shop.tariff_unities.title'), + 'subtitle' => __('shop.tariff_unities.edit'), + 'breadcrumb' => [__('shop.tariff_unities.title'), __('shop.tariff_unities.edit')] +]) + +@section('content') + + {{ Form::open(['route' => 'Admin.Shop.TariffUnities.store', 'id' => 'tariff_unity-form', 'autocomplete' => 'off']) }} + + @include('Admin.Shop.TariffUnities.form') + + +@endsection diff --git a/resources/views/Admin/Shop/TariffUnities/form.blade.php b/resources/views/Admin/Shop/TariffUnities/form.blade.php new file mode 100644 index 00000000..f599c381 --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/form.blade.php @@ -0,0 +1,18 @@ +
+
+ {{ Form::label('name', 'Nom') }} + @include('components.form.input', ['name' => 'value', 'value' => $tariff_unity['value'] ?? null, 'required' => true]) +
+
+ +@include('components.save') + +@include('load.form.save') + +@push('js') + +@endpush \ No newline at end of file diff --git a/resources/views/Admin/Shop/TariffUnities/index.blade.php b/resources/views/Admin/Shop/TariffUnities/index.blade.php new file mode 100644 index 00000000..109788e9 --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/index.blade.php @@ -0,0 +1,48 @@ +@extends('layout.index', [ + 'title' => __('shop.tariff_unities.title'), + 'subtitle' => __('shop.tariff_unities.list'), + 'breadcrumb' => [__('shop.tariff_unities.title')] +]) + +@include('boilerplate::load.select2') + +@section('content') + + + +
+ +
+ @section('content') + @include('components.datatable', ['route' => route('Admin.Shop.TariffUnities.index'), 'model' => 'ArticleAttributefamilies']) + @endsection +
+ +
+ @section('content') + @component('components.card') + @include('components.datatable', ['route' => route('Admin.Shop.ArticleAttributeValues.index'), 'model' => 'TariffUnities', 'with_filters' => true]) + @endcomponent + + @component('components.layout.modal', ['title' => 'Filtres', 'id' => 'modal-filters']) + @include('Admin.Shop.TariffUnities.partials.filters') + @endcomponent + @endsection +
+ +
+ +@endsection + +@push('scripts') + @include('components.js.datatable', ['route' => route('Admin.Shop.TariffUnities.index'), 'model' => 'TariffUnities']) +@endpush \ No newline at end of file diff --git a/resources/views/Admin/Shop/TariffUnities/list.blade.php b/resources/views/Admin/Shop/TariffUnities/list.blade.php new file mode 100644 index 00000000..e19509e9 --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/list.blade.php @@ -0,0 +1,16 @@ +@extends('layout.index', [ + 'title' => __('shop.tariff_unities.title'), + 'subtitle' => __('shop.tariff_unities.list'), + 'breadcrumb' => [__('shop.tariff_unities.title')] +]) + +@section('content') + @component('components.card') + @include('components.datatable', ['route' => route('Admin.Shop.TariffUnities.index'), 'model' => 'tariff_unities','with_filters' => true]) + @endcomponent + + @component('components.layout.modal', ['title' => 'Filtres', 'id' => 'modal-tariff_unities-filters']) + @include('Admin.Shop.TariffUnities.partials.filters') + @endcomponent + +@endsection diff --git a/resources/views/Admin/Shop/TariffUnities/partials/filters.blade.php b/resources/views/Admin/Shop/TariffUnities/partials/filters.blade.php new file mode 100644 index 00000000..907bd91d --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/partials/filters.blade.php @@ -0,0 +1,14 @@ +
+
+ +
+ @include('components.form.select', ['name' => 'family_id', 'list' => (isset($families)) ? $families : [], 'value' => (isset($filters['family_id'])) ? $filters['family_id'] : null, 'class' => 'form-control-sm select2', 'with_empty' => ' ']) +
+
+
+ +
+ @include('components.form.select', ['name' => 'package_id', 'list' => (isset($packages)) ? $packages : [], 'value' => (isset($filters['package_id'])) ? $filters['package_id'] : null, 'class' => 'form-control-sm select2', 'with_empty' => ' ']) +
+
+
diff --git a/resources/views/Admin/Shop/TariffUnities/show.blade.php b/resources/views/Admin/Shop/TariffUnities/show.blade.php new file mode 100644 index 00000000..1e1cd729 --- /dev/null +++ b/resources/views/Admin/Shop/TariffUnities/show.blade.php @@ -0,0 +1,36 @@ +@extends('layout.index', [ + 'title' => __('products.title'), + 'subtitle' => __('products.title'), + 'breadcrumb' => [__('products.title')] +]) + +@section('content') +
+ +
+ +
+ +
+
+
+

{{ name }}

+

+ {{ $product.section.name }}
+

+
+
+

{{ $prix_total }} €

+

{{ $residence['type_produit']['name'] }}

+
+ +
+ @include('Hestimmo.modules.Lot.partials.carousel') +
+
+
+
+
+
+ +@endsection diff --git a/routes/Admin/Shop/TariffUnities.php b/routes/Admin/Shop/TariffUnities.php index 9e1bc0e0..97f56aa5 100644 --- a/routes/Admin/Shop/TariffUnities.php +++ b/routes/Admin/Shop/TariffUnities.php @@ -1,12 +1,10 @@ name('ArticleNatures.')->group(function () { - Route::get('', 'ArticleNatureController@index')->name('index'); - Route::get('create', 'ArticleNatureController@create')->name('create'); - Route::delete('destroy/{id?}', 'ArticleNatureController@destroy')->name('destroy'); - Route::post('update', 'ArticleNatureController@update')->name('update'); - Route::post('store', 'ArticleNatureController@store')->name('store'); - Route::get('edit/{id}', 'ArticleNatureController@edit')->name('edit'); - +Route::prefix('TariffUnities')->name('TariffUnities.')->group(function () { + Route::get('', 'TariffUnityController@index')->name('index'); + Route::get('create', 'TariffUnityController@create')->name('create'); + Route::delete('destroy/{id?}', 'TariffUnityController@destroy')->name('destroy'); + Route::post('update', 'TariffUnityController@update')->name('update'); + Route::post('store', 'TariffUnityController@store')->name('store'); + Route::get('edit/{id}', 'TariffUnityController@edit')->name('edit'); }); - diff --git a/routes/Admin/Shop/route.php b/routes/Admin/Shop/route.php index ecea2654..72d55f78 100644 --- a/routes/Admin/Shop/route.php +++ b/routes/Admin/Shop/route.php @@ -19,6 +19,7 @@ Route::middleware('auth')->prefix('Shop')->namespace('Shop')->name('Shop.')->gro include __DIR__ . '/Tags.php'; include __DIR__ . '/TagGroups.php'; include __DIR__ . '/Tariffs.php'; + include __DIR__ . '/TariffUnities.php'; include __DIR__ . '/Unities.php'; include __DIR__ . '/Variations.php'; });