Undangan/backend/app/Http/Controllers/Api/UlangTahunApiController.php
2025-09-08 15:55:58 +07:00

52 lines
1.7 KiB
PHP

<?php
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use App\Models\Pelanggan;
use App\Models\PelangganDetail;
use Illuminate\Http\Request;
class UlangTahunApiController extends Controller
{
public function store(Request $request)
{
$data = $request->validate([
'nama_pemesan' => 'required|string|max:255',
'no_hp' => 'required|string|max:20',
'email' => 'required|email',
'nama_panjang' => 'required|string|max:255',
'nama_panggilan' => 'required|string|max:255',
'ulang_tahun_ke' => 'required|integer',
'anak_ke' => 'required|integer',
'nama_orangtua' => 'required|string|max:255',
'alamat' => 'required|string',
'tanggal_acara' => 'required|date',
'link_musik' => 'nullable|string',
'kata_pengucapan' => 'nullable|string',
'galeri' => 'nullable|string',
'template_id' => 'required|exists:templates,id',
]);
$pelanggan = Pelanggan::create([
'nama_pemesan' => $data['nama_pemesan'],
'nama_template' => 'Template Ulang Tahun',
'kategori' => 'ulang_tahun',
'email' => $data['email'],
'no_tlpn' => $data['no_hp'],
'harga' => 0,
]);
PelangganDetail::create([
'pelanggan_id' => $pelanggan->id,
'detail_form' => $data,
]);
return response()->json([
'success' => true,
'message' => 'Form ulang tahun berhasil dikirim',
'data' => $pelanggan->load('details')
], 201);
}
}