From 9f1a480357614f9ac39c9ad309b570d3a5c2cd59 Mon Sep 17 00:00:00 2001 From: rahmatrafli1 Date: Fri, 13 Dec 2024 08:31:42 +0700 Subject: [PATCH 1/5] update isi tabel jenis jaminan di database local --- database/seeders/LpjDatabaseSeeder.php | 4 +- database/seeders/sql/jenis_jaminan.sql | 66 +++++++++++--------------- 2 files changed, 31 insertions(+), 39 deletions(-) diff --git a/database/seeders/LpjDatabaseSeeder.php b/database/seeders/LpjDatabaseSeeder.php index b8ab38c..1e92c0c 100644 --- a/database/seeders/LpjDatabaseSeeder.php +++ b/database/seeders/LpjDatabaseSeeder.php @@ -30,9 +30,9 @@ class LpjDatabaseSeeder extends Seeder TeamUsersSeeder::class, JenisPenilaianSeeder::class, IjinUsahaSeeder::class, - // TujuanPenilaianKJPPSeeder::class, + TujuanPenilaianKJPPSeeder::class, + JenisLaporanSeeder::class, // KJPPSeeder::class, - // JenisLaporanSeeder::class, // DebitureSeeder::class, // PemilikJaminanSeeder::class, // DokumenJaminanSeeder::class, diff --git a/database/seeders/sql/jenis_jaminan.sql b/database/seeders/sql/jenis_jaminan.sql index 0b7cc76..883c818 100644 --- a/database/seeders/sql/jenis_jaminan.sql +++ b/database/seeders/sql/jenis_jaminan.sql @@ -1,37 +1,29 @@ --- MySQL dump 10.13 Distrib 8.0.39, for Win64 (x86_64) --- --- Host: localhost Database: lpj --- ------------------------------------------------------ --- Server version 8.0.39 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Dumping data for table `jenis_jaminan` --- - -LOCK TABLES `jenis_jaminan` WRITE; -/*!40000 ALTER TABLE `jenis_jaminan` DISABLE KEYS */; -INSERT INTO `jenis_jaminan` VALUES (1,'JJ001','Tanah','tanah','[\"tanah\", \"lingkungan\", \"fakta\"]','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ005\",\"JLJ006\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(2,'JJ002','Unit Apartemen','unit-apartemen','[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ022\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(3,'JJ003','Kawasan Industrial / Komersil / Residensial - Perumahan','kawasan-industrial-komersil-residensial-perumahan','[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ008\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(4,'JJ004','Mall','mall','null','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ012\",\"JLJ013\",\"JLJ014\",\"JLJ015\",\"JLJ021\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(5,'JJ005','Pabrik','pabrik','null','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ011\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(6,'JJ006','Emas dan Perak','emas-dan-perak','null','[\"JLJ001\",\"JLJ007\",\"JLJ014\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(7,'JJ007','Alat Berat','alat-berat','null','[\"JLJ004\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(8,'JJ008','Rumah Tinggal','rumah-tinggal','[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(9,'JJ009','Full Properti','full-properti','[\"tanah\", \"bangunan\", \"informasi\"]','[\"JLJ001\",\"JLJ006\",\"JLJ007\",\"JLJ009\"]',1,'2024-12-06 02:16:02','2024-12-10 15:07:46',NULL,NULL,NULL,NULL,1,NULL,NULL),(10,'JJ010','Gudang','gudang','[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(11,'JJ011','Unit Kios','unit-kios','[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(12,'JJ012','Gedung Mall','gedung-mall','[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ007\",\"JLJ009\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(13,'JJ013','Tanah Bangunan','tanah-bangunan','[\"tanah\", \"bangunan\"]','[\"JLJ001\",\"JLJ003\",\"JLJ005\",\"JLJ007\",\"JLJ009\",\"JLJ022\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(14,'JJ014','Apartemen','apartemen','[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ003\",\"JLJ022\",\"JLJ024\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(15,'JJ015','Ruko','ruko','[\"tanah\", \"bangunan\"]','[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(16,'JJ016','Mesin Tekstil','mesin-tekstil','[\"mesin\"]','[\"JLJ011\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(17,'JJ017','Mesin','mesin','[\"mesin\"]','[\"JLJ011\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(18,'JJ018','Mesin Tenun Tekstil','mesin-tenun-tekstil','[\"mesin\"]','[\"JLJ011\",\"JLJ022\"]',1,'2024-12-06 02:16:02','2024-12-06 02:16:02',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(19,'JJ019','Penilaian Bisnis','penilaian-bisnis','[\"fakta\", \"informasi\"]','[\"JLJ001\",\"JLJ007\",\"JLJ014\"]',1,'2024-12-09 19:34:01','2024-12-09 19:34:01',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(20,'JJ020','Penilaian Tanah dan Bangunan','penilaian-tanah-dan-bangunan','[\"tanah\", \"bangunan\"]','[\"JLJ001\",\"JLJ003\",\"JLJ007\"]',1,'2024-12-09 19:34:54','2024-12-09 19:34:54',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(21,'JJ021','Penilaian Mesin','penilaian-mesin','[\"mesin\"]','[\"JLJ011\",\"JLJ022\"]',1,'2024-12-09 20:00:13','2024-12-09 20:00:13',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(22,'JJ022','Penilian Kapal dan Pesawat','penilian-kapal-dan-pesawat','[\"kapal\", \"pesawat\"]','[\"JLJ011\",\"JLJ022\"]',1,'2024-12-09 20:01:00','2024-12-09 20:01:00',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(23,'JJ023','Tanah Kosong','tanah-kosong','[\"tanah\"]','[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]',1,'2024-12-09 20:18:24','2024-12-09 20:18:24',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(24,'JJ024','Tanah Kosong untuk dikembangkan','tanah-kosong-untuk-dikembangkan','[\"tanah\"]','[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]',1,'2024-12-09 20:19:03','2024-12-09 20:19:03',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(25,'JJ025','Bisnis','bisnis','[\"informasi\", \"lingkungan\"]','[\"JLJ001\",\"JLJ007\"]',1,'2024-12-10 15:09:26','2024-12-10 15:09:26',NULL,NULL,NULL,NULL,NULL,NULL,NULL),(26,'JJ026','Properti Sederhana','properti-sederhana','[\"lingkungan\", \"tanah\"]','[\"JLJ001\",\"JLJ007\"]',1,'2024-12-10 15:10:01','2024-12-10 15:10:01',NULL,NULL,NULL,NULL,NULL,NULL,NULL); -/*!40000 ALTER TABLE `jenis_jaminan` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2024-12-11 8:45:38 +INSERT INTO jenis_jaminan VALUES +(1, 'JJ001', 'Tanah', 'tanah', '[\"tanah\", \"lingkungan\", \"fakta\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ005\",\"JLJ006\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(2, 'JJ002', 'Unit Apartemen', 'unit-apartemen', '[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ022\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(3, 'JJ003', 'Kawasan Industrial / Komersil / Residensial - Perumahan', 'kawasan-industrial-komersil-residensial-perumahan', '[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ008\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(4, 'JJ004', 'Mall', 'mall', 'null', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ012\",\"JLJ013\",\"JLJ014\",\"JLJ015\",\"JLJ021\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(5, 'JJ005', 'Pabrik', 'pabrik', 'null', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ011\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(6, 'JJ006', 'Emas dan Perak', 'emas-dan-perak', 'null', '[\"JLJ001\",\"JLJ007\",\"JLJ014\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(7, 'JJ007', 'Alat Berat', 'alat-berat', 'null', '[\"JLJ004\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(8, 'JJ008', 'Rumah Tinggal', 'rumah-tinggal', '[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ004\",\"JLJ006\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(9, 'JJ009', 'Full Properti', 'full-properti', '[\"tanah\", \"bangunan\", \"informasi\"]', '[\"JLJ001\",\"JLJ006\",\"JLJ007\",\"JLJ009\"]', 1, '2024-12-06 09:16:02', '2024-12-10 22:07:46', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(10, 'JJ010', 'Gudang', 'gudang', '[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(11, 'JJ011', 'Unit Kios', 'unit-kios', '[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ007\",\"JLJ009\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(12, 'JJ012', 'Gedung Mall', 'gedung-mall', '[\"tanah\", \"bangunan\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ007\",\"JLJ009\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(13, 'JJ013', 'Tanah Bangunan', 'tanah-bangunan', '[\"tanah\", \"bangunan\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ005\",\"JLJ007\",\"JLJ009\",\"JLJ022\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(14, 'JJ014', 'Apartemen', 'apartemen', '[\"apartemen-kantor\", \"lingkungan\", \"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ022\",\"JLJ024\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(15, 'JJ015', 'Ruko', 'ruko', '[\"tanah\", \"bangunan\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(16, 'JJ016', 'Mesin Tekstil', 'mesin-tekstil', '[\"mesin\"]', '[\"JLJ011\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(17, 'JJ017', 'Mesin', 'mesin', '[\"mesin\"]', '[\"JLJ011\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(18, 'JJ018', 'Mesin Tenun Tekstil', 'mesin-tenun-tekstil', '[\"mesin\"]', '[\"JLJ011\",\"JLJ022\"]', 1, '2024-12-06 09:16:02', '2024-12-06 09:16:02', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(19, 'JJ019', 'Penilaian Bisnis', 'penilaian-bisnis', '[\"fakta\", \"informasi\"]', '[\"JLJ001\",\"JLJ007\",\"JLJ014\"]', 1, '2024-12-10 02:34:01', '2024-12-10 02:34:01', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(20, 'JJ020', 'Penilaian Tanah dan Bangunan', 'penilaian-tanah-dan-bangunan', '[\"tanah\", \"bangunan\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ007\"]', 1, '2024-12-10 02:34:54', '2024-12-10 02:34:54', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(21, 'JJ021', 'Penilaian Mesin', 'penilaian-mesin', '[\"mesin\"]', '[\"JLJ011\",\"JLJ022\"]', 1, '2024-12-10 03:00:13', '2024-12-10 03:00:13', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(22, 'JJ022', 'Penilian Kapal dan Pesawat', 'penilian-kapal-dan-pesawat', '[\"kapal\", \"pesawat\"]', '[\"JLJ011\",\"JLJ022\"]', 1, '2024-12-10 03:01:00', '2024-12-10 03:01:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(23, 'JJ023', 'Tanah Kosong', 'tanah-kosong', '[\"tanah\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]', 1, '2024-12-10 03:18:24', '2024-12-10 03:18:24', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(24, 'JJ024', 'Tanah Kosong untuk dikembangkan', 'tanah-kosong-untuk-dikembangkan', '[\"tanah\"]', '[\"JLJ001\",\"JLJ003\",\"JLJ007\",\"JLJ022\"]', 1, '2024-12-10 03:19:03', '2024-12-10 03:19:03', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(25, 'JJ025', 'Bisnis', 'bisnis', '[\"informasi\", \"lingkungan\"]', '[\"JLJ001\",\"JLJ007\"]', 1, '2024-12-10 22:09:26', '2024-12-10 22:09:26', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(26, 'JJ026', 'Properti Sederhana', 'properti-sederhana', '[\"lingkungan\", \"tanah\"]', '[\"JLJ001\",\"JLJ007\"]', 1, '2024-12-10 22:10:01', '2024-12-10 22:10:01', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(27, 'JJ027', 'Bangunan', 'bangunan', '[\"bangunan\"]', '[\"JLJ003\",\"JLJ007\"]', 1, '2024-12-12 08:13:41', '2024-12-12 08:13:41', NULL, NULL, NULL, NULL, NULL, NULL, NULL), +(28, 'JJ028', 'Kendaraan Bermotor', 'kendaraan-bermotor', '[\"kendaraan\"]', '[\"JLJ022\"]', 1, '2024-12-12 08:15:51', '2024-12-12 08:15:51', NULL, NULL, NULL, NULL, NULL, NULL, NULL); From 2c8a9a9caf9ff7295e5bee3c49038a2da708af02 Mon Sep 17 00:00:00 2001 From: rahmatrafli1 Date: Fri, 13 Dec 2024 08:55:06 +0700 Subject: [PATCH 2/5] Revert "Menghapus kolom yang mengandung detail pada tabel kjpp" This reverts commit 907240e003ae782357072df21df823ef92e240c1. --- .../2024_12_11_102623_delete_kjpp_table.php | 36 ------------------- 1 file changed, 36 deletions(-) delete mode 100644 database/migrations/2024_12_11_102623_delete_kjpp_table.php diff --git a/database/migrations/2024_12_11_102623_delete_kjpp_table.php b/database/migrations/2024_12_11_102623_delete_kjpp_table.php deleted file mode 100644 index 7ddba24..0000000 --- a/database/migrations/2024_12_11_102623_delete_kjpp_table.php +++ /dev/null @@ -1,36 +0,0 @@ -dropColumn(['detail_email_kantor', 'detail_nama_pimpinan', 'detail_nomor_hp_pimpinan', 'detail_nama_pic_reviewer', 'detail_nomor_hp_pic_reviewer', 'detail_nama_pic_admin', 'detail_nomor_hp_pic_admin', 'detail_nama_pic_marketing', 'detail_nomor_hp_pic_marketing']); - }); - } - - /** - * Reverse the migrations. - */ - public function down(): void - { - Schema::table('kjpp', function (Blueprint $table) { - $table->string('detail_email_kantor')->nullable(); - $table->string('detail_nama_pimpinan')->nullable(); - $table->string('detail_nomor_hp_pimpinan')->nullable(); - $table->string('detail_nama_pic_reviewer')->nullable(); - $table->string('detail_nomor_hp_pic_reviewer')->nullable(); - $table->string('detail_nama_pic_admin')->nullable(); - $table->string('detail_nomor_hp_pic_admin')->nullable(); - $table->string('detail_nama_pic_marketing')->nullable(); - $table->string('detail_nomor_hp_pic_marketing')->nullable(); - }); - } -}; From 6e64f86521a81a58572b9543ab780796ea133326 Mon Sep 17 00:00:00 2001 From: rahmatrafli1 Date: Fri, 13 Dec 2024 08:56:24 +0700 Subject: [PATCH 3/5] Revert "Memperbaiki KJPP Basic data dari create, edit, dan show yang bug" This reverts commit 967be7019d903fbf003bd31d70c63af0b2f8d247. --- app/Http/Controllers/KJPPController.php | 384 +++++++++++++++---- app/Http/Requests/KJPPRequest.php | 110 ++---- database/seeders/LpjDatabaseSeeder.php | 12 +- resources/views/kjpp/create.blade.php | 369 ++++++++---------- resources/views/kjpp/scripts/index.blade.php | 18 +- resources/views/kjpp/show.blade.php | 137 +++---- 6 files changed, 575 insertions(+), 455 deletions(-) diff --git a/app/Http/Controllers/KJPPController.php b/app/Http/Controllers/KJPPController.php index 71df00c..3a1b1c7 100644 --- a/app/Http/Controllers/KJPPController.php +++ b/app/Http/Controllers/KJPPController.php @@ -45,17 +45,7 @@ class KJPPController extends Controller // Combine KJPP number with branch code $fullKjppNumber = $kjppNumber; - $emailKantor = []; - $namaPimpinan = []; - $nomorHpPimpinan = []; - $namaPicReviewer = []; - $nomorHpPicReviewer = []; - $namaPicAdmin = []; - $nomorHpPicAdmin = []; - $namaPicMarketing = []; - $nomorHpPicMarketing = []; - - return view('lpj::kjpp.create', compact('ijin_usaha', 'jenis_aset', 'provinces', 'fullKjppNumber', 'emailKantor', 'namaPimpinan', 'nomorHpPimpinan', 'namaPicReviewer', 'nomorHpPicReviewer', 'namaPicAdmin', 'nomorHpPicAdmin', 'namaPicMarketing', 'nomorHpPicMarketing')); + return view('lpj::kjpp.create', compact('ijin_usaha', 'jenis_aset', 'provinces', 'fullKjppNumber')); } /** @@ -65,54 +55,142 @@ class KJPPController extends Controller { $validated = $request->validated(); - $validated['email_kantor'] = json_encode($validated['email_kantor']); - $validated['nama_pimpinan'] = json_encode($validated['nama_pimpinan']); - $validated['nomor_hp_pimpinan'] = json_encode($validated['nomor_hp_pimpinan']); - $validated['nama_pic_reviewer'] = json_encode($validated['nama_pic_reviewer']); - $validated['nomor_hp_pic_reviewer'] = json_encode($validated['nomor_hp_pic_reviewer']); - $validated['nama_pic_admin'] = json_encode($validated['nama_pic_admin']); - $validated['nomor_hp_pic_admin'] = json_encode($validated['nomor_hp_pic_admin']); - $validated['nama_pic_marketing'] = json_encode($validated['nama_pic_marketing']); - $validated['nomor_hp_pic_marketing'] = json_encode($validated['nomor_hp_pic_marketing']); - // Konversi array ke JSON untuk ijin_usaha_id - $validated['ijin_usaha_id'] = json_encode($validated['ijin_usaha_id']); - // Konversi jenis_aset_id ke JSON, dengan penanganan array kosong - $validated['jenis_aset_id'] = $validated['jenis_aset_id'] - ? json_encode($validated['jenis_aset_id']) - : json_encode([]); + if ($validated) { + $detailEmailKantor = []; + $detailNamaPimpinan = []; + $detailNomorPicPimpinan = []; + $detailNamaPicReviewer = []; + $detailNomorHpPicReviewer = []; + $detailNamaPicAdmin = []; + $detailNomorHpPicAdmin = []; + $detailNamaPicMarketing = []; + $detailNomorHpPicMarketing = []; + + $emailKantor = $request->input('detail_email_kantor.email_kantor', []); + $namaPimpinan = $request->input('detail_nama_pimpinan.nama_pimpinan', []); + $nomorHpPimpinan = $request->input('detail_nomor_hp_pimpinan.nomor_hp_pimpinan', []); + $namaPicReviewer = $request->input('detail_nama_pic_reviewer.nama_pic_reviewer', []); + $nomorHpPicReviewer = $request->input('detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer', []); + $namaPicAdmin = $request->input('detail_nama_pic_admin.nama_pic_admin', []); + $nomorHpPicAdmin = $request->input('detail_nomor_hp_pic_admin.nomor_hp_pic_admin', []); + $namaPicMarketing = $request->input('detail_nama_pic_marketing.nama_pic_marketing', []); + $nomorHpPicMarketing = $request->input('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing', []); + + foreach ($emailKantor as $value) { + $detailEmailKantor[] = [ + 'email_kantor' => $value + ]; + } + // Encode to JSON and store + $detailEmailKantorJson = json_encode($detailEmailKantor); + + // Process detail_nama_pimpinan + foreach ($namaPimpinan as $value) { + $detailNamaPimpinan[] = [ + 'nama_pimpinan' => $value + ]; + } + $detailNamaPimpinanJson = json_encode($detailNamaPimpinan); + + // Process detail_nomor_pic_pimpinan + foreach ($nomorHpPimpinan as $value) { + $detailNomorPicPimpinan[] = [ + 'nomor_hp_pimpinan' => $value + ]; + } + $detailNomorPicPimpinanJson = json_encode($detailNomorPicPimpinan); + + // Process detail_nama_pic_reviewer + foreach ($namaPicReviewer as $value) { + $detailNamaPicReviewer[] = [ + 'nama_pic_reviewer' => $value + ]; + } + $detailNamaPicReviewerJson = json_encode($detailNamaPicReviewer); + + // Process detail_nomor_hp_pic_reviewer + foreach ($nomorHpPicReviewer as $value) { + $detailNomorHpPicReviewer[] = [ + 'nomor_hp_pic_reviewer' => $value + ]; + } + $detailNomorHpPicReviewerJson = json_encode($detailNomorHpPicReviewer); + + // Process detail_nama_pic_admin + foreach ($namaPicAdmin as $value) { + $detailNamaPicAdmin[] = [ + 'nama_pic_admin' => $value + ]; + } + $detailNamaPicAdminJson = json_encode($detailNamaPicAdmin); + + // Process detail_nomor_hp_pic_admin + foreach ($nomorHpPicAdmin as $value) { + $detailNomorHpPicAdmin[] = [ + 'nomor_hp_pic_admin' => $value + ]; + } + $detailNomorHpPicAdminJson = json_encode($detailNomorHpPicAdmin); + + // Process detail_nama_pic_marketing + foreach ($namaPicMarketing as $value) { + $detailNamaPicMarketing[] = [ + 'nama_pic_marketing' => $value + ]; + } + $detailNamaPicMarketingJson = json_encode($detailNamaPicMarketing); + + // Process detail_nomor_hp_pic_marketing + foreach ($nomorHpPicMarketing as $value) { + $detailNomorHpPicMarketing[] = [ + 'nomor_hp_pic_marketing' => $value + ]; + } + $detailNomorHpPicMarketingJson = json_encode($detailNomorHpPicMarketing); + - // Handle file attachment - if ($request->hasFile('attachment')) { $file = $request->file('attachment'); - $filename = time() . '.' . $file->getClientOriginalExtension(); + $filename = $file ? time() . '.' . $file->getClientOriginalExtension() : 'default.pdf'; - // Simpan file - $file->storeAs('public/uploads_pdf', $filename); + if ($file) { + // Simpan file yang diunggah + $file->storeAs('public/uploads_pdf', $filename); + } else { + // Salin file default ke lokasi yang diinginkan + Storage::copy('public/test/default.pdf', 'public/uploads_pdf/' . $filename); + } + + $validated['detail_email_kantor'] = $detailEmailKantorJson; + $validated['detail_nama_pimpinan'] = $detailNamaPimpinanJson; + $validated['detail_nomor_hp_pimpinan'] = $detailNomorPicPimpinanJson; + $validated['detail_nama_pic_reviewer'] = $detailNamaPicReviewerJson; + $validated['detail_nomor_hp_pic_reviewer'] = $detailNomorHpPicReviewerJson; + $validated['detail_nama_pic_admin'] = $detailNamaPicAdminJson; + $validated['detail_nomor_hp_pic_admin'] = $detailNomorHpPicAdminJson; + $validated['detail_nama_pic_marketing'] = $detailNamaPicMarketingJson; + $validated['detail_nomor_hp_pic_marketing'] = $detailNomorHpPicMarketingJson; + $validated['ijin_usaha_id'] = json_encode($validated['ijin_usaha_id']); + if (empty($validated['jenis_aset_id'])) { + $validated['jenis_aset_id'] = json_encode([]); + } else { + $validated['jenis_aset_id'] = json_encode($validated['jenis_aset_id']); + } + // Tambahkan nama file ke data yang divalidasi $validated['attachment'] = $filename; - } else { - // Gunakan file default jika tidak ada file yang diunggah - $defaultFilename = 'default.pdf'; - Storage::copy('public/test/default.pdf', 'public/uploads_pdf/' . $defaultFilename); - $validated['attachment'] = $defaultFilename; - } - // Hapus baris dd() sebelum membuat record - // dd($validated); + // dd($validated); - - try { - // Buat record KJPP - $kjpp = KJPP::create($validated); + // Simpan data ke database + KJPP::create($validated); return redirect() ->route('basicdata.kjpp.index') ->with('success', 'KJPP created successfully'); - } catch (\Exception $e) { - // Tangani kesalahan jika ada + } else { return redirect() ->route('basicdata.kjpp.create') - ->with('error', 'Failed to create KJPP: ' . $e->getMessage()); + ->with('error', 'Validation failed'); } } @@ -129,18 +207,46 @@ class KJPPController extends Controller $cities = City::where('code', $kjpp->city_code)->get(); $districts = District::where('code', $kjpp->district_code)->get(); $villages = Village::where('code', $kjpp->village_code)->get(); + $detailEmailKantor = json_decode($kjpp->detail_email_kantor); + $detailNamaPimpinan = json_decode($kjpp->detail_nama_pimpinan); + $detailNomorHpPimpinan = json_decode($kjpp->detail_nomor_hp_pimpinan); + $detailNamaPicReviewer = json_decode($kjpp->detail_nama_pic_reviewer); + $detailNomorHpPicReviewer = json_decode($kjpp->detail_nomor_hp_pic_reviewer); + $detailNamaPicAdmin = json_decode($kjpp->detail_nama_pic_admin); + $detailNomorHpPicAdmin = json_decode($kjpp->detail_nomor_hp_pic_admin); + $detailNamaPicMarketing = json_decode($kjpp->detail_nama_pic_marketing); + $detailNomorHpPicMarketing = json_decode($kjpp->detail_nomor_hp_pic_marketing); - $emailKantor = json_decode($kjpp->email_kantor); - $namaPimpinan = json_decode($kjpp->nama_pimpinan); - $nomorHpPimpinan = json_decode($kjpp->nomor_hp_pimpinan); - $namaPicReviewer = json_decode($kjpp->nama_pic_reviewer); - $nomorHpPicReviewer = json_decode($kjpp->nomor_hp_pic_reviewer); - $namaPicAdmin = json_decode($kjpp->nama_pic_admin); - $nomorHpPicAdmin = json_decode($kjpp->nomor_hp_pic_admin); - $namaPicMarketing = json_decode($kjpp->nama_pic_marketing); - $nomorHpPicMarketing = json_decode($kjpp->nomor_hp_pic_marketing); + $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pimpinan' => $nama->nama_pimpinan, + 'nomor_hp_pimpinan' => $nomor->nomor_hp_pimpinan + ]; + }, $detailNamaPimpinan, $detailNomorHpPimpinan)); - return view('lpj::kjpp.show', compact('jenis_jaminan', 'ijin_usahas', 'ijin_usaha', 'kjpp', 'provinces', 'cities', 'districts', 'villages', 'emailKantor', 'namaPimpinan', 'nomorHpPimpinan', 'namaPicReviewer', 'nomorHpPicReviewer', 'namaPicAdmin', 'nomorHpPicAdmin', 'namaPicMarketing', 'nomorHpPicMarketing')); + + $detailJoinPicReviewer = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_reviewer' => $nama->nama_pic_reviewer, + 'nomor_hp_pic_reviewer' => $nomor->nomor_hp_pic_reviewer + ]; + }, $detailNamaPicReviewer, $detailNomorHpPicReviewer)); + + $detailJoinPicAdmin = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_admin' => $nama->nama_pic_admin, + 'nomor_hp_pic_admin' => $nomor->nomor_hp_pic_admin + ]; + }, $detailNamaPicAdmin, $detailNomorHpPicAdmin)); + + $detailJoinPicMarketing = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_marketing' => $nama->nama_pic_marketing, + 'nomor_hp_pic_marketing' => $nomor->nomor_hp_pic_marketing + ]; + }, $detailNamaPicMarketing, $detailNomorHpPicMarketing)); + + return view('lpj::kjpp.show', compact('jenis_jaminan', 'ijin_usahas', 'ijin_usaha', 'kjpp', 'provinces', 'cities', 'districts', 'villages', 'detailEmailKantor', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailJoinPimpinan')); } /** @@ -155,19 +261,49 @@ class KJPPController extends Controller $cities = City::where('province_code', $kjpp->province_code)->get(); $districts = District::where('city_code', $kjpp->city_code)->get(); $villages = Village::where('district_code', $kjpp->district_code)->get(); + $detailEmailKantor = json_decode($kjpp->detail_email_kantor); + $detailNamaPimpinan = json_decode($kjpp->detail_nama_pimpinan); + $detailNomorHpPimpinan = json_decode($kjpp->detail_nomor_hp_pimpinan); + $detailNamaPicReviewer = json_decode($kjpp->detail_nama_pic_reviewer); + $detailNomorHpPicReviewer = json_decode($kjpp->detail_nomor_hp_pic_reviewer); + $detailNamaPicAdmin = json_decode($kjpp->detail_nama_pic_admin); + $detailNomorHpPicAdmin = json_decode($kjpp->detail_nomor_hp_pic_admin); + $detailNamaPicMarketing = json_decode($kjpp->detail_nama_pic_marketing); + $detailNomorHpPicMarketing = json_decode($kjpp->detail_nomor_hp_pic_marketing); - $emailKantor = json_decode($kjpp->email_kantor); - $namaPimpinan = json_decode($kjpp->nama_pimpinan); - $nomorHpPimpinan = json_decode($kjpp->nomor_hp_pimpinan); - $namaPicReviewer = json_decode($kjpp->nama_pic_reviewer); - $nomorHpPicReviewer = json_decode($kjpp->nomor_hp_pic_reviewer); - $namaPicAdmin = json_decode($kjpp->nama_pic_admin); - $nomorHpPicAdmin = json_decode($kjpp->nomor_hp_pic_admin); - $namaPicMarketing = json_decode($kjpp->nama_pic_marketing); - $nomorHpPicMarketing = json_decode($kjpp->nomor_hp_pic_marketing); + // dd($detailNamaPimpinan); + $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pimpinan' => $nama->nama_pimpinan, + 'nomor_hp_pimpinan' => $nomor->nomor_hp_pimpinan + ]; + }, $detailNamaPimpinan, $detailNomorHpPimpinan)); - return view('lpj::kjpp.create', compact('kjpp', 'ijin_usaha', 'jenis_aset', 'provinces', 'cities', 'districts', 'villages', 'emailKantor', 'namaPimpinan', 'nomorHpPimpinan', 'namaPicReviewer', 'nomorHpPicReviewer', 'namaPicAdmin', 'nomorHpPicAdmin', 'namaPicMarketing', 'nomorHpPicMarketing')); + // dd($detailJoinPimpinan); + + $detailJoinPicReviewer = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_reviewer' => $nama->nama_pic_reviewer, + 'nomor_hp_pic_reviewer' => $nomor->nomor_hp_pic_reviewer + ]; + }, $detailNamaPicReviewer, $detailNomorHpPicReviewer)); + + $detailJoinPicAdmin = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_admin' => $nama->nama_pic_admin, + 'nomor_hp_pic_admin' => $nomor->nomor_hp_pic_admin + ]; + }, $detailNamaPicAdmin, $detailNomorHpPicAdmin)); + + $detailJoinPicMarketing = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pic_marketing' => $nama->nama_pic_marketing, + 'nomor_hp_pic_marketing' => $nomor->nomor_hp_pic_marketing + ]; + }, $detailNamaPicMarketing, $detailNomorHpPicMarketing)); + + return view('lpj::kjpp.create', compact('kjpp', 'ijin_usaha', 'jenis_aset', 'provinces', 'cities', 'districts', 'villages', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailEmailKantor', 'detailJoinPimpinan')); } /** @@ -177,7 +313,102 @@ class KJPPController extends Controller { $validated = $request->validated(); + // dd($validated); + if ($validated) { + $detailEmailKantor = []; + $detailNamaPimpinan = []; + $detailNomorHpPimpinan = []; + $detailNamaPicReviewer = []; + $detailNomorHpPicReviewer = []; + $detailNamaPicAdmin = []; + $detailNomorHpPicAdmin = []; + $detailNamaPicMarketing = []; + $detailNomorHpPicMarketing = []; + + $emailKantor = $request->input('detail_email_kantor.email_kantor', []); + $namaPimpinan = $request->input('detail_nama_pimpinan.nama_pimpinan', []); + $nomorHpPimpinan = $request->input('detail_nomor_hp_pimpinan.nomor_hp_pimpinan', []); + $namaPicReviewer = $request->input('detail_nama_pic_reviewer.nama_pic_reviewer', []); + $nomorHpPicReviewer = $request->input('detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer', []); + $namaPicAdmin = $request->input('detail_nama_pic_admin.nama_pic_admin', []); + $nomorHpPicAdmin = $request->input('detail_nomor_hp_pic_admin.nomor_hp_pic_admin', []); + $namaPicMarketing = $request->input('detail_nama_pic_marketing.nama_pic_marketing', []); + $nomorHpPicMarketing = $request->input('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing', []); + + foreach ($emailKantor as $value) { + $detailEmailKantor[] = [ + 'email_kantor' => $value + ]; + } + // Encode to JSON and store + $detailEmailKantorJson = json_encode($detailEmailKantor); + + // Process detail_nama_pimpinan + foreach ($namaPimpinan as $value) { + $detailNamaPimpinan[] = [ + 'nama_pimpinan' => $value + ]; + } + $detailNamaPimpinanJson = json_encode($detailNamaPimpinan); + + // Process detail_nomor_hp_pimpinan + foreach ($nomorHpPimpinan as $value) { + $detailNomorHpPimpinan[] = [ + 'nomor_hp_pimpinan' => $value + ]; + } + $detailNomorHpPimpinanJson = json_encode($detailNomorHpPimpinan); + + // Process detail_nama_pic_reviewer + foreach ($namaPicReviewer as $value) { + $detailNamaPicReviewer[] = [ + 'nama_pic_reviewer' => $value + ]; + } + $detailNamaPicReviewerJson = json_encode($detailNamaPicReviewer); + + // Process detail_nomor_hp_pic_reviewer + foreach ($nomorHpPicReviewer as $value) { + $detailNomorHpPicReviewer[] = [ + 'nomor_hp_pic_reviewer' => $value + ]; + } + $detailNomorHpPicReviewerJson = json_encode($detailNomorHpPicReviewer); + + // Process detail_nama_pic_admin + foreach ($namaPicAdmin as $value) { + $detailNamaPicAdmin[] = [ + 'nama_pic_admin' => $value + ]; + } + $detailNamaPicAdminJson = json_encode($detailNamaPicAdmin); + + // Process detail_nomor_hp_pic_admin + foreach ($nomorHpPicAdmin as $value) { + $detailNomorHpPicAdmin[] = [ + 'nomor_hp_pic_admin' => $value + ]; + } + $detailNomorHpPicAdminJson = json_encode($detailNomorHpPicAdmin); + + // Process detail_nama_pic_marketing + foreach ($namaPicMarketing as $value) { + $detailNamaPicMarketing[] = [ + 'nama_pic_marketing' => $value + ]; + } + $detailNamaPicMarketingJson = json_encode($detailNamaPicMarketing); + + // Process detail_nomor_hp_pic_marketing + foreach ($nomorHpPicMarketing as $value) { + $detailNomorHpPicMarketing[] = [ + 'nomor_hp_pic_marketing' => $value + ]; + } + $detailNomorHpPicMarketingJson = json_encode($detailNomorHpPicMarketing); + + $file = $request->file('attachment'); $filename = $file ? time() . '.' . $file->getClientOriginalExtension() : null; @@ -197,16 +428,15 @@ class KJPPController extends Controller $validated['attachment'] = $kjpp->attachment ?? 'default.pdf'; } - $validated['email_kantor'] = json_encode($validated['email_kantor']); - $validated['nama_pimpinan'] = json_encode($validated['nama_pimpinan']); - $validated['nomor_hp_pimpinan'] = json_encode($validated['nomor_hp_pimpinan']); - $validated['nama_pic_reviewer'] = json_encode($validated['nama_pic_reviewer']); - $validated['nomor_hp_pic_reviewer'] = json_encode($validated['nomor_hp_pic_reviewer']); - $validated['nama_pic_admin'] = json_encode($validated['nama_pic_admin']); - $validated['nomor_hp_pic_admin'] = json_encode($validated['nomor_hp_pic_admin']); - $validated['nama_pic_marketing'] = json_encode($validated['nama_pic_marketing']); - $validated['nomor_hp_pic_marketing'] = json_encode($validated['nomor_hp_pic_marketing']); - + $validated['detail_email_kantor'] = $detailEmailKantorJson; + $validated['detail_nama_pimpinan'] = $detailNamaPimpinanJson; + $validated['detail_nomor_hp_pimpinan'] = $detailNomorHpPimpinanJson; + $validated['detail_nama_pic_reviewer'] = $detailNamaPicReviewerJson; + $validated['detail_nomor_hp_pic_reviewer'] = $detailNomorHpPicReviewerJson; + $validated['detail_nama_pic_admin'] = $detailNamaPicAdminJson; + $validated['detail_nomor_hp_pic_admin'] = $detailNomorHpPicAdminJson; + $validated['detail_nama_pic_marketing'] = $detailNamaPicMarketingJson; + $validated['detail_nomor_hp_pic_marketing'] = $detailNomorHpPicMarketingJson; $validated['ijin_usaha_id'] = json_encode($validated['ijin_usaha_id']); if (empty($validated['jenis_aset_id'])) { $validated['jenis_aset_id'] = json_encode([]); @@ -214,8 +444,6 @@ class KJPPController extends Controller $validated['jenis_aset_id'] = json_encode($validated['jenis_aset_id']); } - // dd($validated); - // Perbarui data di database KJPP::where('id', $id)->update($validated); diff --git a/app/Http/Requests/KJPPRequest.php b/app/Http/Requests/KJPPRequest.php index 4f77130..4ff5821 100644 --- a/app/Http/Requests/KJPPRequest.php +++ b/app/Http/Requests/KJPPRequest.php @@ -22,43 +22,24 @@ class KJPPRequest extends FormRequest 'address' => 'required', 'postal_code' => 'nullable|numeric', 'nomor_telepon_kantor' => 'nullable|numeric|digits_between:8,15', - - // Validasi email kantor - 'email_kantor' => 'array', - 'email_kantor.*' => 'required|email', - - // Validasi nama pimpinan - 'nama_pimpinan' => 'array', - 'nama_pimpinan.*' => 'required|not_regex:/^\d+$/|max:255', - - // Validasi nomor HP pimpinan - 'nomor_hp_pimpinan' => 'array', - 'nomor_hp_pimpinan.*' => 'required|numeric|digits_between:10,15', - - // Validasi nama PIC Reviewer - 'nama_pic_reviewer' => 'nullable|array', - 'nama_pic_reviewer.*' => 'nullable|not_regex:/^\d+$/|max:255', - - // Validasi nomor HP PIC Reviewer - 'nomor_hp_pic_reviewer' => 'array', - 'nomor_hp_pic_reviewer.*' => 'nullable|numeric|digits_between:10,15', - - // Validasi nama PIC Admin - 'nama_pic_admin' => 'array', - 'nama_pic_admin.*' => 'nullable|not_regex:/^\d+$/|max:255', - - // Validasi nomor HP PIC Admin - 'nomor_hp_pic_admin' => 'array', - 'nomor_hp_pic_admin.*' => 'nullable|numeric|digits_between:10,15', - - // Validasi nama PIC Marketing - 'nama_pic_marketing' => 'array', - 'nama_pic_marketing.*' => 'nullable|not_regex:/^\d+$/|max:255', - - // Validasi nomor HP PIC Marketing - 'nomor_hp_pic_marketing' => 'array', - 'nomor_hp_pic_marketing.*' => 'nullable|numeric|digits_between:10,15', - + 'email_kantor' => 'required|email', + 'detail_email_kantor' => 'nullable', + 'nama_pimpinan' => 'required|string|not_regex:/^\d+$/|max:255', + 'detail_nama_pimpinan' => 'nullable', + 'nomor_hp_pimpinan' => 'required|numeric|digits_between:10,15', + 'detail_nomor_pic_pimpinan' => 'nullable', + 'nama_pic_reviewer' => 'nullable|string|not_regex:/^\d+$/|max:255', + 'detail_nama_pic_reviewer' => 'nullable', + 'nomor_hp_pic_reviewer' => 'nullable|numeric|digits_between:10,15', + 'detail_nomor_hp_pic_reviewer' => 'nullable', + 'nama_pic_admin' => 'nullable|string|not_regex:/^\d+$/|max:255', + 'detail_nama_pic_admin' => 'nullable', + 'nomor_hp_pic_admin' => 'nullable|numeric|digits_between:10,15', + 'detail_nomor_hp_pic_admin' => 'nullable', + 'nama_pic_marketing' => 'nullable|string|not_regex:/^\d+$/|max:255', + 'detail_nama_pic_marketing' => 'nullable', + 'nomor_hp_pic_marketing' => 'nullable|numeric|digits_between:10,15', + 'detail_nomor_hp_pic_marketing' => 'nullable', 'ijin_usaha_id' => 'required|array', 'ijin_usaha_id.*' => 'exists:ijin_usaha,code', 'jenis_aset_id' => 'nullable|array', @@ -86,45 +67,6 @@ class KJPPRequest extends FormRequest public function messages(): array { return [ - // Pesan untuk email kantor - 'email_kantor.*.required' => 'Email Kantor Wajib diisi!', - 'email_kantor.*.email' => 'Email Kantor tidak valid!', - - // Pesan untuk nama pimpinan - 'nama_pimpinan.*.required' => 'Nama Pimpinan Wajib diisi!', - 'nama_pimpinan.*.not_regex' => 'Nama Pimpinan harus berupa huruf!', - 'nama_pimpinan.*.max' => 'Nama Pimpinan maksimal 255 huruf!', - - // Pesan untuk nomor HP pimpinan - 'nomor_hp_pimpinan.*.required' => 'Nomor HP Pimpinan Wajib diisi!', - 'nomor_hp_pimpinan.*.numeric' => 'Nomor HP Pimpinan harus berupa angka!', - 'nomor_hp_pimpinan.*.digits_between' => 'Nomor HP Pimpinan minimum 10 digit dan maksimum 15 digit!', - - // Pesan untuk nama PIC Reviewer - 'nama_pic_reviewer.*.not_regex' => 'Nama PIC Reviewer harus berupa huruf!', - 'nama_pic_reviewer.*.max' => 'Nama PIC Reviewer maksimal 255 huruf!', - - // Pesan untuk nomor HP PIC Reviewer - 'nomor_hp_pic_reviewer.*.numeric' => 'Nomor HP PIC Reviewer harus berupa angka!', - 'nomor_hp_pic_reviewer.*.digits_between' => 'Nomor HP PIC Reviewer minimum 10 digit dan maksimum 15 digit!', - - // Pesan untuk nama PIC Admin - 'nama_pic_admin.*.not_regex' => 'Nama PIC Admin harus berupa huruf!', - 'nama_pic_admin.*.max' => 'Nama PIC Admin maksimal 255 huruf!', - - // Pesan untuk nomor HP PIC Admin - 'nomor_hp_pic_admin.*.numeric' => 'Nomor HP PIC Admin harus berupa angka!', - 'nomor_hp_pic_admin.*.digits_between' => 'Nomor HP PIC Admin minimum 10 digit dan maksimum 15 digit!', - - // Pesan untuk nama PIC Marketing - 'nama_pic_marketing.*.not_regex' => 'Nama PIC Marketing harus berupa huruf!', - 'nama_pic_marketing.*.max' => 'Nama PIC Marketing maksimal 255 huruf!', - - // Pesan untuk nomor HP PIC Marketing - 'nomor_hp_pic_marketing.*.numeric' => 'Nomor HP PIC Marketing harus berupa angka!', - 'nomor_hp_pic_marketing.*.digits_between' => 'Nomor HP PIC Marketing minimum 10 digit dan maksimum 15 digit!', - - // Pesan lainnya tetap sama 'code.required' => 'Kode KJPP Wajib diisi!', 'code.max' => 'Kode KJPP maksimal 255 huruf!', 'code.unique' => 'Kode KJPP tidak boleh sama!', @@ -139,6 +81,22 @@ class KJPPRequest extends FormRequest 'address.required' => 'Alamat Kantor Wajib diisi!', 'nomor_telepon_kantor.numeric' => 'Nomor Telepon Kantor harus berupa angka!', 'nomor_telepon_kantor.digits_between' => 'Nomor Telepon Kantor minimum 8 digit dan maksimum 15 digit!', + 'email_kantor.required' => 'Email Kantor Wajib diisi!', + 'email_kantor.email' => 'Email Kantor tidak valid!', + 'nama_pimpinan.required' => 'Nama Pimpinan Wajib diisi!', + 'nama_pimpinan.not_regex' => 'Nama Pimpinan harus berupa huruf!', + 'nomor_hp_pimpinan.required' => 'Nomor HP Pimpinan Wajib diisi!', + 'nomor_hp_pimpinan.numeric' => 'Nomor HP Pimpinan harus berupa angka!', + 'nomor_hp_pimpinan.digits_between' => 'Nomor HP Pimpinan minimum 10 digit dan maksimum 15 digit!', + 'nama_pic_reviewer.not_regex' => 'Nama PIC Reviewer harus berupa huruf!', + 'nomor_hp_pic_reviewer.numeric' => 'Nomor HP PIC Reviewer harus berupa angka!', + 'nomor_hp_pic_reviewer.digits_between' => 'Nomor HP PIC Reviewer minimum 10 digit dan maksimum 15 digit!', + 'nama_pic_admin.not_regex' => 'Nama PIC Admin harus berupa huruf!', + 'nomor_hp_pic_admin.numeric' => 'Nomor HP PIC Admin harus berupa angka!', + 'nomor_hp_pic_admin.digits_between' => 'Nomor HP PIC Admin minimum 10 digit dan maksimum 15 digit!', + 'nama_pic_marketing.not_regex' => 'Nama PIC Marketing harus berupa huruf!', + 'nomor_hp_pic_marketing.numeric' => 'Nomor HP PIC Marketing harus berupa angka!', + 'nomor_hp_pic_marketing.digits_between' => 'Nomor HP PIC Marketing minimum 10 digit dan maksimum 15 digit!', 'ijin_usaha_id.required' => 'Ijin Usaha Wajib diisi!', 'attachment.mimes' => 'Attachment harus berformat pdf!', 'attachment.max' => 'Attachment berukuran maksimum 1 MB!', diff --git a/database/seeders/LpjDatabaseSeeder.php b/database/seeders/LpjDatabaseSeeder.php index 1e92c0c..2ea3738 100644 --- a/database/seeders/LpjDatabaseSeeder.php +++ b/database/seeders/LpjDatabaseSeeder.php @@ -31,13 +31,13 @@ class LpjDatabaseSeeder extends Seeder JenisPenilaianSeeder::class, IjinUsahaSeeder::class, TujuanPenilaianKJPPSeeder::class, + KJPPSeeder::class, JenisLaporanSeeder::class, - // KJPPSeeder::class, - // DebitureSeeder::class, - // PemilikJaminanSeeder::class, - // DokumenJaminanSeeder::class, - // DetailDokumenJaminanSeeder::class, - // PermohonanSeeder::class, + DebitureSeeder::class, + PemilikJaminanSeeder::class, + DokumenJaminanSeeder::class, + DetailDokumenJaminanSeeder::class, + PermohonanSeeder::class, // PenawaranSeeder::class, // DetailPenawaranSeeder::class, // PenilaianSeeder::class, diff --git a/resources/views/kjpp/create.blade.php b/resources/views/kjpp/create.blade.php index 62da0f7..1bd1ff7 100644 --- a/resources/views/kjpp/create.blade.php +++ b/resources/views/kjpp/create.blade.php @@ -223,36 +223,31 @@ Email Kantor
- - @error('email_kantor.0') + + @error('email_kantor') {{ $message }} @enderror
- @if (is_array(old('email_kantor', $emailKantor)) && count(old('email_kantor', $emailKantor)) > 1) - @foreach (old('email_kantor', $emailKantor) as $index => $email) - @if ($index > 0 && !empty($email)) -
-
- - @error('email_kantor.' . $index) - {{ $message }} - @enderror -
- + @if (isset($kjpp->detail_email_kantor)) + @foreach ($detailEmailKantor as $detail_email_kantor) +
+
+ + @error('email_kantor') + {{ $message }} + @enderror
- @endif + +
@endforeach @endif -
- +
@@ -260,9 +255,9 @@ Nama Pimpinan
- - @error('nama_pimpinan.0') + + @error('nama_pimpinan') {{ $message }} @enderror
@@ -270,50 +265,47 @@ Nomor HP Pimpinan
- - @error('nomor_hp_pimpinan.0') + + @error('nomor_hp_pimpinan') {{ $message }} @enderror
- @if (is_array($namaPimpinan) && is_array(old('nama_pimpinan', $namaPimpinan))) - @foreach (old('nama_pimpinan', $namaPimpinan) as $index => $pimpinan) - @php - $nomorHp = old('nomor_hp_pimpinan.' . $index, $nomorHpPimpinan[$index] ?? ''); - @endphp - @if ($index > 0 && (!empty($pimpinan) || !empty($nomorHp))) -
- -
- - @error('nama_pimpinan.' . $index) - {{ $message }} - @enderror -
- -
- - @error('nomor_hp_pimpinan.' . $index) - {{ $message }} - @enderror -
- + @if (isset($kjpp->detail_nama_pimpinan) && isset($kjpp->detail_nomor_hp_pimpinan)) + @foreach (json_decode($detailJoinPimpinan) as $detail_pimpinan) +
+ +
+ + @error('nama_pimpinan') + {{ $message }} + @enderror
- @endif + +
+ + @error('nomor_hp_pimpinan') + {{ $message }} + @enderror +
+ +
@endforeach @endif -
@@ -330,10 +322,10 @@ Nama PIC Reviewer
- - @error('nama_pic_reviewer.0') + + @error('nama_pic_reviewer') {{ $message }} @enderror
@@ -341,61 +333,46 @@ Nomor HP PIC Reviewer
- - @error('nomor_hp_pic_reviewer.0') + + @error('nomor_hp_pic_reviewer') {{ $message }} @enderror
- @if (is_array(old('nama_pic_reviewer', $namaPicReviewer)) && is_array(old('nomor_hp_pic_reviewer', $nomorHpPicReviewer))) - @foreach (old('nama_pic_reviewer', $namaPicReviewer) as $index => $picReviewer) - @php - $nomorHpReviewer = old( - 'nomor_hp_pic_reviewer.' . $index, - $nomorHpPicReviewer[$index] ?? '', - ); - @endphp - @if ($index > 0 && (!empty($picReviewer) || !empty($nomorHpReviewer))) -
- -
- -
- - @error('nama_pic_reviewer.' . $index) - {{ $message }} - @enderror -
-
- - -
- -
- - @error('nomor_hp_pic_reviewer.' . $index) - {{ $message }} - @enderror -
-
- - - + @if (isset($kjpp->detail_nama_pic_reviewer) && isset($kjpp->detail_nomor_hp_pic_reviewer)) + @foreach (json_decode($detailJoinPicReviewer) as $detail_pic_reviewer) +
+ +
+ + @error('nama_pic_reviewer') + {{ $message }} + @enderror
- @endif + +
+ + @error('nomor_hp_pic_reviewer') + {{ $message }} + @enderror +
+ +
@endforeach @endif
@@ -414,9 +391,9 @@ Nama PIC Admin
- - @error('nama_pic_admin.0') + + @error('nama_pic_admin') {{ $message }} @enderror
@@ -424,55 +401,45 @@ Nomor HP PIC Admin
- - @error('nomor_hp_pic_admin.0') + + @error('nomor_hp_pic_admin') {{ $message }} @enderror
- @if (is_array(old('nama_pic_admin', $namaPicAdmin)) && is_array(old('nomor_hp_pic_admin', $nomorHpPicAdmin))) - @foreach (old('nama_pic_admin', $namaPicAdmin) as $index => $picAdmin) - @php - $nomorHpAdmin = old( - 'nomor_hp_pic_admin.' . $index, - $nomorHpPicAdmin[$index] ?? '', - ); - @endphp - @if ($index > 0 && (!empty($picAdmin) || !empty($nomorHpAdmin))) -
- - -
- - @error('nama_pic_admin.' . $index) - {{ $message }} - @enderror -
- - - -
- - @error('nomor_hp_pic_admin.' . $index) - {{ $message }} - @enderror -
- - - + @if (isset($kjpp->detail_nama_pic_admin) && isset($kjpp->detail_nomor_hp_pic_admin)) + @foreach (json_decode($detailJoinPicAdmin) as $detail_pic_admin) +
+ +
+ + @error('nama_pic_admin') + {{ $message }} + @enderror
- @endif + +
+ + @error('nomor_hp_pic_admin') + {{ $message }} + @enderror +
+ +
@endforeach @endif
@@ -491,10 +458,10 @@ Nama PIC Marketing
- - @error('nama_pic_marketing.0') + + @error('nama_pic_marketing') {{ $message }} @enderror
@@ -502,59 +469,49 @@ Nomor HP PIC Marketing
- - @error('nomor_hp_pic_marketing.0') + + @error('nomor_hp_pic_marketing') {{ $message }} @enderror
- @if (is_array(old('nama_pic_marketing', $namaPicMarketing)) && - is_array(old('nomor_hp_pic_marketing', $nomorHpPicMarketing))) - @foreach (old('nama_pic_marketing', $namaPicMarketing) as $index => $picMarketing) - @php - $nomorHpMarketing = old( - 'nomor_hp_pic_marketing.' . $index, - $nomorHpPicMarketing[$index] ?? '', - ); - @endphp - @if ($index > 0 && (!empty($picMarketing) || !empty($nomorHpMarketing))) -
- - -
- - @error('nama_pic_marketing.' . $index) - {{ $message }} - @enderror -
- - - -
- - @error('nomor_hp_pic_marketing.' . $index) - {{ $message }} - @enderror -
- - - + @if (isset($kjpp->detail_nama_pic_marketing) && isset($kjpp->detail_nomor_hp_pic_marketing)) + @foreach (json_decode($detailJoinPicMarketing) as $detail_pic_marketing) +
+ +
+ + @error('nama_pic_marketing') + {{ $message }} + @enderror
- @endif + +
+ + @error('nomor_hp_pic_marketing') + {{ $message }} + @enderror +
+ +
@endforeach @endif -
diff --git a/resources/views/kjpp/scripts/index.blade.php b/resources/views/kjpp/scripts/index.blade.php index 91ba746..118969c 100644 --- a/resources/views/kjpp/scripts/index.blade.php +++ b/resources/views/kjpp/scripts/index.blade.php @@ -32,7 +32,7 @@ newDiv.className = "flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full"; newDiv.innerHTML = `
- +
`; @@ -51,13 +51,13 @@ Nama Pimpinan
- +
- +
`; @@ -76,13 +76,13 @@ Nama PIC Reviewer
- +
- +
`; @@ -101,13 +101,13 @@ Nama PIC Admin
- +
- +
`; @@ -126,13 +126,13 @@ Nama PIC Marketing
- +
- +
`; diff --git a/resources/views/kjpp/show.blade.php b/resources/views/kjpp/show.blade.php index 1a5184b..b0bb344 100644 --- a/resources/views/kjpp/show.blade.php +++ b/resources/views/kjpp/show.blade.php @@ -95,16 +95,13 @@ Email Kantor
- @if (isset($emailKantor) && count($emailKantor) > 0) - @foreach ($emailKantor as $email) +

