penambahan table dan model surveyor

This commit is contained in:
majid
2024-10-16 08:50:11 +07:00
parent bb7eae74f3
commit 78618098ca
38 changed files with 1985 additions and 692 deletions

View File

@@ -8,7 +8,21 @@ use Illuminate\Http\Request;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Permohonan;
use Modules\Lpj\Models\Branch; use Modules\Lpj\Models\Branch;
use Modules\Lpj\Models\Surveyor;
use Modules\Lpj\Models\BentukTanah;
use Modules\Lpj\Models\KonturTanah;
use Modules\Location\Models\Province; use Modules\Location\Models\Province;
use Modules\Lpj\Models\PosisiKavling;
use Modules\Lpj\Models\KondisiFisikTanah;
use Modules\Lpj\Models\KetinggianTanah;
use Modules\Lpj\Models\SifatBangunan;
use Modules\Lpj\Models\JenisBangunan;
use Modules\Lpj\Models\KondisiBangunan;
use Modules\Lpj\Models\SpekBangunan;
use Modules\Lpj\Models\SpekKategoritBangunan;
use Modules\Lpj\Models\SaranaPelengkap;
use Modules\Lpj\Models\ArahMataAngin;
class SurveyorController extends Controller class SurveyorController extends Controller
{ {
@@ -51,16 +65,46 @@ class SurveyorController extends Controller
'debiture.village', 'debiture.village',
'branch', 'branch',
'tujuanPenilaian', 'tujuanPenilaian',
'penilaian' 'penilaian',
'documents',
], ],
)->findOrFail($id); )->findOrFail($id);
$surveyor = $id; $surveyor = $id;
$branches = Branch::all(); $branches = Branch::all();
$provinces = Province::all(); $provinces = Province::all();
$bentukTanah = BentukTanah::all();
$konturTanah = KonturTanah::all();
$posisiKavling = PosisiKavling::all();
$ketinggianTanah = KetinggianTanah::all();
$kondisiFisikTanah = KondisiFisikTanah::all();
$jenisBangunan = JenisBangunan::all();
$kondisiBangunan = KondisiBangunan::all();
$sifatBangunan = SifatBangunan::all();
$spekKategoriBagunan = SpekKategoritBangunan::all();
$spekBangunan = SpekBangunan::all();
$saranaPelengkap = SaranaPelengkap::all();
$arahMataAngin = ArahMataAngin::all();
return view('lpj::surveyor.detail', compact('permohonan', 'surveyor', 'branches', 'provinces')); return view('lpj::surveyor.detail', compact(
'permohonan',
'surveyor',
'branches',
'provinces',
'bentukTanah',
'konturTanah',
'posisiKavling',
'kondisiFisikTanah',
'ketinggianTanah',
'kondisiBangunan',
'jenisBangunan',
'sifatBangunan',
'spekKategoriBagunan',
'spekBangunan',
'saranaPelengkap',
'arahMataAngin',
));
} }
/** /**
@@ -241,4 +285,6 @@ class SurveyorController extends Controller
} }

View File

@@ -0,0 +1,23 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\BentukTanahFactory;
class BentukTanah extends Model
{
use HasFactory;
protected $table = 'bentuk_tanah';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): BentukTanahFactory
{
//return BentukTanahFactory::new();
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\GolonganMasySekitarFactory;
class GolonganMasySekitar extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): GolonganMasySekitarFactory
{
//return GolonganMasySekitarFactory::new();
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\JenisBangunanFactory;
class JenisBangunan extends Model
{
use HasFactory;
protected $table = 'jenis_bangunan';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): JenisBangunanFactory
{
//return JenisBangunanFactory::new();
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\KetinggianTanahFactory;
class KetinggianTanah extends Model
{
use HasFactory;
protected $table = 'ketinggian_tanah';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): KetinggianTanahFactory
{
//return KetinggianTanahFactory::new();
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\KondisiBangunanFactory;
class KondisiBangunan extends Model
{
use HasFactory;
protected $table = 'kondisi_bangunan';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): KondisiBangunanFactory
{
//return KondisiBangunanFactory::new();
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\KondisiFisikTanahFactory;
class KondisiFisikTanah extends Model
{
use HasFactory;
protected $table = 'kondisi_fisik_tanah';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): KondisiFisikTanahFactory
{
//return KondisiFisikTanahFactory::new();
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\KonturTanahFactory;
class KonturTanah extends Model
{
use HasFactory;
protected $table = 'kontur_tanah';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): KonturTanahFactory
{
//return KonturTanahFactory::new();
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\LaliLintasLokasiFactory;
class LaliLintasLokasi extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): LaliLintasLokasiFactory
{
//return LaliLintasLokasiFactory::new();
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\LaluLintasLokasiFactory;
class LaluLintasLokasi extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): LaluLintasLokasiFactory
{
//return LaluLintasLokasiFactory::new();
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\PerkerasanJalanFactory;
class PerkerasanJalan extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): PerkerasanJalanFactory
{
//return PerkerasanJalanFactory::new();
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\PosisiKavlingFactory;
class PosisiKavling extends Model
{
use HasFactory;
protected $table = 'posisi_kavling';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): PosisiKavlingFactory
{
//return PosisiKavlingFactory::new();
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\SaranaPelengkapFactory;
class SaranaPelengkap extends Model
{
use HasFactory;
protected $table = 'sarana_pelengkap';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): SaranaPelengkapFactory
{
//return SaranaPelengkapFactory::new();
}
}

View File

@@ -0,0 +1,24 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\SifatBangunanFactory;
class SifatBangunan extends Model
{
use HasFactory;
protected $table = 'sifat_bangunan';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): SifatBangunanFactory
{
//return SifatBangunanFactory::new();
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\SpekBangunanFactory;
class SpekBangunan extends Model
{
use HasFactory;
protected $table = 'spek_bangunan';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
public function bangunanKategori(){
return $this->belongsTo(SpekKategoriBangunan::class, 'spek_kategori_bangunan_id');
}
protected static function newFactory(): SpekBangunanFactory
{
//return SpekBangunanFactory::new();
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\SpekKategoritBangunanFactory;
class SpekKategoritBangunan extends Model
{
use HasFactory;
protected $table = 'spek_kategori_bangunan';
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
public function bangunan()
{
return $this->hasMany(SpekBangunan::class, 'spek_kategori_bangunan_id');
}
protected static function newFactory(): SpekKategoritBangunanFactory
{
//return SpekKategoritBangunanFactory::new();
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Modules\Lpj\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Modules\Lpj\Database\Factories\TingkatKeramaianFactory;
class TingkatKeramaian extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [];
protected static function newFactory(): TingkatKeramaianFactory
{
//return TingkatKeramaianFactory::new();
}
}

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class () extends Migration {
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('bentuk_tanah', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('bentuk_tanah');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('kontur_tanah', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('kontur_tanah');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('ketinggian_tanah', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('ketinggian_tanah');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('kontur_jalan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('kontur_jalan');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('posisi_kavling', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('posisi_kavling');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('kondisi_fisik_tanah', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('kondisi_fisik_tanah');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('jenis_bangunan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('jenis_bangunan');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('kondisi_bangunan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('kondisi_bangunan');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('sifat_bangunan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('sifat_bangunan');
}
};

View File

@@ -0,0 +1,36 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class () extends Migration {
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('spek_kategori_bangunan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('spek_kategori_bangunan');
}
};

View File

@@ -0,0 +1,42 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('spek_bangunan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->foreignId('spek_kategori_bangunan_id')->constrained('spek_kategori_bangunan')->onDelete('cascade');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('spek_bangunan', function (Blueprint $table) {
$table->dropForeign(['spek_kategori_bangunan_id']);
});
Schema::dropIfExists('spek_bangunan');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('sarana_pelengkap', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('sarana_pelengkap');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('perkerasan_jalan', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('perkerasan_jalan');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('lalu_lintas_lokasi', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('lalu_lintas_lokasi');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('gol_mas_sekitar', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('gol_mas_sekitar');
}
};

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('tingkat_keramaian', function (Blueprint $table) {
$table->id();
$table->string('code')->unique()->index();
$table->string('name');
$table->boolean('status')->default(true);
$table->char('authorized_status', 1)->nullable();
$table->timestamps();
$table->timestamp('authorized_at')->nullable();
$table->unsignedBigInteger('authorized_by')->nullable();
$table->softDeletes();
$table->unsignedBigInteger('created_by')->nullable();
$table->unsignedBigInteger('updated_by')->nullable();
$table->unsignedBigInteger('deleted_by')->nullable();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('tingkat_keramaian');
}
};

View File

@@ -187,7 +187,7 @@
"classes": "", "classes": "",
"attributes": [], "attributes": [],
"permission": "", "permission": "",
"roles": ["administrator", "pemohon-ao", "pemohon-eo", "admin"], "roles": ["administrator", "pemohon-ao", "pemohon-eo", "admin", "surveyor"],
"sub": [ "sub": [
{ {
"title": "Cabang", "title": "Cabang",
@@ -332,6 +332,14 @@
"attributes": [], "attributes": [],
"permission": "", "permission": "",
"roles": ["administrator", "admin"] "roles": ["administrator", "admin"]
},
{
"title": "Jenis Bangunan",
"path": "basicdata.ijin_usaha",
"classes": "",
"attributes": [],
"permission": "",
"roles": ["surveyor"]
} }
] ]
} }

View File

@@ -0,0 +1,156 @@
<div class=""max-w-4xl mx-auto bg-white rounded-lg shadow-md overflow-hidden">
<div class="bg-blue-600 text-white py-4 px-6">
<h1 class="text-md font-medium text-gray-900">Analisa Unit</h1>
</div>
<div class="grid gap-5">
<!-- Luas tanah -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Luas Unit</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-3 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="sesuai">
<span class="ml-2">Sesuai</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="tidakSesuai">
<span class="ml-2">Tidak Sesuai</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Jenis Unit -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Jenis Unit</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('bentuk_tanah') border-danger bg-danger-light @enderror"
name="bentuk_tanah">
<option value="">Select Jenis Unit</option>
@if (isset($bentukTanah))
@foreach ($bentukTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Kondidi Unit</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('konturTanah') border-danger bg-danger-light @enderror"
name="konturTanah">
<option value="">Select Kondidi Unit</option>
@if (isset($konturTanah))
@foreach ($konturTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('konturTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Posisi Unit -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Posisi Unit</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('ketinggianTanah') border-danger bg-danger-light @enderror"
name="ketinggianTanah">
<option value="">Select Posisi Unit</option>
@if (isset($ketinggianTanah))
@foreach ($ketinggianTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('ketinggianTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Lantai</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('posisiKavling') border-danger bg-danger-light @enderror"
name="posisiKavling">
<option value="">Select Lantai</option>
@if (isset($posisiKavling))
@foreach ($posisiKavling as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('posisiKavling')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Kondisi Fisik Tanah -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">View</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('kondisiFisikTanah') border-danger bg-danger-light @enderror"
name="kondisiFisikTanah">
<option value="">Select View</option>
@if (isset($kondisiFisikTanah))
@foreach ($kondisiFisikTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('kondisiFisikTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Bentuk Unit</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('kondisiFisikTanah') border-danger bg-danger-light @enderror"
name="kondisiFisikTanah">
<option value="">Select Bentuk Unit</option>
@if (isset($kondisiFisikTanah))
@foreach ($kondisiFisikTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('kondisiFisikTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
</div>
</div>

View File

@@ -6,9 +6,20 @@
@csrf @csrf
<div class="mt-2"> <div class="mt-2">
<div class="bg-info border p-6 rounded-lg shadow-lg flex items-center justify-center" style="height: 300px"> <div class=""max-w-4xl mx-auto bg-white rounded-lg shadow-md overflow-hidden">
<iframe src="https://gistaru.atrbpn.go.id/rtronline/" frameborder="0" style="width: 100%; height: 100%;"></iframe>
<div class="flex flex-wrap gap-4">
<div class="flex w-full items-center justify-center gap-4">
<label class="form-label max-w-56">
<span class="form-label">Upload Denah</span>
</label>
<input type="file" name="ruteMenujuLokasi" class="file-input file-input-bordered w-full ">
</div>
</div>
</div> </div>
</div> </div>
</form> </form>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,384 @@
<div class=""max-w-4xl mx-auto bg-white rounded-lg shadow-md overflow-hidden">
<div class="bg-blue-600 text-white py-4 px-6">
<h1 class="text-md font-medium text-gray-900">Analisa Tanah</h1>
</div>
<div class="grid gap-5">
<!-- Luas tanah -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Luas Tanah</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-3 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="sesuai">
<span class="ml-2">Sesuai</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="tidakSesuai">
<span class="ml-2">Tidak Sesuai</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Hadap Mata Angin</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('bentuk_tanah') border-danger bg-danger-light @enderror"
name="bentuk_tanah">
<option value="">Select Hadap Mata Angin</option>
@if (isset($arahMataAngin))
@foreach ($arahMataAngin as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Bentuk Tanah -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Bentuk Tanah</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('bentuk_tanah') border-danger bg-danger-light @enderror"
name="bentuk_tanah">
<option value="">Select Bentuk Tanah</option>
@if (isset($bentukTanah))
@foreach ($bentukTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Kontur Tanah</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('konturTanah') border-danger bg-danger-light @enderror"
name="konturTanah">
<option value="">Select Kontur Tanah</option>
@if (isset($konturTanah))
@foreach ($konturTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('konturTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Beda Ketinggian Dengan Jalan -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Beda Ketinggian Dengan Jalan</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('ketinggianTanah') border-danger bg-danger-light @enderror"
name="ketinggianTanah">
<option value="">Select Ketinggian Dengan Jalan</option>
@if (isset($ketinggianTanah))
@foreach ($ketinggianTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('ketinggianTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Kontur Jalan Depan Objek -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Kontur Jalan Depan Objek</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="konturJalan" value="menurun">
<span class="ml-2">Menurun</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="konturJalan" value="rata">
<span class="ml-2">Rata</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Posisi Kavling</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('posisiKavling') border-danger bg-danger-light @enderror"
name="posisiKavling">
<option value="">Select Posisi Kavling</option>
@if (isset($posisiKavling))
@foreach ($posisiKavling as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('posisiKavling')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Tusuk Sate -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Tusuk Sate</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="tusukSate" value="ya">
<span class="ml-2">Ya</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="tusukSate" value="tidak">
<span class="ml-2">Tidak</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Lockland -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Locklande</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="lockland" value="ya">
<span class="ml-2">Ya</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="lockland" value="tidak">
<span class="ml-2">Tidak</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Kondisi Fisik Tanah -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Kondisi Fisik Tanah</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('kondisiFisikTanah') border-danger bg-danger-light @enderror"
name="kondisiFisikTanah">
<option value="">Select Posisi Kavling</option>
@if (isset($kondisiFisikTanah))
@foreach ($kondisiFisikTanah as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('kondisiFisikTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
</div>
</div>
<div class=" bg-white rounded-lg shadow-md overflow-hidden">
<div class="bg-blue-600 text-white py-4 px-6">
<h1 class="text-md font-medium text-gray-900">Analisa Bangunan</h1>
</div>
<div class="grid gap-5">
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Luas Tanah</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2">
<label class="form-label flex items-center gap-3 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="sesuai">
<span class="ml-2">Sesuai</span>
</label>
<label class="form-label flex items-center gap-2.5 text-nowrap">
<input type="radio" class="radio" name="luasTanah" value="tidakSesuai">
<span class="ml-2">Tidak Sesuai</span>
</label>
</div>
@error('bentuk_tanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Jenis Bangunan -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Jenis Bangunan</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('jenisBangunan') border-danger bg-danger-light @enderror"
name="jenisBangunan">
<option value="">Select Jenis Bangunan</option>
@if (isset($jenisBangunan))
@foreach ($jenisBangunan as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('jenisBangunan')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Kondisi Bangunan -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Kondisi Bangunan</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('kondisiBangunan') border-danger bg-danger-light @enderror"
name="kondisiBangunan">
<option value="">Select Kondisi Bangunan</option>
@if (isset($kondisiBangunan))
@foreach ($kondisiBangunan as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('kondisiBangunan')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Sifat Bangunan -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56"> Sifat Bangunan</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('sifatBangunan') border-danger bg-danger-light @enderror"
name="sifatBangunan">
<option value="">Select Sifat Bangunan</option>
@if (isset($sifatBangunan))
@foreach ($sifatBangunan as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('sifatBangunan')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<!-- Spek Bangunan -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Spek Bangunan</label>
<div class="flex flex-wrap items-baseline w-full">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4 mt-2 w-full">
@if (@isset($spekKategoriBagunan))
@foreach ($spekKategoriBagunan as $item)
<div>
<label
class="form-label flex items-center gap-3 text-nowrap">{{ $item->name }}</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('kondisiFisikTanah') border-danger bg-danger-light @enderror"
name="kondisiFisikTanah">
<option value="">Select {{ $item->name }}</option>
@if (isset($spekBangunan))
@foreach ($spekBangunan as $spek)
@if ($spek->spek_kategori_bagunan_id == $item->id)
<option value="{{ $spek->id }}">{{ $spek->name }}
</option>
@endif
@endforeach
@endif
</select>
@error('kondisiFisikTanah')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
@endforeach
@endif
</div>
</div>
</div>
<!-- Sarana pelengkap -->
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Sarana pelengkap</label>
<div class="flex flex-wrap items-baseline w-full">
<select
class="input tomselect w-full @error('saranaPelengkap') border-danger bg-danger-light @enderror"
name="saranaPelengkap">
<option value="">Select Posisi Kavling</option>
@if (isset($saranaPelengkap))
@foreach ($saranaPelengkap as $item)
<option value="{{ $item->id }}">{{ $item->name }}</option>
@endforeach
@endif
</select>
@error('saranaPelengkap')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
</div>
</div>