ldc-legaulois/app/Http/Controllers/Bo/ConsumptionTimesController.php
Romain Bonhomme 4e9dd7fef5 Corrections :
- Refonte du lien entre Products et ConsumptionTimes (j'avais fait un lien entre Products et Moments avant, erreur d'innatention)
- Suppression d'un produit : Ajout du check concernant les clefs étrangères de Recipes (associated_product1 et associated_product2)
- Dans la gestion des recettes, lorsque l'on choisit un produit associé n°1 (associated_product1), la valeur du select Moment Consommation prend la valeur du moment du produit choisi (Products->consumption_times_id) comme sur l'ancien site
2020-10-08 15:07:18 +02:00

81 lines
2 KiB
PHP

<?php
namespace App\Http\Controllers\Bo;
use App\Http\Controllers\Controller;
use App\Models\ConsumptionTimes;
use App\Models\Products;
use Illuminate\Http\Request;
class ConsumptionTimesController extends Controller
{
public function index()
{
$ct = ConsumptionTimes::all();
return view('bo.consumption-times.index', compact('ct'));
}
public function create()
{
return view('bo.consumption-times.create');
}
public function store(Request $request)
{
$name = $request->name;
$status = $request->status;
$request->validate([
'name' => 'required|max:50',
]);
if ($status !== "1")
$status = 0;
$ct = new ConsumptionTimes();
$ct->name = $name;
$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)
{
$name = $request->name;
$status = $request->status;
$request->validate([
'name' => 'required|max:50',
]);
if ($status !== "1")
$status = 0;
$ct = ConsumptionTimes::findOrFail($id);
$ct->name = $name;
$ct->status = $status;
$ct->save();
return redirect()->route('bo.consumption-times.edit', ['consumption_time' => $ct->id])->with('success', 'Enregistré !');
}
public function destroy($id)
{
$pExist = Products::where('moment_id', $id)->exists();
if (!$pExist) {
$ct = ConsumptionTimes::findOrFail($id);
$ct->delete();
} else {
return redirect()->back()->withErrors('Le moment consommation que vous souhaitez supprimer est encore lié à un ou plusieurs produit(s).');
}
return redirect()->route('bo.consumption-times.index');
}
}