{{ $kjpp->email_kantor }}

+ @if (isset($kjpp->detail_email_kantor)) + @foreach (json_decode($kjpp->detail_email_kantor) as $detail_email_kantor)

- {{ $email }} + {{ $detail_email_kantor->email_kantor }}

@endforeach - @else -

- - -

@endif
@@ -113,32 +110,26 @@ Nama Pimpinan
- @if (isset($namaPimpinan) && count($namaPimpinan) > 0) - @foreach ($namaPimpinan as $pimpinan) +

{{ $kjpp->nama_pimpinan }}

+ @if (isset($kjpp->detail_nama_pimpinan)) + @foreach (json_decode($detailJoinPimpinan) as $detail_nama_pimpinan)

- {{ $pimpinan }} + {{ $detail_nama_pimpinan->nama_pimpinan }}

@endforeach - @else -

- - -

@endif
- @if (isset($nomorHpPimpinan) && count($nomorHpPimpinan) > 0) - @foreach ($nomorHpPimpinan as $hp_pimpinan) +

{{ $kjpp->nomor_hp_pimpinan }}

+ @if (isset($kjpp->detail_nomor_hp_pimpinan)) + @foreach (json_decode($detailJoinPimpinan) as $detail_nomor_hp_pimpinan)

- {{ $hp_pimpinan }} + {{ $detail_nomor_hp_pimpinan->nomor_hp_pimpinan }}

