ldc-legaulois/app/Http/Controllers/Bo/ConsumptionTimesController.php

99 lines
2.4 KiB
PHP
Raw Permalink Normal View History

2020-07-23 17:06:19 +02:00
<?php
namespace App\Http\Controllers\Bo;
use App\Http\Controllers\Controller;
use App\Models\ConsumptionTimes;
use App\Models\Products;
2021-04-28 13:57:12 +02:00
use App\Traits\UpdateModelStatus;
2020-07-23 17:06:19 +02:00
use Illuminate\Http\Request;
use Illuminate\Support\Str;
2020-07-23 17:06:19 +02:00
class ConsumptionTimesController extends Controller
{
2021-04-28 13:57:12 +02:00
use UpdateModelStatus;
2020-07-23 17:06:19 +02:00
public function index()
{
2021-04-12 10:01:48 +02:00
$ct = ConsumptionTimes::paginate();
2020-07-23 17:06:19 +02:00
return view('bo.consumption-times.index', compact('ct'));
}
public function create()
{
return view('bo.consumption-times.create');
}
public function store(Request $request)
{
2022-02-10 16:14:58 +01:00
$name = $request->name;
$slug = Str::slug($name);
2020-07-23 17:06:19 +02:00
$status = $request->status;
$request->validate([
'name' => 'required|max:50',
]);
2021-03-20 14:38:15 +01:00
if ($status !== "1") {
2020-07-23 17:06:19 +02:00
$status = 0;
2021-03-20 14:38:15 +01:00
}
2020-07-23 17:06:19 +02:00
2022-02-10 16:14:58 +01:00
$ct = new ConsumptionTimes();
$ct->name = $name;
$ct->slug = $slug;
2020-07-23 17:06:19 +02:00
$ct->status = $status;
$ct->save();
return redirect()->route('bo.consumption-times.index');
}
public function edit($id)
{
$ct = ConsumptionTimes::findOrFail($id);
return view('bo.consumption-times.edit', compact('ct'));
}
public function update(Request $request, $id)
{
2022-02-10 16:14:58 +01:00
$name = $request->name;
$slug = Str::slug($name);
2020-07-23 17:06:19 +02:00
$status = $request->status;
$request->validate([
'name' => 'required|max:50',
]);
2021-03-20 14:38:15 +01:00
if ($status !== "1") {
2020-07-23 17:06:19 +02:00
$status = 0;
2021-03-20 14:38:15 +01:00
}
2020-07-23 17:06:19 +02:00
2022-02-10 16:14:58 +01:00
$ct = ConsumptionTimes::findOrFail($id);
$ct->name = $name;
$ct->slug = $slug;
2020-07-23 17:06:19 +02:00
$ct->status = $status;
$ct->save();
2021-06-14 15:15:52 +02:00
return redirect()->route(
'bo.consumption-times.edit',
['consumption_time' => $ct->id]
)->with('success', 'Enregistré !');
2020-07-23 17:06:19 +02:00
}
public function destroy($id)
{
$pExist = Products::where('moment_id', $id)->exists();
if (!$pExist) {
$ct = ConsumptionTimes::findOrFail($id);
$ct->delete();
} else {
2021-06-14 15:15:52 +02:00
return redirect()->back()
->withErrors(
'Le moment consommation que vous souhaitez supprimer est encore lié à un ou plusieurs produit(s).'
);
}
2020-07-23 17:06:19 +02:00
return redirect()->route('bo.consumption-times.index')
->with('warning', 'Le contenu à bien été supprimé');
2020-07-23 17:06:19 +02:00
}
}