2020-10-21 15:26:21 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Http\Controllers\bo;
|
|
|
|
|
|
|
|
|
|
use App\Http\Controllers\Controller;
|
|
|
|
|
use App\Models\GainView;
|
|
|
|
|
use App\Models\Prizes;
|
|
|
|
|
use Exception;
|
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
|
|
|
|
|
|
class PrizesController extends Controller
|
|
|
|
|
{
|
|
|
|
|
public function index() {
|
|
|
|
|
$prizes = Prizes::all();
|
|
|
|
|
$gainViews = GainView::all();
|
|
|
|
|
return view('bo.prizes.index', compact('prizes', 'gainViews'));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function saveDatas(Request $request) {
|
|
|
|
|
$prizes = json_decode($request->prizes);
|
|
|
|
|
$pdfs = $request->file('pdf');
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
$request->validate([
|
|
|
|
|
'pdf_winning_proof.*' => 'file|mimes:pdf|size:20480',
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
for ($i = 0; $i < count($prizes); $i++) {
|
|
|
|
|
$prize = $prizes[$i];
|
2020-11-05 16:03:44 +01:00
|
|
|
if ($prize->id !== null) {
|
2020-10-21 15:26:21 +02:00
|
|
|
$p = Prizes::findOrFail($prize->id);
|
|
|
|
|
|
|
|
|
|
$p->arcadia_id = $prize->arcadia_id;
|
|
|
|
|
$p->label_one = $prize->label_one;
|
|
|
|
|
$p->label_many = $prize->label_many;
|
|
|
|
|
$p->quantity = $prize->quantity;
|
2021-02-23 18:27:03 +01:00
|
|
|
$p->arcadia_operation_code = $prize->arcadia_operation_code;
|
|
|
|
|
$p->arcadia_support_code = $prize->arcadia_support_code;
|
2020-11-04 11:49:43 +01:00
|
|
|
$p->need_proof = $prize->need_proof;
|
2020-10-21 15:26:21 +02:00
|
|
|
$p->gain_view_id = $prize->gain_view_id;
|
|
|
|
|
|
|
|
|
|
if (isset($pdfs[$i])) {
|
|
|
|
|
$fileName = Str::slug($prize->label_one) . '-' . date('d-m-Y') . '.' . $pdfs[$i]->extension();
|
|
|
|
|
$p->pdf_winning_proof = $fileName;
|
|
|
|
|
$pdfs[$i]->move(public_path('fichiers/pdf/'), $fileName);
|
|
|
|
|
$prizes[$i]->pdf_winning_proof = $fileName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$p->save();
|
|
|
|
|
} else {
|
|
|
|
|
$p = new Prizes();
|
|
|
|
|
$p->arcadia_id = $prize->arcadia_id;
|
|
|
|
|
$p->label_one = $prize->label_one;
|
|
|
|
|
$p->label_many = $prize->label_many;
|
|
|
|
|
$p->quantity = $prize->quantity;
|
2021-02-23 18:27:03 +01:00
|
|
|
$p->arcadia_operation_code = $prize->arcadia_operation_code;
|
|
|
|
|
$p->arcadia_support_code = $prize->arcadia_support_code;
|
2020-11-04 11:49:43 +01:00
|
|
|
$p->need_proof = $prize->need_proof;
|
2020-10-21 15:26:21 +02:00
|
|
|
$p->gain_view_id = $prize->gain_view_id;
|
|
|
|
|
|
|
|
|
|
if (isset($pdfs[$i])) {
|
|
|
|
|
$fileName = Str::slug($prize->label_one) . '-' . date('d-m-Y') . '.' . $pdfs[$i]->extension();
|
|
|
|
|
$p->pdf_winning_proof = $fileName;
|
|
|
|
|
$pdfs[$i]->move(public_path('fichiers/pdf/'), $fileName);
|
|
|
|
|
$prizes[$i]->pdf_winning_proof = $fileName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$p->save();
|
2020-11-05 16:03:44 +01:00
|
|
|
$prizes[$i]->id = $p->id;
|
2020-10-21 15:26:21 +02:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception $e) {
|
|
|
|
|
//
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $prizes;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function destroy(Request $request)
|
|
|
|
|
{
|
|
|
|
|
$retour = "Suppression terminée !";
|
|
|
|
|
|
|
|
|
|
if ($request->id !== null) {
|
|
|
|
|
try {
|
|
|
|
|
$prize = Prizes::findOrFail($request->id);
|
|
|
|
|
$prize->delete();
|
|
|
|
|
} catch (Exception $e) {
|
|
|
|
|
$retour = "Erreur lors de la suppression : " . $e->getMessage();
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$retour = "Erreur lors de la suppression : Aucun ID envoyé.";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $retour;
|
|
|
|
|
}
|
|
|
|
|
}
|