From 3c2ca564fbaf2b5de93c6d07883d3559dd222424 Mon Sep 17 00:00:00 2001 From: ariefabbauftech-ai Date: Thu, 11 Sep 2025 09:50:26 +0700 Subject: [PATCH] [Edit From] --- .../Controllers/Api/KhitanApiController.php | 27 +++++++---- .../Api/PernikahanApiController.php | 48 +++++++++++++++---- .../Api/UlangTahunApiController.php | 28 ++++++----- .../Http/Controllers/TemplateController.php | 4 +- backend/app/Models/Khitan.php | 24 ++++++++-- backend/app/Models/Pernikahan.php | 47 ++++++++++++++++-- backend/app/Models/UlangTahun.php | 25 ++++++++-- ...08_085321_create_pernikahans_table.php.php | 46 +++++++++++++++--- ...8_085336_create_ulang_tahuns_table.php.php | 23 +++++---- ..._09_08_085416_create_khitans_table.php.php | 25 +++++++--- 10 files changed, 234 insertions(+), 63 deletions(-) diff --git a/backend/app/Http/Controllers/Api/KhitanApiController.php b/backend/app/Http/Controllers/Api/KhitanApiController.php index c617ea3..56a5a48 100644 --- a/backend/app/Http/Controllers/Api/KhitanApiController.php +++ b/backend/app/Http/Controllers/Api/KhitanApiController.php @@ -12,17 +12,28 @@ class KhitanApiController extends Controller public function store(Request $request) { $data = $request->validate([ + 'template_id' => 'required|exists:templates,id', 'nama_pemesan' => 'required|string|max:255', 'no_hp' => 'required|string|max:20', 'email' => 'required|email', - 'nama_anak' => 'required|string|max:255', - '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', + + // Anak + 'nama_lengkap_anak' => 'required|string|max:255', + 'nama_panggilan_anak' => 'required|string|max:255', + 'bapak_anak' => 'nullable|string|max:255', + 'ibu_anak' => 'nullable|string|max:255', + + // Jadwal + 'hari_tanggal_acara' => 'nullable|date', + 'waktu_acara' => 'nullable|string', + 'alamat_acara' => 'nullable|string', + 'maps_acara' => 'nullable|string', + + // Tambahan + 'no_rekening1' => 'nullable|string', + 'no_rekening2' => 'nullable|string', + 'link_musik' => 'nullable|string', + 'galeri' => 'nullable|string', ]); $pelanggan = Pelanggan::create([ diff --git a/backend/app/Http/Controllers/Api/PernikahanApiController.php b/backend/app/Http/Controllers/Api/PernikahanApiController.php index 1408ae3..659660c 100644 --- a/backend/app/Http/Controllers/Api/PernikahanApiController.php +++ b/backend/app/Http/Controllers/Api/PernikahanApiController.php @@ -12,18 +12,48 @@ class PernikahanApiController extends Controller public function store(Request $request) { $data = $request->validate([ + 'template_id' => 'required|exists:templates,id', 'nama_pemesan' => 'required|string|max:255', 'no_hp' => 'required|string|max:20', 'email' => 'required|email', - 'nama_pria' => 'required|string|max:255', - 'nama_wanita' => 'required|string|max:255', - 'alamat' => 'required|string', - 'tanggal_acara' => 'required|date', - 'link_undangan' => 'nullable|string', - 'kata_pengucapan' => 'nullable|string', - 'galeri' => 'nullable|string', - 'link_musik' => 'nullable|string', - 'template_id' => 'required|exists:templates,id', + // Pria + 'nama_lengkap_pria' => 'required|string|max:255', + 'nama_panggilan_pria' => 'required|string|max:255', + 'bapak_pria' => 'nullable|string|max:255', + 'ibu_pria' => 'nullable|string|max:255', + 'instagram_pria' => 'nullable|string', + 'facebook_pria' => 'nullable|string', + 'twitter_pria' => 'nullable|string', + + // Wanita + 'nama_lengkap_wanita' => 'required|string|max:255', + 'nama_panggilan_wanita' => 'required|string|max:255', + 'bapak_wanita' => 'nullable|string|max:255', + 'ibu_wanita' => 'nullable|string|max:255', + 'instagram_wanita' => 'nullable|string', + 'facebook_wanita' => 'nullable|string', + 'twitter_wanita' => 'nullable|string', + + // Cerita + 'cerita_kita' => 'nullable|string', + + // Akad + 'hari_tanggal_akad' => 'nullable|date', + 'waktu_akad' => 'nullable|string', + 'alamat_akad' => 'nullable|string', + 'maps_akad' => 'nullable|string', + + // Resepsi + 'hari_tanggal_resepsi' => 'nullable|date', + 'waktu_resepsi' => 'nullable|string', + 'alamat_resepsi' => 'nullable|string', + 'maps_resepsi' => 'nullable|string', + + // Tambahan + 'no_rekening1' => 'nullable|string', + 'no_rekening2' => 'nullable|string', + 'link_musik' => 'nullable|string', + 'galeri' => 'nullable|string', ]); $pelanggan = Pelanggan::create([ diff --git a/backend/app/Http/Controllers/Api/UlangTahunApiController.php b/backend/app/Http/Controllers/Api/UlangTahunApiController.php index b175845..b6bcdf9 100644 --- a/backend/app/Http/Controllers/Api/UlangTahunApiController.php +++ b/backend/app/Http/Controllers/Api/UlangTahunApiController.php @@ -12,20 +12,26 @@ class UlangTahunApiController extends Controller public function store(Request $request) { $data = $request->validate([ + 'template_id' => 'required|exists:templates,id', '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', + + //Data + 'nama_lengkap_anak' => 'required|string|max:255', + 'nama_panggilan_anak' => 'required|string|max:100', + 'bapak_anak' => 'required|string|max:255', + 'ibu_anak' => 'required|string|max:255', + 'umur_dirayakan' => 'required|string|max:10', + 'anak_ke' => 'required|string|max:5', + + //Jadwal + 'hari_tanggal_acara' => 'required|date', + 'waktu_acara' => 'required|string|max:50', + 'alamat_acara' => 'required|string', + 'maps_acara' => 'nullable|string', + 'link_musik' => 'nullable|string', + 'galeri' => 'nullable|string', ]); $pelanggan = Pelanggan::create([ diff --git a/backend/app/Http/Controllers/TemplateController.php b/backend/app/Http/Controllers/TemplateController.php index c5e4085..505af2e 100644 --- a/backend/app/Http/Controllers/TemplateController.php +++ b/backend/app/Http/Controllers/TemplateController.php @@ -26,7 +26,7 @@ class TemplateController extends Controller 'kategori_id' => 'required|exists:kategoris,id', 'fitur_id' => 'required|exists:fiturs,id', 'foto' => 'nullable|image|mimes:jpg,jpeg,png,gif|max:5120', - 'harga' => 'required|numeric|min:0' + 'harga' => 'required|numeric|min:0' ]); if ($request->hasFile('foto')) { @@ -44,7 +44,7 @@ class TemplateController extends Controller 'kategori_id' => 'required|exists:kategoris,id', 'fitur_id' => 'required|exists:fiturs,id', 'foto' => 'nullable|image|mimes:jpg,jpeg,png,gif|max:5120', - 'harga' => 'required|numeric|min:0' + 'harga' => 'required|numeric|min:0' ]); if ($request->hasFile('foto')) { diff --git a/backend/app/Models/Khitan.php b/backend/app/Models/Khitan.php index c0d453d..27c29ff 100644 --- a/backend/app/Models/Khitan.php +++ b/backend/app/Models/Khitan.php @@ -7,10 +7,26 @@ use Illuminate\Database\Eloquent\Model; class Khitan extends Model { protected $fillable = [ - 'template_id', 'nama_pemesan', 'no_hp', 'email', - 'nama_panjang', 'nama_pendek', 'nama_orangtua', - 'alamat', 'tanggal_acara', 'link_musik', 'galeri', - 'kata_pengucapan' + 'template_id', + 'nama_pemesan', + 'no_hp', + 'email', + + //Data + 'nama_lengkap_anak', + 'nama_panggilan_anak', + 'bapak_anak', + 'ibu_anak', + + //Jadwal + 'hari_tanggal_acara', + 'waktu_acara', + 'alamat_acara', + 'maps_acara', + 'no_rekening1', + 'no_rekening2', + 'link_musik', + 'galeri', ]; public function template() { diff --git a/backend/app/Models/Pernikahan.php b/backend/app/Models/Pernikahan.php index d8fc1c0..ef44439 100644 --- a/backend/app/Models/Pernikahan.php +++ b/backend/app/Models/Pernikahan.php @@ -7,9 +7,50 @@ use Illuminate\Database\Eloquent\Model; class Pernikahan extends Model { protected $fillable = [ - 'template_id', 'nama_pemesan', 'no_hp', 'email', - 'nama_pria', 'nama_wanita', 'alamat', 'tanggal_acara', - 'link_undangan', 'kata_pengucapan', 'galeri', 'link_musik' + + 'template_id', + 'nama_pemesan', + 'no_hp', + 'email', + + // Pria + 'nama_lengkap_pria', + 'nama_panggilan_pria', + 'bapak_pria', + 'ibu_pria', + 'instagram_pria', + 'facebook_pria', + 'twitter_pria', + + // Wanita + 'nama_lengkap_wanita', + 'nama_panggilan_wanita', + 'bapak_wanita', + 'ibu_wanita', + 'instagram_wanita', + 'facebook_wanita', + 'twitter_wanita', + + // Cerita + 'cerita_kita', + + // Akad + 'hari_tanggal_akad', + 'waktu_akad', + 'alamat_akad', + 'maps_akad', + + // Resepsi + 'hari_tanggal_resepsi', + 'waktu_resepsi', + 'alamat_resepsi', + 'maps_resepsi', + + // Tambahan + 'no_rekening1', + 'no_rekening2', + 'link_musik', + 'galeri', ]; public function template() { diff --git a/backend/app/Models/UlangTahun.php b/backend/app/Models/UlangTahun.php index 0a0a3d4..6190cb3 100644 --- a/backend/app/Models/UlangTahun.php +++ b/backend/app/Models/UlangTahun.php @@ -7,10 +7,27 @@ use Illuminate\Database\Eloquent\Model; class UlangTahun extends Model { protected $fillable = [ - 'template_id', 'nama_pemesan', 'no_hp', 'email', - 'nama_panjang', 'nama_panggilan', 'ulang_tahun_ke', 'anak_ke', - 'nama_orangtua', 'alamat', 'tanggal_acara', 'link_musik', - 'kata_pengucapan', 'galeri' + + 'template_id', + 'nama_pemesan', + 'no_hp', + 'email', + + //Data + 'nama_lengkap_anak', + 'nama_panggilan_anak', + 'bapak_anak', + 'ibu_anak', + 'umur_dirayakan', + 'anak_ke', + + //Jadwal + 'hari_tanggal_acara', + 'waktu_acara', + 'alamat_acara', + 'maps_acara', + 'link_musik', + 'galeri', ]; public function template() { diff --git a/backend/database/migrations/2025_09_08_085321_create_pernikahans_table.php.php b/backend/database/migrations/2025_09_08_085321_create_pernikahans_table.php.php index 2219c01..5fb9596 100644 --- a/backend/database/migrations/2025_09_08_085321_create_pernikahans_table.php.php +++ b/backend/database/migrations/2025_09_08_085321_create_pernikahans_table.php.php @@ -13,14 +13,46 @@ return new class extends Migration { $table->string('nama_pemesan'); $table->string('no_hp'); $table->string('email'); - $table->string('nama_pria'); - $table->string('nama_wanita'); - $table->string('alamat'); - $table->date('tanggal_acara'); - $table->string('link_undangan')->nullable(); - $table->text('kata_pengucapan')->nullable(); - $table->string('galeri')->nullable(); + // Data Pria + $table->string('nama_lengkap_pria'); + $table->string('nama_panggilan_pria'); + $table->string('bapak_pria')->nullable(); + $table->string('ibu_pria')->nullable(); + $table->string('instagram_pria')->nullable(); + $table->string('facebook_pria')->nullable(); + $table->string('twitter_pria')->nullable(); + + // Data Wanita + $table->string('nama_lengkap_wanita'); + $table->string('nama_panggilan_wanita'); + $table->string('bapak_wanita')->nullable(); + $table->string('ibu_wanita')->nullable(); + $table->string('instagram_wanita')->nullable(); + $table->string('facebook_wanita')->nullable(); + $table->string('twitter_wanita')->nullable(); + + // Cerita + $table->text('cerita_kita')->nullable(); + + // Akad + $table->date('hari_tanggal_akad')->nullable(); + $table->string('waktu_akad')->nullable(); + $table->text('alamat_akad')->nullable(); + $table->string('maps_akad')->nullable(); + + // Resepsi + $table->date('hari_tanggal_resepsi')->nullable(); + $table->string('waktu_resepsi')->nullable(); + $table->text('alamat_resepsi')->nullable(); + $table->string('maps_resepsi')->nullable(); + + // Tambahan + $table->string('no_rekening1')->nullable(); + $table->string('no_rekening2')->nullable(); $table->string('link_musik')->nullable(); + $table->text('galeri')->nullable(); + + $table->timestamps(); }); } diff --git a/backend/database/migrations/2025_09_08_085336_create_ulang_tahuns_table.php.php b/backend/database/migrations/2025_09_08_085336_create_ulang_tahuns_table.php.php index 93ca496..55332d8 100644 --- a/backend/database/migrations/2025_09_08_085336_create_ulang_tahuns_table.php.php +++ b/backend/database/migrations/2025_09_08_085336_create_ulang_tahuns_table.php.php @@ -13,16 +13,23 @@ return new class extends Migration { $table->string('nama_pemesan'); $table->string('no_hp'); $table->string('email'); - $table->string('nama_panjang'); - $table->string('nama_panggilan'); - $table->integer('ulang_tahun_ke'); - $table->integer('anak_ke'); - $table->string('nama_orangtua'); - $table->string('alamat'); - $table->date('tanggal_acara'); + + // Data anak + $table->string('nama_lengkap_anak'); + $table->string('nama_panggilan_anak'); + $table->string('bapak_anak'); + $table->string('ibu_anak'); + $table->string('umur_dirayakan'); + $table->string('anak_ke'); + + // Jadwal acara + $table->date('hari_tanggal_acara'); + $table->string('waktu_acara'); + $table->text('alamat_acara'); + $table->string('maps_acara')->nullable(); $table->string('link_musik')->nullable(); - $table->text('kata_pengucapan')->nullable(); $table->string('galeri')->nullable(); + $table->timestamps(); }); } diff --git a/backend/database/migrations/2025_09_08_085416_create_khitans_table.php.php b/backend/database/migrations/2025_09_08_085416_create_khitans_table.php.php index 8dc7109..1dfe3db 100644 --- a/backend/database/migrations/2025_09_08_085416_create_khitans_table.php.php +++ b/backend/database/migrations/2025_09_08_085416_create_khitans_table.php.php @@ -13,14 +13,25 @@ return new class extends Migration { $table->string('nama_pemesan'); $table->string('no_hp'); $table->string('email'); - $table->string('nama_panjang'); - $table->string('nama_pendek'); - $table->string('nama_orangtua'); - $table->string('alamat'); - $table->date('tanggal_acara'); + + // Data Anak + $table->string('nama_lengkap_anak'); + $table->string('nama_panggilan_anak'); + $table->string('bapak_anak')->nullable(); + $table->string('ibu_anak')->nullable(); + + // Jadwal + $table->date('hari_tanggal_acara')->nullable(); + $table->string('waktu_acara')->nullable(); + $table->text('alamat_acara')->nullable(); + $table->string('maps_acara')->nullable(); + + // Tambahan + $table->string('no_rekening1')->nullable(); + $table->string('no_rekening2')->nullable(); $table->string('link_musik')->nullable(); - $table->string('galeri')->nullable(); - $table->text('kata_pengucapan')->nullable(); + $table->text('galeri')->nullable(); + $table->timestamps(); }); }