@endforeach - @else -

- - -

@endif
@@ -147,32 +138,27 @@ Nama PIC Reviewer
- @if (isset($namaPicReviewer) && count($namaPicReviewer) > 0) - @foreach ($namaPicReviewer as $pic_reviewer) +

{{ $kjpp->nama_pic_reviewer ?? '-' }}

+ @if (isset($kjpp->detail_nama_pic_reviewer)) + @foreach (json_decode($detailJoinPicReviewer) as $detail_nama_pic_reviewer)

- {{ $pic_reviewer }} + {{ $detail_nama_pic_reviewer->nama_pic_reviewer }}

@endforeach - @else -

- - -

@endif
- @if (isset($nomorHpPicReviewer) && count($nomorHpPicReviewer) > 0) - @foreach ($nomorHpPicReviewer as $hp_pic_reviewer) +

{{ $kjpp->nomor_hp_pic_reviewer ?? '-' }} +

+ @if (isset($kjpp->detail_nomor_hp_pic_reviewer)) + @foreach (json_decode($detailJoinPicReviewer) as $detail_nomor_hp_pic_reviewer)

- {{ $hp_pic_reviewer }} + {{ $detail_nomor_hp_pic_reviewer->nomor_hp_pic_reviewer }}

@endforeach - @else -

