Files
cmsi-kchb/app/Http/Controllers/ActivitiesParticipantController.php
2025-06-13 12:29:06 +08:00

71 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests\ActivitiesParticipantRequest;
use App\Models\ActivitiesParticipant;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;
class ActivitiesParticipantController extends Controller
{
public function index()
{
return view('activitiesParticipant');
}
public function info()
{
return view('activitiesParticipantInfo');
}
public function play()
{
return view('activitiesParticipantPlay');
}
public function playFillForm()
{
return view('activitiesParticipantPlayFillForm');
}
public function playFillFormPost(ActivitiesParticipantRequest $request)
{
try
{
throw new \Exception('活動抽獎登記已載止。');
DB::beginTransaction();
$item = (new ActivitiesParticipant())->where('id_number','=', $request->input('id_number'));
$item = $item->first();
if ($item)
{
throw new \Exception('您已經登記過囉~');
}
ActivitiesParticipant::insert([
'email' => $request->input('email'),
'name' => $request->input('name'),
'phone' => $request->input('phone'),
'id_number' => $request->input('id_number'),
'created_at' => Carbon::now(),
]);
DB::commit();
}
catch (\Exception $ex)
{
DB::rollBack();
return redirect()->back()->withErrors([$ex->getMessage()])->withInput(Request()->all());
}
return redirect()->back()->with('success', '登記成功!');
}
public function winners()
{
return view('activitiesParticipantWinners');
}
}