- - -

@endif
@@ -181,32 +167,26 @@ Nama PIC Admin
- @if (isset($namaPicAdmin) && count($namaPicAdmin) > 0) - @foreach ($namaPicAdmin as $pic_admin) +

{{ $kjpp->nama_pic_admin ?? '-' }}

+ @if (isset($kjpp->detail_nama_pic_admin)) + @foreach (json_decode($detailJoinPicAdmin) as $detail_nama_pic_admin)

- {{ $pic_admin }} + {{ $detail_nama_pic_admin->nama_pic_admin }}

@endforeach - @else -

- - -

@endif
- @if (isset($nomorHpPicAdmin) && count($nomorHpPicAdmin) > 0) - @foreach ($nomorHpPicAdmin as $hp_pic_admin) +

{{ $kjpp->nomor_hp_pic_admin ?? '-' }}

+ @if (isset($kjpp->detail_nomor_hp_pic_admin)) + @foreach (json_decode($detailJoinPicAdmin) as $detail_nomor_hp_pic_admin)

- {{ $hp_pic_admin }} + {{ $detail_nomor_hp_pic_admin->nomor_hp_pic_admin }}

@endforeach - @else -

- - -

@endif
@@ -215,32 +195,27 @@ Nama PIC Marketing
- @if (isset($namaPicMarketing) && count($namaPicMarketing) > 0) - @foreach ($namaPicMarketing as $pic_marketing) +

{{ $kjpp->nama_pic_marketing ?? '-' }}

+ @if (isset($kjpp->detail_nama_pic_marketing)) + @foreach (json_decode($detailJoinPicMarketing) as $detail_nama_pic_marketing)

- {{ $pic_marketing }} + {{ $detail_nama_pic_marketing->nama_pic_marketing }}

@endforeach - @else -

- - -

@endif
- @if (isset($nomorHpPicMarketing) && count($nomorHpPicMarketing) > 0) - @foreach ($nomorHpPicMarketing as $hp_pic_marketing) +

{{ $kjpp->nomor_hp_pic_marketing ?? '-' }} +

+ @if (isset($kjpp->detail_nomor_hp_pic_marketing)) + @foreach (json_decode($detailJoinPicMarketing) as $detail_nomor_hp_pic_marketing)

- {{ $hp_pic_marketing }} + {{ $detail_nomor_hp_pic_marketing->nomor_hp_pic_marketing }}

@endforeach - @else -

- - -

@endif
@@ -248,23 +223,25 @@ -
+
@if (isset($kjpp->ijin_usaha_id)) - @foreach (json_decode($kjpp->ijin_usaha_id, true) as $ijin_code) - @php - $ijin_usaha = $ijin_usahas->firstWhere('code', $ijin_code); - @endphp - @if ($ijin_usaha) -
- {{ $ijin_usaha->name }} -
- @endif - @endforeach - @else -
- - +
+ @foreach (json_decode($kjpp->ijin_usaha_id, true) as $ijin_code) + @php + $ijin_usaha = $ijin_usahas->firstWhere('code', $ijin_code); + @endphp + @if ($ijin_usaha) +
+ {{ $ijin_usaha->name }} +
+ @endif + @endforeach
+ @else +
No + business license + selected.
@endif
@@ -280,13 +257,13 @@ @endphp @if ($jenis_aset) + class="flex flex-row space-x-4 text-white font-medium text-sm badge badge-dark dark-mode:badge dark-mode:text-gray-600"> {{ $jenis_aset->name }} @endif @endforeach @else - + - @endif From 510df4ea4c97059e311b80e994cb2a1b52f2b14c Mon Sep 17 00:00:00 2001 From: rahmatrafli1 Date: Sat, 14 Dec 2024 07:06:54 +0700 Subject: [PATCH 4/5] Memperbaiki create, edit, dan show pada kjpp basic data ketika data nya itu ada yang salah masukin maka mempertahankan isi nya ketika di validasi --- app/Http/Controllers/KJPPController.php | 127 ++++----- app/Http/Requests/KJPPRequest.php | 24 +- resources/views/kjpp/create.blade.php | 330 +++++++++++++++--------- resources/views/kjpp/show.blade.php | 12 +- 4 files changed, 280 insertions(+), 213 deletions(-) diff --git a/app/Http/Controllers/KJPPController.php b/app/Http/Controllers/KJPPController.php index c005ff3..231a2ba 100644 --- a/app/Http/Controllers/KJPPController.php +++ b/app/Http/Controllers/KJPPController.php @@ -44,8 +44,13 @@ class KJPPController extends Controller // Combine KJPP number with branch code $fullKjppNumber = $kjppNumber; + $detailJoinEmailKantor = json_encode([]); + $detailJoinPimpinan = json_encode([]); + $detailJoinPicReviewer = json_encode([]); + $detailJoinPicAdmin = json_encode([]); + $detailJoinPicMarketing = json_encode([]); - return view('lpj::kjpp.create', compact('ijin_usaha', 'jenis_aset', 'provinces', 'fullKjppNumber')); + return view('lpj::kjpp.create', compact('ijin_usaha', 'jenis_aset', 'provinces', 'fullKjppNumber', 'detailJoinEmailKantor', 'detailJoinPimpinan', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing')); } /** @@ -78,74 +83,56 @@ class KJPPController extends Controller $nomorHpPicMarketing = $request->input('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing', []); foreach ($emailKantor as $value) { - $detailEmailKantor[] = [ - 'email_kantor' => $value - ]; + $detailEmailKantor[] = $value; } // Encode to JSON and store $detailEmailKantorJson = json_encode($detailEmailKantor); // Process detail_nama_pimpinan foreach ($namaPimpinan as $value) { - $detailNamaPimpinan[] = [ - 'nama_pimpinan' => $value - ]; + $detailNamaPimpinan[] = $value; } $detailNamaPimpinanJson = json_encode($detailNamaPimpinan); // Process detail_nomor_pic_pimpinan foreach ($nomorHpPimpinan as $value) { - $detailNomorPicPimpinan[] = [ - 'nomor_hp_pimpinan' => $value - ]; + $detailNomorPicPimpinan[] = $value; } $detailNomorPicPimpinanJson = json_encode($detailNomorPicPimpinan); // Process detail_nama_pic_reviewer foreach ($namaPicReviewer as $value) { - $detailNamaPicReviewer[] = [ - 'nama_pic_reviewer' => $value - ]; + $detailNamaPicReviewer[] = $value; } $detailNamaPicReviewerJson = json_encode($detailNamaPicReviewer); // Process detail_nomor_hp_pic_reviewer foreach ($nomorHpPicReviewer as $value) { - $detailNomorHpPicReviewer[] = [ - 'nomor_hp_pic_reviewer' => $value - ]; + $detailNomorHpPicReviewer[] = $value; } $detailNomorHpPicReviewerJson = json_encode($detailNomorHpPicReviewer); // Process detail_nama_pic_admin foreach ($namaPicAdmin as $value) { - $detailNamaPicAdmin[] = [ - 'nama_pic_admin' => $value - ]; + $detailNamaPicAdmin[] = $value; } $detailNamaPicAdminJson = json_encode($detailNamaPicAdmin); // Process detail_nomor_hp_pic_admin foreach ($nomorHpPicAdmin as $value) { - $detailNomorHpPicAdmin[] = [ - 'nomor_hp_pic_admin' => $value - ]; + $detailNomorHpPicAdmin[] = $value; } $detailNomorHpPicAdminJson = json_encode($detailNomorHpPicAdmin); // Process detail_nama_pic_marketing foreach ($namaPicMarketing as $value) { - $detailNamaPicMarketing[] = [ - 'nama_pic_marketing' => $value - ]; + $detailNamaPicMarketing[] = $value; } $detailNamaPicMarketingJson = json_encode($detailNamaPicMarketing); // Process detail_nomor_hp_pic_marketing foreach ($nomorHpPicMarketing as $value) { - $detailNomorHpPicMarketing[] = [ - 'nomor_hp_pic_marketing' => $value - ]; + $detailNomorHpPicMarketing[] = $value; } $detailNomorHpPicMarketingJson = json_encode($detailNomorHpPicMarketing); @@ -217,15 +204,18 @@ class KJPPController extends Controller $detailNamaPicMarketing = json_decode($kjpp->detail_nama_pic_marketing); $detailNomorHpPicMarketing = json_decode($kjpp->detail_nomor_hp_pic_marketing); - $detailJoinPimpinan = []; - if ($detailNamaPimpinan) { - $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { - return [ - 'nama_pimpinan' => $nama, - 'nomor_hp_pimpinan' => $nomor - ]; - }, $detailNamaPimpinan, $detailNomorHpPimpinan)); - } + $detailJoinEmailKantor = json_encode(array_map(function ($email) { + return [ + 'email_kantor' => $email + ]; + }, $detailEmailKantor)); + + $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pimpinan' => $nama, + 'nomor_hp_pimpinan' => $nomor + ]; + }, $detailNamaPimpinan, $detailNomorHpPimpinan)); $detailJoinPicReviewer = json_encode(array_map(function ($nama, $nomor) { @@ -249,7 +239,7 @@ class KJPPController extends Controller ]; }, $detailNamaPicMarketing, $detailNomorHpPicMarketing)); - return view('lpj::kjpp.show', compact('jenis_jaminan', 'ijin_usahas', 'ijin_usaha', 'kjpp', 'provinces', 'cities', 'districts', 'villages', 'detailEmailKantor', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailJoinPimpinan')); + return view('lpj::kjpp.show', compact('jenis_jaminan', 'ijin_usahas', 'ijin_usaha', 'kjpp', 'provinces', 'cities', 'districts', 'villages', 'detailJoinEmailKantor', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailJoinPimpinan')); } /** @@ -274,19 +264,19 @@ class KJPPController extends Controller $detailNamaPicMarketing = json_decode($kjpp->detail_nama_pic_marketing); $detailNomorHpPicMarketing = json_decode($kjpp->detail_nomor_hp_pic_marketing); - //dd($detailNamaPimpinan); + $detailJoinEmailKantor = json_encode(array_map(function ($email) { + return [ + 'email_kantor' => $email + ]; + }, $detailEmailKantor)); - $detailJoinPimpinan = []; - if ($detailNamaPimpinan) { - $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { - return [ - 'nama_pimpinan' => $nama, - 'nomor_hp_pimpinan' => $nomor - ]; - }, $detailNamaPimpinan, $detailNomorHpPimpinan)); - } + $detailJoinPimpinan = json_encode(array_map(function ($nama, $nomor) { + return [ + 'nama_pimpinan' => $nama, + 'nomor_hp_pimpinan' => $nomor + ]; + }, $detailNamaPimpinan, $detailNomorHpPimpinan)); - //dd($detailNamaPicReviewer ); $detailJoinPicReviewer = json_encode(array_map(function ($nama, $nomor) { return [ @@ -309,7 +299,7 @@ class KJPPController extends Controller ]; }, $detailNamaPicMarketing, $detailNomorHpPicMarketing)); - return view('lpj::kjpp.create', compact('kjpp', 'ijin_usaha', 'jenis_aset', 'provinces', 'cities', 'districts', 'villages', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailEmailKantor', 'detailJoinPimpinan')); + return view('lpj::kjpp.create', compact('kjpp', 'ijin_usaha', 'jenis_aset', 'provinces', 'cities', 'districts', 'villages', 'detailJoinPicReviewer', 'detailJoinPicAdmin', 'detailJoinPicMarketing', 'detailJoinEmailKantor', 'detailJoinPimpinan')); } /** @@ -343,74 +333,56 @@ class KJPPController extends Controller $nomorHpPicMarketing = $request->input('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing', []); foreach ($emailKantor as $value) { - $detailEmailKantor[] = [ - 'email_kantor' => $value - ]; + $detailEmailKantor[] = $value; } // Encode to JSON and store $detailEmailKantorJson = json_encode($detailEmailKantor); // Process detail_nama_pimpinan foreach ($namaPimpinan as $value) { - $detailNamaPimpinan[] = [ - 'nama_pimpinan' => $value - ]; + $detailNamaPimpinan[] = $value; } $detailNamaPimpinanJson = json_encode($detailNamaPimpinan); // Process detail_nomor_hp_pimpinan foreach ($nomorHpPimpinan as $value) { - $detailNomorHpPimpinan[] = [ - 'nomor_hp_pimpinan' => $value - ]; + $detailNomorHpPimpinan[] = $value; } $detailNomorHpPimpinanJson = json_encode($detailNomorHpPimpinan); // Process detail_nama_pic_reviewer foreach ($namaPicReviewer as $value) { - $detailNamaPicReviewer[] = [ - 'nama_pic_reviewer' => $value - ]; + $detailNamaPicReviewer[] = $value; } $detailNamaPicReviewerJson = json_encode($detailNamaPicReviewer); // Process detail_nomor_hp_pic_reviewer foreach ($nomorHpPicReviewer as $value) { - $detailNomorHpPicReviewer[] = [ - 'nomor_hp_pic_reviewer' => $value - ]; + $detailNomorHpPicReviewer[] = $value; } $detailNomorHpPicReviewerJson = json_encode($detailNomorHpPicReviewer); // Process detail_nama_pic_admin foreach ($namaPicAdmin as $value) { - $detailNamaPicAdmin[] = [ - 'nama_pic_admin' => $value - ]; + $detailNamaPicAdmin[] = $value; } $detailNamaPicAdminJson = json_encode($detailNamaPicAdmin); // Process detail_nomor_hp_pic_admin foreach ($nomorHpPicAdmin as $value) { - $detailNomorHpPicAdmin[] = [ - 'nomor_hp_pic_admin' => $value - ]; + $detailNomorHpPicAdmin[] = $value; } $detailNomorHpPicAdminJson = json_encode($detailNomorHpPicAdmin); // Process detail_nama_pic_marketing foreach ($namaPicMarketing as $value) { - $detailNamaPicMarketing[] = [ - 'nama_pic_marketing' => $value - ]; + $detailNamaPicMarketing[] = $value; } $detailNamaPicMarketingJson = json_encode($detailNamaPicMarketing); // Process detail_nomor_hp_pic_marketing foreach ($nomorHpPicMarketing as $value) { - $detailNomorHpPicMarketing[] = [ - 'nomor_hp_pic_marketing' => $value - ]; + $detailNomorHpPicMarketing[] = $value; } $detailNomorHpPicMarketingJson = json_encode($detailNomorHpPicMarketing); @@ -449,7 +421,6 @@ class KJPPController extends Controller } else { $validated['jenis_aset_id'] = json_encode($validated['jenis_aset_id']); } - // Perbarui data di database KJPP::where('id', $id)->update($validated); diff --git a/app/Http/Requests/KJPPRequest.php b/app/Http/Requests/KJPPRequest.php index 4ff5821..28f1e7e 100644 --- a/app/Http/Requests/KJPPRequest.php +++ b/app/Http/Requests/KJPPRequest.php @@ -24,22 +24,31 @@ class KJPPRequest extends FormRequest 'nomor_telepon_kantor' => 'nullable|numeric|digits_between:8,15', 'email_kantor' => 'required|email', 'detail_email_kantor' => 'nullable', + 'detail_email_kantor.email_kantor.*' => 'email', 'nama_pimpinan' => 'required|string|not_regex:/^\d+$/|max:255', 'detail_nama_pimpinan' => 'nullable', + 'detail_nama_pimpinan.nama_pimpinan.*' => 'string|not_regex:/^\d+$/|max:255', 'nomor_hp_pimpinan' => 'required|numeric|digits_between:10,15', - 'detail_nomor_pic_pimpinan' => 'nullable', + 'detail_nomor_hp_pimpinan' => 'nullable', + 'detail_nomor_hp_pimpinan.nomor_hp_pimpinan.*' => 'numeric|digits_between:10,15', 'nama_pic_reviewer' => 'nullable|string|not_regex:/^\d+$/|max:255', 'detail_nama_pic_reviewer' => 'nullable', + 'detail_nama_pic_reviewer.nama_pic_reviewer.*' => 'string|not_regex:/^\d+$/|max:255', 'nomor_hp_pic_reviewer' => 'nullable|numeric|digits_between:10,15', 'detail_nomor_hp_pic_reviewer' => 'nullable', + 'detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer.*' => 'numeric|digits_between:10,15', 'nama_pic_admin' => 'nullable|string|not_regex:/^\d+$/|max:255', 'detail_nama_pic_admin' => 'nullable', + 'detail_nama_pic_admin.nama_pic_admin.*' => 'string|not_regex:/^\d+$/|max:255', 'nomor_hp_pic_admin' => 'nullable|numeric|digits_between:10,15', 'detail_nomor_hp_pic_admin' => 'nullable', + 'detail_nomor_hp_pic_admin.nomor_hp_pic_admin.*' => 'numeric|digits_between:10,15', 'nama_pic_marketing' => 'nullable|string|not_regex:/^\d+$/|max:255', 'detail_nama_pic_marketing' => 'nullable', + 'detail_nama_pic_marketing.nama_pic_marketing.*' => 'string|not_regex:/^\d+$/|max:255', 'nomor_hp_pic_marketing' => 'nullable|numeric|digits_between:10,15', 'detail_nomor_hp_pic_marketing' => 'nullable', + 'detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing.*' => 'numeric|digits_between:10,15', 'ijin_usaha_id' => 'required|array', 'ijin_usaha_id.*' => 'exists:ijin_usaha,code', 'jenis_aset_id' => 'nullable|array', @@ -83,20 +92,33 @@ class KJPPRequest extends FormRequest 'nomor_telepon_kantor.digits_between' => 'Nomor Telepon Kantor minimum 8 digit dan maksimum 15 digit!', 'email_kantor.required' => 'Email Kantor Wajib diisi!', 'email_kantor.email' => 'Email Kantor tidak valid!', + 'detail_email_kantor.email_kantor.*.email' => 'Email Kantor tidak valid!', 'nama_pimpinan.required' => 'Nama Pimpinan Wajib diisi!', 'nama_pimpinan.not_regex' => 'Nama Pimpinan harus berupa huruf!', + 'detail_nama_pimpinan.nama_pimpinan.*.not_regex' => 'Nama Pimpinan harus berupa huruf!', 'nomor_hp_pimpinan.required' => 'Nomor HP Pimpinan Wajib diisi!', 'nomor_hp_pimpinan.numeric' => 'Nomor HP Pimpinan harus berupa angka!', 'nomor_hp_pimpinan.digits_between' => 'Nomor HP Pimpinan minimum 10 digit dan maksimum 15 digit!', + 'detail_nomor_hp_pimpinan.nomor_hp_pimpinan.*.numeric' => 'Nomor HP Pimpinan harus berupa angka!', + 'detail_nomor_hp_pimpinan.nomor_hp_pimpinan.*.digits_between' => 'Nomor HP Pimpinan minimum 10 digit dan maksimum 15 digit!', 'nama_pic_reviewer.not_regex' => 'Nama PIC Reviewer harus berupa huruf!', + 'detail_nama_pic_reviewer.nama_pic_reviewer.*.not_regex' => 'Nama PIC Reviewer harus berupa huruf!', 'nomor_hp_pic_reviewer.numeric' => 'Nomor HP PIC Reviewer harus berupa angka!', 'nomor_hp_pic_reviewer.digits_between' => 'Nomor HP PIC Reviewer minimum 10 digit dan maksimum 15 digit!', + 'detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer.*.numeric' => 'Nomor HP PIC Reviewer harus berupa angka!', + 'detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer.*.digits_between' => 'Nomor HP PIC Reviewer minimum 10 digit dan maksimum 15 digit!', 'nama_pic_admin.not_regex' => 'Nama PIC Admin harus berupa huruf!', + 'detail_nama_pic_admin.nama_pic_admin.*.not_regex' => 'Nama PIC Admin harus berupa huruf!', 'nomor_hp_pic_admin.numeric' => 'Nomor HP PIC Admin harus berupa angka!', 'nomor_hp_pic_admin.digits_between' => 'Nomor HP PIC Admin minimum 10 digit dan maksimum 15 digit!', + 'detail_nomor_hp_pic_admin.nomor_hp_pic_admin.*.numeric' => 'Nomor HP PIC Admin harus berupa angka!', + 'detail_nomor_hp_pic_admin.nomor_hp_pic_admin.*.digits_between' => 'Nomor HP PIC Admin minimum 10 digit dan maksimum 15 digit!', 'nama_pic_marketing.not_regex' => 'Nama PIC Marketing harus berupa huruf!', + 'detail_nama_pic_marketing.nama_pic_marketing.*.not_regex' => 'Nama PIC Marketing harus berupa huruf!', 'nomor_hp_pic_marketing.numeric' => 'Nomor HP PIC Marketing harus berupa angka!', 'nomor_hp_pic_marketing.digits_between' => 'Nomor HP PIC Marketing minimum 10 digit dan maksimum 15 digit!', + 'detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing.*.numeric' => 'Nomor HP PIC Marketing harus berupa angka!', + 'detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing.*.digits_between' => 'Nomor HP PIC Marketing minimum 10 digit dan maksimum 15 digit!', 'ijin_usaha_id.required' => 'Ijin Usaha Wajib diisi!', 'attachment.mimes' => 'Attachment harus berformat pdf!', 'attachment.max' => 'Attachment berukuran maksimum 1 MB!', diff --git a/resources/views/kjpp/create.blade.php b/resources/views/kjpp/create.blade.php index 1bd1ff7..502e400 100644 --- a/resources/views/kjpp/create.blade.php +++ b/resources/views/kjpp/create.blade.php @@ -229,20 +229,32 @@ {{ $message }} @enderror
- @if (isset($kjpp->detail_email_kantor)) - @foreach ($detailEmailKantor as $detail_email_kantor) -
-
- - @error('email_kantor') - {{ $message }} - @enderror + @php + $emails = old( + 'detail_email_kantor.email_kantor', + json_decode($detailJoinEmailKantor, true), + ); // Decode as associative array + @endphp + + @if (is_array($emails) && count($emails) > 0) + @foreach ($emails as $index => $email) + @if (!empty($email)) +
+
+ + @error('detail_email_kantor.email_kantor.' . $index) + {{ $message }} + @enderror +
+
- -
+ @endif @endforeach @endif
@@ -275,35 +287,50 @@
- @if (isset($kjpp->detail_nama_pimpinan) && isset($kjpp->detail_nomor_hp_pimpinan)) - @foreach (json_decode($detailJoinPimpinan) as $detail_pimpinan) -
- -
- - @error('nama_pimpinan') - {{ $message }} - @enderror + @php + $detailNamaPimpinan = old( + 'detail_nama_pimpinan.nama_pimpinan', + json_decode($detailJoinPimpinan, true), + ); + $detailNomorHpPimpinan = old( + 'detail_nomor_hp_pimpinan.nomor_hp_pimpinan', + json_decode($detailJoinPimpinan, true), + ); + @endphp + + @if (is_array($detailNamaPimpinan) && + count($detailNamaPimpinan) > 0 && + (is_array($detailNomorHpPimpinan) && count($detailNomorHpPimpinan) > 0)) + @foreach ($detailNamaPimpinan as $index => $detail_nama) + @if (!empty($detail_nama)) +
+ +
+ + @error('detail_nama_pimpinan.nama_pimpinan.' . $index) + {{ $message }} + @enderror +
+ + +
+ + @error('detail_nomor_hp_pimpinan.nomor_hp_pimpinan.' . $index) + {{ $message }} + @enderror +
+ +
- -
- - @error('nomor_hp_pimpinan') - {{ $message }} - @enderror -
- -
+ @endif @endforeach @endif
@@ -343,36 +370,52 @@
- @if (isset($kjpp->detail_nama_pic_reviewer) && isset($kjpp->detail_nomor_hp_pic_reviewer)) - @foreach (json_decode($detailJoinPicReviewer) as $detail_pic_reviewer) -
- -
- - @error('nama_pic_reviewer') - {{ $message }} - @enderror + @php + $detailNamaPicReviewer = old( + 'detail_nama_pic_reviewer.nama_pic_reviewer', + json_decode($detailJoinPicReviewer, true), + ); + $detailNomorHpPicReviewer = old( + 'detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer', + json_decode($detailJoinPicReviewer, true), + ); + @endphp + + @if (is_array($detailNamaPicReviewer) && + count($detailNamaPicReviewer) > 0 && + is_array($detailNomorHpPicReviewer) && + count($detailNomorHpPicReviewer) > 0) + @foreach ($detailNamaPicReviewer as $index => $detail_pic_reviewer) + @if (!empty($detail_pic_reviewer)) +
+ +
+ + @error('detail_nama_pic_reviewer.nama_pic_reviewer.' . $index) + {{ $message }} + @enderror +
+ + +
+ + @error('detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer.' . $index) + {{ $message }} + @enderror +
+ +
- -
- - @error('nomor_hp_pic_reviewer') - {{ $message }} - @enderror -
- -
+ @endif @endforeach @endif
@@ -411,35 +454,51 @@
- @if (isset($kjpp->detail_nama_pic_admin) && isset($kjpp->detail_nomor_hp_pic_admin)) - @foreach (json_decode($detailJoinPicAdmin) as $detail_pic_admin) -
- -
- - @error('nama_pic_admin') - {{ $message }} - @enderror + @php + $detailNamaPicAdmin = old( + 'detail_nama_pic_admin.nama_pic_admin', + json_decode($detailJoinPicAdmin, true), + ); + $detailNomorHpPicAdmin = old( + 'detail_nomor_hp_pic_admin.nomor_hp_pic_admin', + json_decode($detailJoinPicAdmin, true), + ); + @endphp + + @if (is_array($detailNamaPicAdmin) && + count($detailNamaPicAdmin) > 0 && + is_array($detailNomorHpPicAdmin) && + count($detailNomorHpPicAdmin) > 0) + @foreach ($detailNamaPicAdmin as $index => $detail_pic_admin) + @if (!empty($detail_pic_admin)) +
+ +
+ + @error('detail_nama_pic_admin.nama_pic_admin.' . $index) + {{ $message }} + @enderror +
+ + +
+ + @error('detail_nomor_hp_pic_admin.nomor_hp_pic_admin.' . $index) + {{ $message }} + @enderror +
+ +
- -
- - @error('nomor_hp_pic_admin') - {{ $message }} - @enderror -
- -
+ @endif @endforeach @endif
@@ -479,37 +538,52 @@
- @if (isset($kjpp->detail_nama_pic_marketing) && isset($kjpp->detail_nomor_hp_pic_marketing)) - @foreach (json_decode($detailJoinPicMarketing) as $detail_pic_marketing) -
- -
- - @error('nama_pic_marketing') - {{ $message }} - @enderror + @php + $detailNamaPicMarketing = old( + 'detail_nama_pic_marketing.nama_pic_marketing', + json_decode($detailJoinPicMarketing, true), + ); + $detailNomorHpPicMarketing = old( + 'detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing', + json_decode($detailJoinPicMarketing, true), + ); + @endphp + + @if (is_array($detailNamaPicMarketing) && + count($detailNamaPicMarketing) > 0 && + is_array($detailNomorHpPicMarketing) && + count($detailNomorHpPicMarketing) > 0) + @foreach ($detailNamaPicMarketing as $index => $detail_pic_marketing) + @if (!empty($detail_pic_marketing)) +
+ +
+ + @error('detail_nama_pic_marketing.nama_pic_marketing.' . $index) + {{ $message }} + @enderror +
+ + +
+ + @error('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing.' . $index) + {{ $message }} + @enderror +
+ +
- -
- - @error('nomor_hp_pic_marketing') - {{ $message }} - @enderror -
- -
+ @endif @endforeach @endif
diff --git a/resources/views/kjpp/show.blade.php b/resources/views/kjpp/show.blade.php index af147cb..4da7007 100644 --- a/resources/views/kjpp/show.blade.php +++ b/resources/views/kjpp/show.blade.php @@ -96,10 +96,10 @@

{{ $kjpp->email_kantor }}

- @if (isset($kjpp->detail_email_kantor)) - @foreach (json_decode($kjpp->detail_email_kantor) as $detail_email_kantor) + @if (!empty($detailJoinEmailKantor)) + @foreach (json_decode($detailJoinEmailKantor) as $detail_email_kantor)

- {{ $detail_email_kantor }} + {{ $detail_email_kantor->email_kantor }}

@endforeach @endif @@ -239,9 +239,9 @@ @endforeach
@else -
No - business license - selected.
+
+ - +
@endif
From 7553b7d4b6f7c2c04dcfa4cb69e379e6fa602e73 Mon Sep 17 00:00:00 2001 From: majid Date: Wed, 18 Dec 2024 16:58:32 +0700 Subject: [PATCH 5/5] update memo, lpj, resume, dan perbaikan form inspeksi --- app/Http/Controllers/PenilaiController.php | 188 ++++++- app/Http/Controllers/SurveyorController.php | 28 +- app/Models/DokumenJaminan.php | 4 + app/Models/Penilai.php | 42 ++ ...2024_12_17_025938_create_penilai_table.php | 44 ++ ...024_12_17_074223_update_inspeksi_table.php | 44 ++ .../views/component/kertas-kerja.blade.php | 2 - .../components/informasi-pembanding.blade.php | 124 ++--- .../lpj-sederhana-standard.blade.php | 319 +++++++++++- .../views/penilai/components/memo.blade.php | 458 ++++++++++++++++++ .../penilai/components/paparan.blade.php | 0 .../views/penilai/components/resume.blade.php | 228 ++++++--- resources/views/penilai/show.blade.php | 287 ++++++++--- .../components/apartemen-kantor.blade.php | 12 +- .../surveyor/components/card-tambah.blade.php | 20 +- .../components/data-pembanding.blade.php | 25 +- .../views/surveyor/components/denah.blade.php | 2 +- .../views/surveyor/components/foto.blade.php | 2 +- .../surveyor/components/informasi.blade.php | 10 +- .../surveyor/components/inspeksi.blade.php | 2 +- resources/views/surveyor/detail.blade.php | 4 +- routes/web.php | 21 +- 22 files changed, 1556 insertions(+), 310 deletions(-) create mode 100644 app/Models/Penilai.php create mode 100644 database/migrations/2024_12_17_025938_create_penilai_table.php create mode 100644 database/migrations/2024_12_17_074223_update_inspeksi_table.php create mode 100644 resources/views/penilai/components/paparan.blade.php diff --git a/app/Http/Controllers/PenilaiController.php b/app/Http/Controllers/PenilaiController.php index e6a578e..7a69240 100644 --- a/app/Http/Controllers/PenilaiController.php +++ b/app/Http/Controllers/PenilaiController.php @@ -5,6 +5,7 @@ namespace Modules\Lpj\Http\Controllers; use Illuminate\Http\Request; use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Inspeksi; +use Modules\Lpj\Models\Penilai; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\Auth; use Maatwebsite\Excel\Facades\Excel; @@ -15,6 +16,13 @@ class PenilaiController extends Controller { public $user; + protected $surveyorController; + + public function __construct(SurveyorController $surveyorController) + { + $this->surveyorController = $surveyorController; + } + /** * Display a listing of the resource. */ @@ -30,9 +38,9 @@ class PenilaiController extends Controller { $permohonan = Permohonan::with('debiture.documents')->find($id); - $jaminanId = $permohonan->debiture->documents->first()->jenis_jaminan_id; + $documentId = $request->query('documentId'); - $inpeksi = Inspeksi::where('permohonan_id', $id)->where('jenis_jaminan_id', $jaminanId)->first(); + $inpeksi = Inspeksi::where('permohonan_id', $id)->where('dokument_id', $jaminanId)->first(); $formFoto = null; if ($inpeksi) { @@ -56,14 +64,20 @@ class PenilaiController extends Controller // } - public function sederhana($id) + public function sederhana(Request $request,$id) { - $data = new SurveyorController(); - $basicData = $data->getCommonData(); - $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian'])->find($id); - $jaminanId = $permohonan->debiture->documents->first()->jenis_jaminan_id; - $inspeksi = Inspeksi::where('permohonan_id', $id)->where('jenis_jaminan_id', $jaminanId)->first(); + $basicData = $this->surveyorController->getCommonData(); + + $documentId = $request->query('documentId'); + $inspeksiId = $request->query('inspeksiId'); + $jaminanId = $request->query('jaminanId'); + + $permohonan = $this->surveyorController->getPermohonanJaminanId($id, $documentId, $jaminanId); + + + + $inspeksi = Inspeksi::where('permohonan_id', $id)->where('dokument_id', $documentId)->first(); $forminspeksi = null; if ($inspeksi) { $forminspeksi = json_decode($inspeksi->data_form, true); @@ -71,33 +85,55 @@ class PenilaiController extends Controller return view('lpj::penilai.components.lpj-sederhana-standard', compact('permohonan', 'basicData', 'forminspeksi', 'inspeksi')); } - public function standard($id) + public function standard(Request $request, $id) { - $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian'])->find($id); - $jaminanId = $permohonan->debiture->documents->first()->jenis_jaminan_id; + $documentId = $request->query('documentId'); + $jaminanId = $request->query('jaminanId'); - $inspeksi = Inspeksi::where('permohonan_id', $id)->where('jenis_jaminan_id', $jaminanId)->first(); + $permohonan = $this->surveyorController->getPermohonanJaminanId($id, $documentId, $jaminanId); + $basicData = $this->surveyorController->getCommonData(); + + $inspeksi = Inspeksi::where('permohonan_id', $id)->where('dokument_id', $documentId)->first(); $forminspeksi = null; if ($inspeksi) { $forminspeksi = json_decode($inspeksi->data_form, true); } - $data = new SurveyorController(); - $basicData = $data->getCommonData(); + + return view('lpj::penilai.components.lpj-sederhana-standard', compact('permohonan', 'forminspeksi', 'basicData', 'inspeksi')); } - public function resume($id) + public function resume(Request $request) { - $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian'])->find($id); + $permohonanId = $request->query('permohonanId'); + $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian'])->find($permohonanId); return view('lpj::penilai.components.resume', compact('permohonan')); } - public function memo() + public function memo(Request $request) { - return view('lpj::resume.index'); + $permohonanId = $request->query('permohonanId'); + $documentId = $request->query('documentId'); + $inspeksiId = $request->query('inspeksiId'); + $jaminanId = $request->query('jaminanId'); + + $permohonan = $this->surveyorController->getPermohonanJaminanId($permohonanId, $documentId, $jaminanId); + $inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); + + $formFoto = null; + $formPeta = null; + if ($inspeksi) { + $formFoto = json_decode($inspeksi->foto_form, true); + $formPeta = json_decode($inspeksi->data_form, true); + + } + + + + return view('lpj::penilai.components.memo', compact('permohonan', 'formFoto', 'formPeta')); } @@ -106,7 +142,7 @@ class PenilaiController extends Controller */ public function show($id) { - $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian'])->find($id); + $permohonan = Permohonan::with(['debiture.documents.jenisjaminan', 'region.teams.teamsUsers.user', 'penilaian', 'documents.inspeksi'])->find($id); // return response()->json(['permohonan' => $permohonan]); return view('lpj::penilai.show', compact('permohonan')); @@ -123,11 +159,20 @@ class PenilaiController extends Controller /** * Update the specified resource in storage. */ - public function update(Request $request, $id) + public function paparan(Request $request) { - // + $permohonanId = $request->query('permohonanId'); + return view('lpj::penilai.components.paparan'); } + + public function rap(Request $request) + { + $permohonanId = $request->query('permohonanId'); + return view('lpj::penilai.components.paparan'); + } + + /** * Remove the specified resource from storage. */ @@ -160,7 +205,7 @@ class PenilaiController extends Controller // Apply whereHas to check penilai_id, role, and user_id specifically for 'penilai' role $query->whereHas('penilaian.userPenilai', function ($q) { $q->where('role', 'penilai') // Ensure the role is 'penilai' - ->where('user_id', 12); // Ganti dengan Auth::user()->id jika dinamis + ->where('user_id', Auth::user()->id); // Ganti dengan Auth::user()->id jika dinamis }); // Apply sorting if provided @@ -213,9 +258,9 @@ class PenilaiController extends Controller ]); } - public function kertas_kerja($id, $jaminanId) + public function export_kertas_kerja($id, $jaminanId) { - $data = Inspeksi::where('permohonan_id', $id)->where('jenis_jaminan_id', $jaminanId)->first(); + $data = Inspeksi::where('permohonan_id', $id)->where('dokument_id', $jaminanId)->first(); // $data = null; // $headerInfo = [ @@ -234,5 +279,100 @@ class PenilaiController extends Controller } + public function import_kertas_kerja(Request $request) +{ + + $validatedData = $request->validate([ + 'permohonan_id' => 'required|integer', + 'document_id' => 'required|integer', + 'inspeksi_id' => 'required|integer', + 'kertas_kerja' => 'required|file|mimes:pdf,doc,docx,xls,xlsx,xlsx', + ]); + + try { + // Simpan file kertas kerja + if ($request->hasFile('kertas_kerja')) { + $file = $request->file('kertas_kerja'); + $filePath = $this->surveyorController->uploadFile($file, 'kertas_kerja'); + Penilai::updateOrCreate( + [ + 'permohonan_id' => $validatedData['permohonan_id'], + 'dokument_id' => $validatedData['document_id'], + 'inspeksi_id' => $validatedData['inspeksi_id'], + ], + [ + 'kertas_kerja' => $filePath, + ] + ); + + return response()->json(['success' => true, 'message' => 'Kertas kerja berhasil diunggah.']); + } + + return response()->json(['success' => false, 'message' => 'File kertas kerja tidak ditemukan.'], 400); + } catch (\Exception $e) { + return response()->json(['success' => false, 'message' => 'Terjadi kesalahan: ' . $e->getMessage()], 500); + } +} + + + public function status($id) + { + $penilai = Penilai::find($id); + return response()->json(['data' => $penilai]); + } + + public function checkStatusLpj(Request $request) + { + $permohonanId = $request->query('permohonanId'); + $documentId = $request->query('documentId'); + $inspeksiId = $request->query('inspeksiId'); + + $statusLpj = Penilai::where('permohonan_id', $permohonanId) + ->where('dokument_id', $documentId) + ->where('inspeksi_id', $inspeksiId) + ->first(); + + return response()->json(['status' => $statusLpj ? $statusLpj->type : null]); + } + + public function saveStatusLpj(Request $request) + { + + Penilai::updateOrCreate( + [ + 'permohonan_id' => $request->permohonan_id, + 'dokument_id' => $request->document_id, + 'inspeksi_id' => $request->inspeksi_id, + ], + [ + 'type' => $request->type, + ] + ); + + return response()->json(['success' => true]); + } + + + public function storePenilaian($id){ + try { + $permohonan = Permohonan::findOrFail($id); + $permohonan->update([ + 'status' => 'proses-laporan', + ]); + + return response()->json([ + 'success' => true, + 'message' => 'Berhasil menyimpan penilaian' + ], 200); + + } catch (\Exception $e) { + return response()->json([ + 'success' => false, + 'message' => 'Terjadi kesalahan', + 'error' => $e->getMessage() + ], 500); + } + } + } diff --git a/app/Http/Controllers/SurveyorController.php b/app/Http/Controllers/SurveyorController.php index da3ceb5..e730a54 100644 --- a/app/Http/Controllers/SurveyorController.php +++ b/app/Http/Controllers/SurveyorController.php @@ -723,15 +723,33 @@ class SurveyorController extends Controller // Fields untuk tanah if (in_array($field, ['luas_tanah'])) { - $cekLuas = $dataForm['tanah']['luas_tanah'] == 'sesuai' ? 'sesuai' : 'tidak sesuai'; - $dataForm['tanah'][$field][$cekLuas] = $newValue; + // Pastikan struktur array ada sebelum diakses + if (!isset($dataForm['tanah']['luas_tanah'])) { + $dataForm['tanah']['luas_tanah'] = []; + } + + $cekLuas = isset($dataForm['tanah']['luas_tanah']['sesuai']) && $dataForm['tanah']['luas_tanah']['sesuai'] === 'sesuai' + ? 'sesuai' + : 'tidak sesuai'; + + $dataForm['tanah']['luas_tanah'][$cekLuas] = $newValue; + $needsSave = true; } + // Fields untuk bangunan elseif (in_array($field, ['luas_tanah_bagunan'])) { + if (!isset($dataForm['bangunan']['luas_tanah_bagunan'])) { + $dataForm['bangunan']['luas_tanah_bagunan'] = []; + } - $cekBanguan = $dataForm['bangunan']['luas_tanah_bagunan'] == 'sesuai' ? 'sesuai' : 'tidak sesuai'; - $dataForm['bangunan'][$field][$cekBanguan] = $newValue; + $cekBanguan = isset($dataForm['bangunan']['luas_tanah_bagunan']['sesuai']) && $dataForm['bangunan']['luas_tanah_bagunan']['sesuai'] === 'sesuai' + ? 'sesuai' + : 'tidak sesuai'; + + $dataForm['bangunan']['luas_tanah_bagunan'][$cekBanguan] = $newValue; + $needsSave = true; } + // Fields untuk alamat dalam asset elseif (in_array($field, ['address', 'village_code', 'district_code', 'city_code', 'province_code'])) { @@ -2306,7 +2324,7 @@ class SurveyorController extends Controller */ - private function uploadFile($file, $type) + public function uploadFile($file, $type) { if (!$file->isValid()) { throw new Exception("Invalid file upload for {$type}"); diff --git a/app/Models/DokumenJaminan.php b/app/Models/DokumenJaminan.php index 3454dc9..e3a958e 100644 --- a/app/Models/DokumenJaminan.php +++ b/app/Models/DokumenJaminan.php @@ -67,4 +67,8 @@ public function detail(){ return $this->hasMany(DetailDokumenJaminan::class, 'dokumen_jaminan_id', 'id'); } + public function inspeksi() + { + return $this->hasMany(Inspeksi::class, 'dokument_id', 'id'); + } } diff --git a/app/Models/Penilai.php b/app/Models/Penilai.php new file mode 100644 index 0000000..cc5eed5 --- /dev/null +++ b/app/Models/Penilai.php @@ -0,0 +1,42 @@ +belongsTo(DokumenJaminan::class); + } + public function permohonan(){ + return $this->belongsTo(Permohonan::class); + } + public function inspeksi(){ + return $this->belongsTo(Inspeksi::class); + } + +} diff --git a/database/migrations/2024_12_17_025938_create_penilai_table.php b/database/migrations/2024_12_17_025938_create_penilai_table.php new file mode 100644 index 0000000..0a5fc7e --- /dev/null +++ b/database/migrations/2024_12_17_025938_create_penilai_table.php @@ -0,0 +1,44 @@ +id(); + $table->string('type')->nullable(); + $table->json('lpj')->nullable(); + $table->json('resume')->nullable(); + $table->json('memo')->nullable(); + $table->string('kertas_kerja')->nullable(); + $table->unsignedBigInteger('dokument_id')->nullable(); + $table->unsignedBigInteger('permohonan_id')->nullable(); + $table->unsignedBigInteger('inspeksi_id')->nullable(); + $table->timestamps(); + $table->timestamp('authorized_at')->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->softDeletes(); + $table->unsignedBigInteger('created_by')->nullable(); + $table->unsignedBigInteger('updated_by')->nullable(); + $table->unsignedBigInteger('deleted_by')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->foreign('dokument_id')->references('id')->on('dokumen_jaminan')->onDelete('set null'); + $table->foreign('permohonan_id')->references('id')->on('permohonan')->onDelete('set null'); + $table->foreign('inspeksi_id')->references('id')->on('inspeksi')->onDelete('set null'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('penilai'); + } +}; diff --git a/database/migrations/2024_12_17_074223_update_inspeksi_table.php b/database/migrations/2024_12_17_074223_update_inspeksi_table.php new file mode 100644 index 0000000..e17d9ab --- /dev/null +++ b/database/migrations/2024_12_17_074223_update_inspeksi_table.php @@ -0,0 +1,44 @@ +dropForeign(['jenis_jaminan_id']); + } + + if (Schema::hasColumn('inspeksi', 'jenis_jaminan_id')) { + $table->dropColumn('jenis_jaminan_id'); + } + + $table->unsignedBigInteger('dokument_id')->nullable()->after('permohonan_id'); + $table->foreign('dokument_id')->references('id')->on('dokumen_jaminan')->onDelete('cascade'); + + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + + Schema::table('inspeksi', function (Blueprint $table) { + + $table->dropForeign(['dokument_id']); + $table->dropColumn('dokument_id'); + + $table->unsignedBigInteger('jenis_jaminan_id')->nullable()->after('permohonan_id'); + $table->foreign('jenis_jaminan_id')->references('id')->on('jenis_jaminan')->onDelete('cascade'); + }); + + } +}; diff --git a/resources/views/component/kertas-kerja.blade.php b/resources/views/component/kertas-kerja.blade.php index 8e197cf..411aa9d 100644 --- a/resources/views/component/kertas-kerja.blade.php +++ b/resources/views/component/kertas-kerja.blade.php @@ -538,8 +538,6 @@ @endforeach
- - diff --git a/resources/views/penilai/components/informasi-pembanding.blade.php b/resources/views/penilai/components/informasi-pembanding.blade.php index e0a65a2..a65fa57 100644 --- a/resources/views/penilai/components/informasi-pembanding.blade.php +++ b/resources/views/penilai/components/informasi-pembanding.blade.php @@ -4,68 +4,70 @@ $informasiPembanding = isset($inspeksi->data_pembanding) ? json_decode($inspeksi->data_pembanding, true) : []; @endphp - @foreach ($informasiPembanding['data_pembanding'] as $key => $item) -
-
-
- - Gambar foto_objek + @if (isset($informasiPembanding['data_pembanding'])) + @foreach ($informasiPembanding['data_pembanding'] as $key => $item) +
+
+
+ + Gambar foto_objek +
+
+
+ +
+ {{ $item['jenis_aset'] }} +
+
+ +
+ +
+ {{ $item['harga_diskon'] }} +
+
+ +
+ +
+ {{ $item['harga'] }} +
+
+ +
+ +
+ {{ $item['harga'] }} +
+
+ +
+ +
+ {{ $item['luas_tanah'] }} +
+
+ +
+ +
+ {{ $item['luas_bangunan'] }} +
+
+ +
+ +
+ {{ $item['kordinat_lat'] }} , {{ $item['kordinat_lng'] }} +
+
+ +
-
-
- -
- {{ $item['jenis_aset'] }} -
-
-
- -
- {{ $item['harga_diskon'] }} -
-
- -
- -
- {{ $item['harga'] }} -
-
- -
- -
- {{ $item['harga'] }} -
-
- -
- -
- {{ $item['luas_tanah'] }} -
-
- -
- -
- {{ $item['luas_bangunan'] }} -
-
- -
- -
- {{ $item['kordinat_lat'] }} , {{ $item['kordinat_lng'] }} -
-
- -
- -
- @endforeach + @endforeach + @endif
diff --git a/resources/views/penilai/components/lpj-sederhana-standard.blade.php b/resources/views/penilai/components/lpj-sederhana-standard.blade.php index ea6f1f2..404c1c8 100644 --- a/resources/views/penilai/components/lpj-sederhana-standard.blade.php +++ b/resources/views/penilai/components/lpj-sederhana-standard.blade.php @@ -35,7 +35,7 @@
@foreach ($permohonan->debiture->documents as $dokumen) - {{formatAlamat($dokumen->pemilik)}} + {{ formatAlamat($dokumen->pemilik) }} @endforeach
@@ -82,7 +82,34 @@ Identitas Cadeb/Debitur
-
+
+ +
+ +
+ + @if (isset($permohonan->debiture)) +

{{ $permohonan->debiture->name }}

+ @endif +
+
+
+ +
+ +
+ + {{ $forminspeksi['asset']['debitur_perwakilan'][0] ?? '' }} + +
+
+ +
+ +
+ +
+
@@ -94,7 +121,61 @@ Deskripsi dan Alamat Aset
-
+
+ +
+ + @php + $statusKey = isset($forminspeksi['asset']['jenis_asset']['sesuai']) ? 'sesuai' : 'tidak sesuai'; + $selectedValue = $forminspeksi['asset']['jenis_asset'][$statusKey] ?? null; + @endphp +
+ {{ $selectedValue }} +
+
+ +
+ @php + $statusKey = isset($forminspeksi['asset']['alamat']['sesuai']) ? 'sesuai' : 'tidak sesuai'; + $selectedValue = $forminspeksi['asset']['alamat'][$statusKey] ?? null; + @endphp + +
+ {{ $selectedValue['address'] ?? '' }} +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
@@ -106,7 +187,98 @@
+
+ @foreach ($permohonan->debiture->documents as $dokumen) +
+ + +
+ @endforeach +
+ @include('lpj::component.pdfviewer')
@@ -116,15 +288,38 @@ Hubungan Cadeb/Debitur dengan pemilik dan penghuni + @php + $statusKey = isset($forminspeksi['asset']['hub_cadeb']['sesuai']) ? 'sesuai' : 'tidak sesuai'; + $selectedData = $forminspeksi['asset']['hub_cadeb'][$statusKey] ?? null; + @endphp
- @include('lpj::surveyor.components.tanah') - @include('lpj::surveyor.components.bangunan') - @include('lpj::surveyor.components.lingkungan') - @include('lpj::surveyor.components.fakta') - @include('lpj::surveyor.components.informasi') + @foreach ($permohonan->debiture->documents as $dokumen) + @if ($dokumen->jenisJaminan) + @php + $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true); + @endphp + @if (isset($formKategori) && $formKategori) + @php + $kategoriArray = is_array($formKategori) ? $formKategori : [$formKategori]; + $kategoriUnik = array_unique($kategoriArray); + @endphp + + + + + @foreach ($kategoriUnik as $kategori) + {{-- Tampilkan komponen sesuai kategori --}} + @include('lpj::surveyor.components.' . str_replace('-', '-', $kategori), [ + 'dokumen' => $dokumen, + ]) + @endforeach + @endif + @endif + @endforeach +
@@ -142,17 +337,114 @@ total nilai pasar wajar
-
+
+
+ +
+
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+ + +
+
+ + +
+
+ +
+
+

- nilai asuransi + nilai asuransi

+
+ +
+
+
+ + +
+
+ + +
+ +
+ + +
+ + +
+
+
@@ -165,11 +457,4 @@
- - @endsection diff --git a/resources/views/penilai/components/memo.blade.php b/resources/views/penilai/components/memo.blade.php index e69de29..e963b37 100644 --- a/resources/views/penilai/components/memo.blade.php +++ b/resources/views/penilai/components/memo.blade.php @@ -0,0 +1,458 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{-- {{ Breadcrumbs::render(request()->route()->getName()) }} + --}} + Resume +@endsection + +@section('content') + @include('lpj::assetsku.includenya') +
+
+
+

+ Memo Antar Kantor +

+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+ + + +
+ +
+ +
+
+ +
+ +
+ +
+
+
+
+ +
+
+

Sehubungan dengan permintaan BAGI Cabang ............., untuk dilakukan survey untuk penilaian baru/review, calon debitur/debitur an …............., + dengan deskripsi sebagai berikut : +

+
+
+
+
+ + +
+ + + {{-- --}} + +
+ + +
+ +
+
+
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+ + +
+
+
+ + + +
+
+

+ Dokument +

+
+
+ +
+ +
+ +
+ +
+ +
+
+ +
+ +
+ @if (!empty($forminspeksi['fakta']['hasil_survey'])) + @foreach ($forminspeksi['fakta']['hasil_survey'] as $index => $positif) +
+ + +
+ @endforeach + @else +
+ + +
+ @endif + +
+
+ + +
+ +
+ @if (!empty($forminspeksi['fakta']['fakta_negatif'])) + @foreach ($forminspeksi['fakta']['fakta_negatif'] as $index => $negatif) +
+ + +
+ @endforeach + @else +
+ + + +
+ @endif + +
+
+
+
+ + + +
+
+

+ Peta lokasi +

+
+
+
+
+

+ Rute Menuju Lokasi +

+
+
+ @if (isset($formPeta)) + @php + $foto = [ + 'foto_gistaru', + 'foto_bhumi', + 'foto_argis_region', + 'foto_tempat', + ] + @endphp + + @foreach ($foto as $item) + @if (isset($formPeta[$item]) && $formPeta[$item]) +
+
+

+ {{ ucwords(str_replace('_', ' ', $item)) }} +

+
+ {{ $item }} +
+
+
+ @endif + @endforeach + @endif +
+ +
+
+
+ + +
+
+

+ Foto jaminan +

+
+
+
+
+

+ Rute Menuju Lokasi +

+
+
+ @if (isset($formFoto)) + @foreach ($formFoto['rute_menuju_lokasi'] as $item) +
+
+

+ {{ $item['name_rute'] . ' ' . $loop->index + 1 }} +

+
+ + + + +
+
+
+ @endforeach + @endif +
+
+ + +
+
+

+ Object Jaminan +

+
+
+ @if (isset($formFoto['object_jaminan'])) + @foreach ($formFoto['object_jaminan'] as $item) +
+
+

+ {{ $item['name_objek'] }} +

+
+ + + + +
+
+
+ @endforeach + @endif +
+
+ + @if (isset($formFoto['foto_basement'])) +
+
+

+ Basement +

+
+
+
+
+

+ Basemnt +

+
+ + + + +
+
+
+ +
+
+ @endif + + @if (isset($formFoto['foto_gerbang'])) +
+
+

+ Gerbang +

+
+
+ + +
+
+

+ Gerbang +

+
+ + + + +
+
+
+ +
+
+ @endif + + + @if (isset($formFoto['pendamping'])) +
+
+

+ Pendamping +

+
+
+ + +
+
+

+ Pendamping +

+
+ + + + +
+
+
+ +
+
+ @endif +
+
+ + +
+@endsection +@include('lpj::surveyor.js.utils') + + + diff --git a/resources/views/penilai/components/paparan.blade.php b/resources/views/penilai/components/paparan.blade.php new file mode 100644 index 0000000..e69de29 diff --git a/resources/views/penilai/components/resume.blade.php b/resources/views/penilai/components/resume.blade.php index ad89007..745824d 100644 --- a/resources/views/penilai/components/resume.blade.php +++ b/resources/views/penilai/components/resume.blade.php @@ -109,7 +109,6 @@ -
@@ -141,54 +140,129 @@
-
-
-

- KESIMPULAN NILAI PASAR WAJAR -

-
-
+
+
+

+ KESIMPULAN NILAI PASAR WAJAR +

+
+
-
- -
- - - - - - - +
+ +
+
SertipikatLuas TanahLuas BangunanNilai Pasar Wajar
+ + + + + + - - - - - - - - - - - -
SertipikatLuas TanahLuas BangunanNilai Pasar Wajar
- - - - - -
+ + + + + + + + + + + + + + + + + + +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + +
SertipikatLuas TanahLuas BangunanNilai Pasar Wajar
+ + + + + + + +
+
+
+ +
+ +
+ +
+ +
+ + +
+ +
-
- -
+ + + +
+ +
+@endsection +@include('lpj::surveyor.js.utils') + diff --git a/resources/views/penilai/show.blade.php b/resources/views/penilai/show.blade.php index 2f40adf..b176782 100644 --- a/resources/views/penilai/show.blade.php +++ b/resources/views/penilai/show.blade.php @@ -5,6 +5,7 @@ @endsection @section('content') +@include('lpj::assetsku.includenya')
@@ -174,8 +175,6 @@

- -
@@ -188,7 +187,7 @@ KERTAS KERJA - + PAPARAN @@ -196,10 +195,17 @@ + @php + $inspeksiId = null; + foreach ($dokumen->inspeksi as $item) { + $inspeksiId = $item->id; + } + @endphp