petani dan lahan

This commit is contained in:
2026-07-06 01:28:06 +07:00
parent 7cd32b1116
commit 21679486ea
11 changed files with 769 additions and 383 deletions
+1 -1
View File
@@ -6,6 +6,6 @@ enum KondisiTanaman: string
{
case BAIK = 'baik';
case SEDANG = 'sedang';
case SAKIT = 'sakit';
case BURUK = 'buruk';
case MATI = 'mati';
}
@@ -9,6 +9,7 @@ use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Storage;
use App\Models\Wilayah\Provinsi;
use App\Models\Pertanian\Petani;
@@ -75,12 +76,28 @@ class PetaniController extends Controller
//'komoditas_id' => ['required','exists:master_komoditas,id'],
'status_perkawinan' => ['required', Rule::enum(Pernikahan::class)],
'ktp' => ['nullable', 'min:16', 'max:16'],
'file_ktp' => ['nullable', 'file', 'mimes:jpeg,jpg,png,pdf', 'max:2048'],
'file_ktp' => ['nullable', 'image', 'mimes:jpeg,jpg,png', 'max:2048'],
'kk' => ['nullable', 'min:16', 'max:16'],
'file_kk' => ['nullable', 'file', 'mimes:jpeg,jpg,png,pdf', 'max:2048'],
'foto' => ['nullable', 'file', 'mimes:jpeg,jpg,png', 'max:2048'],
'file_kk' => ['nullable', 'image', 'mimes:jpeg,jpg,png', 'max:2048'],
'foto' => ['nullable', 'image', 'mimes:jpeg,jpg,png', 'max:2048'],
'nomor_telepon' => ['nullable', 'numeric', 'max:20'],
]);
if ($request->hasFile('file_ktp')) {
$file_ktp = $request->file('file_ktp');
$validatedData['path_ktp'] = $file_ktp->store('petani/ktp');
$validatedData['file_ktp'] = $file_ktp->getClientOriginalName();
}
if ($request->hasFile('file_kk')) {
$file_kk = $request->file('file_kk');
$validatedData['path_kk'] = $file_kk->store('petani/kk');
$validatedData['file_kk'] = $file_kk->getClientOriginalName();
}
if ($request->hasFile('foto')) {
$file_foto = $request->file('foto');
$validatedData['foto'] = $file_foto->store('petani/foto');
}
Petani::create([...$validatedData,
'uid' => 'PTN-'. strtoupper(Str::random(10)),
'created_by' => auth()->id(),
@@ -145,8 +162,24 @@ class PetaniController extends Controller
'kk' => ['nullable', 'min:16', 'max:16'],
'file_kk' => ['nullable', 'file', 'mimes:jpeg,jpg,png,pdf', 'max:2048'],
'foto' => ['nullable', 'file', 'mimes:jpeg,jpg,png', 'max:2048'],
'nomor_telepon' => ['nullable', 'numeric', 'max:20'],
]);
if ($request->hasFile('file_ktp')) {
$file_ktp = $request->file('file_ktp');
$validatedData['path_ktp'] = $file_ktp->store('petani/ktp');
$validatedData['file_ktp'] = $file_ktp->getClientOriginalName();
}
if ($request->hasFile('file_kk')) {
$file_kk = $request->file('file_kk');
$validatedData['path_kk'] = $file_kk->store('petani/kk');
$validatedData['file_kk'] = $file_kk->getClientOriginalName();
}
if ($request->hasFile('foto')) {
$file_foto = $request->file('foto');
$validatedData['foto'] = $file_foto->store('petani/foto');
}
$petani->update([...$validatedData,
'updated_by' => auth()->id()]);
@@ -160,4 +193,33 @@ class PetaniController extends Controller
{
//
}
public function showImage(string $id, string $field)
{
if (!Gate::any(['super_admin', 'admin', 'fasilitator'])) {
abort(403);
}
$petani = Petani::findOrFail($id);
switch ($field) {
case 'ktp':
$filePath = $petani->path_ktp;
break;
case 'kk':
$filePath = $petani->path_kk;
break;
case 'foto':
$filePath = $petani->foto;
break;
default:
abort(404);
}
if (!$filePath || !\Storage::exists($filePath)) {
abort(404);
}
return Storage::disk('local')->response($filePath);
}
}
@@ -56,7 +56,7 @@ class PetaniLahanController extends Controller
$petani = Petani::findOrFail($petaniId);
$lahan = Lahan::where('petani_id', $petaniId)
->orderBy('created_at', 'desc')
->orderBy('id', 'asc')
->get();
$provinsi = Provinsi::orderBy('kode', 'asc')->get();
@@ -171,9 +171,6 @@ class PetaniLahanController extends Controller
return view('produktivitas.petani.lahan.edit', compact('lahan', 'lahanSelected', 'petani', 'komoditas', 'provinsi'));
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $petaniId, string $id)
{
if (!Gate::any(['super_admin', 'admin', 'fasilitator'])) {
+199 -107
View File
@@ -2,122 +2,196 @@
@section('content')
<div class="container-xxl flex-grow-1 container-p-y">
<div class="card">
<div class="card-header border-bottom mb-4">
<h5 class="card-title mb-0">Tambah Petani Baru</h5>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<ul class="mb-0">
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<div class="row">
<div class="card-body">
<form id="addNewPetaniForm" action="{{ route('petani.store') }}" method="POST" >
@csrf
<!-- PROFIL PETANI -->
@include('produktivitas.petani.header', ['petani' => null])
<div class="row">
<div class="col-md-12">
<div class="card mb-6">
<div class="card-body pt-12">
<!-- INFORMASI PETANI -->
<form id="addNewPetaniForm" action="{{ route('petani.store') }}" method="POST" enctype="multipart/form-data">
@csrf
<div class="row">
<div class="col-md-3">
<div class="user-avatar-section">
<div class=" d-flex align-items-center flex-column">
<img
class="img-fluid rounded mb-4"
src="../../assets/img/avatars/1.png"
height="120"
width="120"
alt="User avatar" />
<div class="user-info text-center">
<h5><i>Nama Petani</i></h5>
<span class="badge bg-label-secondary">Petani</span>
</div>
</div>
</div>
</div>
<div class="col-md-9">
<h5 class="pb-4 border-bottom mb-4">Data Pribadi</h5>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-nama">Nama Petani<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="add-petani-nama" name="nama"
placeholder="Cth: John Doe" value="{{ old('nama') }}" />
@error('nama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-ktp">NIK<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('ktp') is-invalid @enderror" id="add-petani-ktp" name="ktp"
placeholder="Cth: 1234567890" value="{{ old('ktp') }}" />
@error('ktp')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-kk">No. KK<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('kk') is-invalid @enderror" id="add-petani-kk" name="kk"
placeholder="Cth: 1234567890" value="{{ old('kk') }}" />
@error('kk')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-jenis-kelamin">Jenis Kelamin<span class="text-danger">*</span></label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="add-petani-jenis-kelamin" name="jenis_kelamin">
<option value="">Pilih Jenis Kelamin</option>
<option value="1" {{ old('jenis_kelamin') == '1' ? 'selected' : '' }}>Laki-laki</option>
<option value="0" {{ old('jenis_kelamin') == '0' ? 'selected' : '' }}>Perempuan</option>
</select>
@error('jenis_kelamin')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-tempat-lahir">Tempat Lahir<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="add-petani-tempat-lahir" name="tempat_lahir" placeholder="Cth: Ngada"
value="{{ old('tempat_lahir') }}" />
@error('tempat_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="add-petani-tanggal-lahir" name="tanggal_lahir"
value="{{ old('tanggal_lahir') }}" />
@error('tanggal_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-pendidikan-terakhir">Pendidikan Terakhir</label>
<select class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="add-petani-pendidikan-terakhir" name="pendidikan_terakhir">
<option value="">Pilih Pendidikan Terakhir</option>
@foreach($pendidikan as $value)
<option value="{{ $value['value'] }}" {{ old('pendidikan_terakhir') == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('pendidikan_terakhir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-status-pernikahan">Status Pernikahan<span class="text-danger">*</span></label>
<select class="form-control @error('status_perkawinan') is-invalid @enderror" id="add-petani-status-pernikahan" name="status_perkawinan">
<option value="">Pilih Status Pernikahan</option>
@foreach($pernikahan as $value)
<option value="{{ $value['value'] }}" {{ old('status_perkawinan') == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('status_perkawinan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<h5 class="pb-4 border-bottom mb-4 mt-4">Domisili dan Kontak</h5>
<div class="row">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="add-petani-alamat">Alamat</label>
<textarea class="form-control @error('alamat') is-invalid @enderror" id="add-petani-alamat" name="alamat"
rows="2" placeholder="Cth: Jl. Nama Jalan, Nama Dusun">{{ old('alamat') }}</textarea>
@error('alamat')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-provinsi">Provinsi</label>
<select class="form-control @error('provinsi_id') is-invalid @enderror" id="add-petani-provinsi" name="provinsi_id">
<option value="">Pilih Provinsi</option>
@foreach($provinsi as $p)
<option value="{{ $p->id }}" {{ old('provinsi_id') == $p->id ? 'selected' : '' }}>{{ $p->nama }}</option>
@endforeach
</select>
@error('provinsi_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-kabupaten">Kabupaten/Kota</label>
<select class="form-control @error('kabupaten_id') is-invalid @enderror" id="add-petani-kabupaten" name="kabupaten_id" >
<option value="">Pilih Kabupaten/Kota</option>
</select>
@error('kabupaten_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-kecamatan">Kecamatan</label>
<select class="form-control @error('kecamatan_id') is-invalid @enderror" id="add-petani-kecamatan" name="kecamatan_id" >
<option value="">Pilih Kecamatan</option>
</select>
@error('kecamatan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-desa">Desa/Kelurahan</label>
<select class="form-control @error('desa_kelurahan_id') is-invalid @enderror" id="add-petani-desa" name="desa_kelurahan_id" >
<option value="">Pilih Desa/Kelurahan</option>
</select>
@error('desa_kelurahan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-no-hp">Nomor Telepon</label>
<input type="text" class="form-control @error('nomor_telepon') is-invalid @enderror" id="add-petani-no-hp" name="nomor_telepon"
placeholder="Cth: 081234567890" value="{{ old('nomor_telepon') }}" />
@error('nomor_telepon')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<h5 class="pb-4 border-bottom mb-4 mt-4">Berkas</h5>
<div class="row">
<div class="col-md-6 mb-4 form-control-validation">
<label class="form-label" for="add-petani-no-hp">KTP</label>
<input type="file" class="form-control @error('file_ktp') is-invalid @enderror" id="add-petani-ktp-file" name="file_ktp"
accept="image/png, image/jpeg, image/jpg"/>
@error('file_ktp')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-4 form-control-validation">
<label class="form-label" for="add-petani-no-hp">KK</label>
<input type="file" class="form-control @error('file_kk') is-invalid @enderror" id="add-petani-kk-file" name="file_kk"
accept="image/png, image/jpeg, image/jpg"/>
@error('file_kk')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<ul class="mb-0">
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<h6 class="mb-3">Informasi Petani</h6>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-nama">Nama Petani<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="add-petani-nama" name="nama" placeholder="Cth: John Doe" value="{{ old('nama') }}" />
@error('nama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-jenis-kelamin">Jenis Kelamin<span class="text-danger">*</span></label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="add-petani-jenis-kelamin" name="jenis_kelamin">
<option value="">Pilih Jenis Kelamin</option>
<option value="1" {{ old('jenis_kelamin') == '1' ? 'selected' : '' }}>Laki-laki</option>
<option value="0" {{ old('jenis_kelamin') == '0' ? 'selected' : '' }}>Perempuan</option>
</select>
@error('jenis_kelamin')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-tempat-lahir">Tempat Lahir<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="add-petani-tempat-lahir" name="tempat_lahir" placeholder="Cth: Ngada" value="{{ old('tempat_lahir') }}" />
@error('tempat_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="add-petani-tanggal-lahir" name="tanggal_lahir" value="{{ old('tanggal_lahir') }}" />
@error('tanggal_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-pendidikan-terakhir">Pendidikan Terakhir</label>
<select class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="add-petani-pendidikan-terakhir" name="pendidikan_terakhir">
<option value="">Pilih Pendidikan Terakhir</option>
@foreach($pendidikan as $value)
<option value="{{ $value['value'] }}" {{ old('pendidikan_terakhir') == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('pendidikan_terakhir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-status-pernikahan">Status Pernikahan<span class="text-danger">*</span></label>
<select class="form-control @error('status_perkawinan') is-invalid @enderror" id="add-petani-status-pernikahan" name="status_perkawinan">
<option value="">Pilih Status Pernikahan</option>
@foreach($pernikahan as $value)
<option value="{{ $value['value'] }}" {{ old('status_perkawinan') == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('status_perkawinan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="add-petani-alamat">Alamat</label>
<input type="text" class="form-control @error('alamat') is-invalid @enderror" id="add-petani-alamat" name="alamat" placeholder="Cth: Alamat lengkap petani" value="{{ old('alamat') }}" />
@error('alamat')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-provinsi">Provinsi</label>
<select class="form-control @error('provinsi_id') is-invalid @enderror" id="add-petani-provinsi" name="provinsi_id">
<option value="">Pilih Provinsi</option>
@foreach($provinsi as $p)
<option value="{{ $p->id }}" {{ old('provinsi_id') == $p->id ? 'selected' : '' }}>{{ $p->nama }}</option>
@endforeach
</select>
@error('provinsi_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-kabupaten">Kabupaten/Kota</label>
<select class="form-control @error('kabupaten_id') is-invalid @enderror" id="add-petani-kabupaten" name="kabupaten_id" disabled>
<option value="">Pilih Kabupaten/Kota</option>
</select>
@error('kabupaten_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-kecamatan">Kecamatan</label>
<select class="form-control @error('kecamatan_id') is-invalid @enderror" id="add-petani-kecamatan" name="kecamatan_id" disabled>
<option value="">Pilih Kecamatan</option>
</select>
@error('kecamatan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="add-petani-desa">Desa/Kelurahan</label>
<select class="form-control @error('desa_kelurahan_id') is-invalid @enderror" id="add-petani-desa" name="desa_kelurahan_id" disabled>
<option value="">Pilih Desa/Kelurahan</option>
</select>
@error('desa_kelurahan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
<div class="mt-4 text-end">
<button type="submit" class="btn btn-success data-submit wave-effect wave-light">Simpan Profil</button>
</div>
</div>
<div class="mt-4 text-end">
<a href="{{ route('petani.index') }}" class="btn btn-label-secondary me-2">Kembali</a>
<button type="submit" class="btn btn-success data-submit">Simpan Petani</button>
</form>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
@@ -190,21 +264,39 @@
$('#addNewPetaniForm').validate({
rules: {
nama: { required: true },
ktp: { required: true, digits: true, minlength: 16, maxlength: 16 },
kk: { required: false, digits: true, minlength: 16, maxlength: 16 },
tempat_lahir: { required: true },
tanggal_lahir: { required: true, date: true },
jenis_kelamin: { required: true },
pendidikan_terakhir: { required: true },
alamat: { required: true },
provinsi_id: { required: true },
kabupaten_id: { required: true },
kecamatan_id: { required: true },
desa_kelurahan_id: { required: true },
status_perkawinan: { required: true },
file_ktp: { accept: "image/png, image/jpeg, image/jpg" },
file_kk: { accept: "image/png, image/jpeg, image/jpg" },
nomor_telepon: { required: false, digits: true, maxlength: 20 }
},
messages: {
nama: { required: "Nama petani wajib diisi" },
ktp: { required: "NIK wajib diisi", digits: "NIK harus berupa angka", minlength: "NIK harus 16 digit", maxlength: "NIK harus 16 digit" },
kk: { required: "No. KK wajib diisi", digits: "No. KK harus berupa angka", minlength: "No. KK harus 16 digit", maxlength: "No. KK harus 16 digit" },
tempat_lahir: { required: "Tempat lahir wajib diisi" },
tanggal_lahir: { required: "Tanggal lahir wajib diisi", date: "Format tanggal salah" },
jenis_kelamin: { required: "Jenis kelamin wajib diisi" },
pendidikan_terakhir: { required: "Pendidikan terakhir wajib diisi" },
alamat: { required: "Alamat wajib diisi" },
provinsi_id: { required: "Provinsi wajib diisi" },
kabupaten_id: { required: "Kabupaten/Kota wajib diisi" },
kecamatan_id: { required: "Kecamatan wajib diisi" },
desa_kelurahan_id: { required: "Desa/Kelurahan wajib diisi" },
status_perkawinan: { required: "Status perkawinan wajib diisi" },
file_ktp: { accept: "Format file tidak valid. Harap unggah file berupa gambar (PNG, JPEG, JPG)" },
file_kk: { accept: "Format file tidak valid. Harap unggah file berupa gambar (PNG, JPEG, JPG)" },
nomor_telepon: { digits: "Nomor telepon harus berupa angka", maxlength: "Nomor telepon maksimal 20 digit" }
},
errorElement: 'div',
errorPlacement: function (error, element) {
@@ -12,118 +12,206 @@
</div>
@endif
@include('produktivitas.petani.header', ['petani' => $petani])
<div class="row">
<!-- PROFIL PETANI -->
<div class="col-md-12">
@include('produktivitas.petani.header', ['petani' => $petani])
<div class="card mb-6">
<div class="card-body pt-12">
<!-- INFORMASI PETANI -->
<h5 class="pb-4 border-bottom mb-4">Data Pribadi</h5>
<form id="editPetaniForm" action="{{ route('petani.update', $petani->id) }}" method="POST" enctype="multipart/form-data">
@csrf
@method('PUT')
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-nama">Nama Petani<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="edit-petani-nama" name="nama"
placeholder="Cth: John Doe" value="{{ old('nama', $petani->nama) }}" />
@error('nama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
<div class="col-md-3">
<div class="user-avatar-section">
<div class=" d-flex align-items-center flex-column">
<img
class="img-fluid rounded mb-4"
src="../../assets/img/avatars/1.png"
height="120"
width="120"
alt="User avatar" />
<div class="user-info text-center">
<h5><i>Nama Petani</i></h5>
<span class="badge bg-label-secondary">Petani</span>
</div>
</div>
</div>
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-jenis-kelamin">Jenis Kelamin<span class="text-danger">*</span></label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="edit-petani-jenis-kelamin" name="jenis_kelamin">
<option value="">Pilih Jenis Kelamin</option>
<option value="1" {{ old('jenis_kelamin', $petani->jenis_kelamin) == '1' ? 'selected' : '' }}>Laki-laki</option>
<option value="0" {{ old('jenis_kelamin', $petani->jenis_kelamin) == '0' ? 'selected' : '' }}>Perempuan</option>
</select>
@error('jenis_kelamin')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-tempat-lahir">Tempat Lahir<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="edit-petani-tempat-lahir" name="tempat_lahir" placeholder="Cth: Ngada"
value="{{ old('tempat_lahir', $petani->tempat_lahir) }}" />
@error('tempat_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="edit-petani-tanggal-lahir" name="tanggal_lahir"
value="{{ old('tanggal_lahir', $petani->tanggal_lahir?->format('Y-m-d')) }}" />
@error('tanggal_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-pendidikan-terakhir">Pendidikan Terakhir</label>
<select class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="edit-petani-pendidikan-terakhir" name="pendidikan_terakhir">
<option value="">Pilih Pendidikan Terakhir</option>
@foreach($pendidikan as $value)
<option value="{{ $value['value'] }}" {{ old('pendidikan_terakhir', $petani->pendidikan_terakhir->value) == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('pendidikan_terakhir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-status-pernikahan">Status Pernikahan<span class="text-danger">*</span></label>
<select class="form-control @error('status_perkawinan') is-invalid @enderror" id="edit-petani-status-pernikahan" name="status_perkawinan">
<option value="">Pilih Status Pernikahan</option>
@foreach($pernikahan as $value)
<option value="{{ $value['value'] }}" {{ old('status_perkawinan', $petani->status_perkawinan->value) == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('status_perkawinan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<h5 class="pb-4 border-bottom mb-4 mt-4">Alamat</h5>
<div class="row">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-alamat">Alamat</label>
<textarea class="form-control @error('alamat') is-invalid @enderror" id="edit-petani-alamat" name="alamat"
rows="2" placeholder="Cth: Jl. Nama Jalan, Nama Dusun">{{ old('alamat', $petani->alamat) }}</textarea>
@error('alamat')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-provinsi">Provinsi</label>
<select class="form-control @error('provinsi_id') is-invalid @enderror" id="edit-petani-provinsi" name="provinsi_id">
<option value="">Pilih Provinsi</option>
@foreach($provinsi as $p)
<option value="{{ $p->id }}" {{ old('provinsi_id', $petani->desaKelurahan->kecamatan->kabupatenKota->provinsi_id) == $p->id ? 'selected' : '' }}>{{ $p->nama }}</option>
@endforeach
</select>
@error('provinsi_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-kabupaten">Kabupaten/Kota</label>
<select class="form-control @error('kabupaten_id') is-invalid @enderror" id="edit-petani-kabupaten" name="kabupaten_id" >
<option value="">Pilih Kabupaten/Kota</option>
<option value="{{ $petani->desaKelurahan->kecamatan->kabupatenKota->id }}" selected>{{ $petani->desaKelurahan->kecamatan->kabupatenKota->nama }}</option>
</select>
@error('kabupaten_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-kecamatan">Kecamatan</label>
<select class="form-control @error('kecamatan_id') is-invalid @enderror" id="edit-petani-kecamatan" name="kecamatan_id" >
<option value="">Pilih Kecamatan</option>
<option value="{{ $petani->desaKelurahan->kecamatan->id }}" selected>{{ $petani->desaKelurahan->kecamatan->nama }}</option>
</select>
@error('kecamatan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-desa">Desa/Kelurahan</label>
<select class="form-control @error('desa_kelurahan_id') is-invalid @enderror" id="edit-petani-desa" name="desa_kelurahan_id" >
<option value="">Pilih Desa/Kelurahan</option>
<option value="{{ $petani->desaKelurahan->id }}" selected>{{ $petani->desaKelurahan->nama }}</option>
</select>
@error('desa_kelurahan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
<div class="col-md-9">
<h5 class="pb-4 border-bottom mb-4">Data Pribadi</h5>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-nama">Nama Petani<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('nama') is-invalid @enderror" id="edit-petani-nama" name="nama"
placeholder="Cth: John Doe" value="{{ old('nama', $petani->nama) }}" />
@error('nama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-ktp">NIK<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('ktp') is-invalid @enderror" id="edit-petani-ktp" name="ktp"
placeholder="Cth: 1234567890" value="{{ old('ktp', $petani->ktp) }}" />
@error('ktp')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-kk">No. KK<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('kk') is-invalid @enderror" id="edit-petani-kk" name="kk"
placeholder="Cth: 1234567890" value="{{ old('kk', $petani->kk) }}" />
@error('kk')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-jenis-kelamin">Jenis Kelamin<span class="text-danger">*</span></label>
<select class="form-control @error('jenis_kelamin') is-invalid @enderror" id="edit-petani-jenis-kelamin" name="jenis_kelamin">
<option value="">Pilih Jenis Kelamin</option>
<option value="1" {{ old('jenis_kelamin', $petani->jenis_kelamin) == '1' ? 'selected' : '' }}>Laki-laki</option>
<option value="0" {{ old('jenis_kelamin', $petani->jenis_kelamin) == '0' ? 'selected' : '' }}>Perempuan</option>
</select>
@error('jenis_kelamin')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-tempat-lahir">Tempat Lahir<span class="text-danger">*</span></label>
<input type="text" class="form-control @error('tempat_lahir') is-invalid @enderror" id="edit-petani-tempat-lahir" name="tempat_lahir" placeholder="Cth: Ngada"
value="{{ old('tempat_lahir', $petani->tempat_lahir) }}" />
@error('tempat_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-tanggal-lahir">Tanggal Lahir</label>
<input type="date" class="form-control @error('tanggal_lahir') is-invalid @enderror" id="edit-petani-tanggal-lahir" name="tanggal_lahir"
value="{{ old('tanggal_lahir', $petani->tanggal_lahir?->format('Y-m-d')) }}" />
@error('tanggal_lahir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-pendidikan-terakhir">Pendidikan Terakhir</label>
<select class="form-control @error('pendidikan_terakhir') is-invalid @enderror" id="edit-petani-pendidikan-terakhir" name="pendidikan_terakhir">
<option value="">Pilih Pendidikan Terakhir</option>
@foreach($pendidikan as $value)
<option value="{{ $value['value'] }}" {{ old('pendidikan_terakhir', $petani->pendidikan_terakhir->value) == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('pendidikan_terakhir')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-status-pernikahan">Status Pernikahan<span class="text-danger">*</span></label>
<select class="form-control @error('status_perkawinan') is-invalid @enderror" id="edit-petani-status-pernikahan" name="status_perkawinan">
<option value="">Pilih Status Pernikahan</option>
@foreach($pernikahan as $value)
<option value="{{ $value['value'] }}" {{ old('status_perkawinan', $petani->status_perkawinan->value) == $value['value'] ? 'selected' : '' }}>{{ $value['label'] }}</option>
@endforeach
</select>
@error('status_perkawinan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<h5 class="pb-4 border-bottom mb-4 mt-4">Domisili dan Kontak</h5>
<div class="row">
<div class="col-md-12 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-alamat">Alamat</label>
<textarea class="form-control @error('alamat') is-invalid @enderror" id="edit-petani-alamat" name="alamat"
rows="2" placeholder="Cth: Jl. Nama Jalan, Nama Dusun">{{ old('alamat', $petani->alamat) }}</textarea>
@error('alamat')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-provinsi">Provinsi</label>
<select class="form-control @error('provinsi_id') is-invalid @enderror" id="edit-petani-provinsi" name="provinsi_id">
<option value="">Pilih Provinsi</option>
@foreach($provinsi as $p)
<option value="{{ $p->id }}" {{ old('provinsi_id', $petani->desaKelurahan->kecamatan->kabupatenKota->provinsi_id) == $p->id ? 'selected' : '' }}>{{ $p->nama }}</option>
@endforeach
</select>
@error('provinsi_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-kabupaten">Kabupaten/Kota</label>
<select class="form-control @error('kabupaten_id') is-invalid @enderror" id="edit-petani-kabupaten" name="kabupaten_id" >
<option value="">Pilih Kabupaten/Kota</option>
<option value="{{ $petani->desaKelurahan->kecamatan->kabupatenKota->id }}" selected>{{ $petani->desaKelurahan->kecamatan->kabupatenKota->nama }}</option>
</select>
@error('kabupaten_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-kecamatan">Kecamatan</label>
<select class="form-control @error('kecamatan_id') is-invalid @enderror" id="edit-petani-kecamatan" name="kecamatan_id" >
<option value="">Pilih Kecamatan</option>
<option value="{{ $petani->desaKelurahan->kecamatan->id }}" selected>{{ $petani->desaKelurahan->kecamatan->nama }}</option>
</select>
@error('kecamatan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-desa">Desa/Kelurahan</label>
<select class="form-control @error('desa_kelurahan_id') is-invalid @enderror" id="edit-petani-desa" name="desa_kelurahan_id" >
<option value="">Pilih Desa/Kelurahan</option>
<option value="{{ $petani->desaKelurahan->id }}" selected>{{ $petani->desaKelurahan->nama }}</option>
</select>
@error('desa_kelurahan_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-nomor-telepon">Nomor Telepon</label>
<input type="text" class="form-control @error('nomor_telepon') is-invalid @enderror" id="edit-petani-nomor-telepon" name="nomor_telepon"
placeholder="Cth: 081234567890" value="{{ old('nomor_telepon', $petani->nomor_telepon) }}" />
@error('nomor_telepon')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<h5 class="pb-4 border-bottom mb-4 mt-4">Berkas</h5>
<div class="row">
<div class="col-md-6 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-file-ktp">KTP</label>
<input type="file" class="form-control @error('file_ktp') is-invalid @enderror" id="edit-petani-file-ktp" name="file_ktp"
accept="image/png, image/jpeg, image/jpg"/>
@if($petani->file_ktp)
<div class="mb-2">
<img src="{{ route('petani.show-image', ['id' => $petani->id, 'field' => 'ktp']) }}"
class="img-thumbnail"
width="200">
</div>
<small class="text-muted">
File saat ini:
{{ $petani->file_ktp }}
</small>
@endif
@error('file_ktp')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-4 form-control-validation">
<label class="form-label" for="edit-petani-file-kk">KK</label>
<input type="file" class="form-control @error('file_kk') is-invalid @enderror" id="edit-petani-file-kk" name="file_kk"
accept="image/png, image/jpeg, image/jpg"/>
@if($petani->file_kk)
<div class="mb-2">
<img src="{{ route('petani.show-image', ['id' => $petani->id, 'field' => 'kk']) }}"
class="img-thumbnail"
width="200">
</div>
<small class="text-muted">
File saat ini:
{{ $petani->file_kk }}
</small>
@endif
@error('file_kk')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
</div>
</div>
<div class="mt-4 text-end">
<button id="btn-profil" type="button" class="btn btn-success data-submit wave-effect wave-light">Simpan Profil</button>
<button type="submit" class="btn btn-success data-submit wave-effect wave-light">Simpan Profil</button>
</div>
</form>
</div>
</div>
</div>
@@ -201,21 +289,40 @@
$('#editPetaniForm').validate({
rules: {
nama: { required: true },
ktp: { required: true, digits: true, minlength: 16, maxlength: 16 },
kk: { required: true, digits: true, minlength: 16, maxlength: 16 },
tempat_lahir: { required: true },
tanggal_lahir: { required: true, date: true },
jenis_kelamin: { required: true },
pendidikan_terakhir: { required: true },
alamat: { required: true },
provinsi_id: { required: true },
kabupaten_id: { required: true },
kecamatan_id: { required: true },
desa_kelurahan_id: { required: true },
status_perkawinan: { required: true },
file_ktp: { accept: "image/png, image/jpeg, image/jpg" },
file_kk: { accept: "image/png, image/jpeg, image/jpg" },
nomor_telepon: { required: false, digits: true, maxlength: 20 }
},
messages: {
nama: { required: "Nama petani wajib diisi" },
ktp: { required: "NIK wajib diisi", digits: "NIK harus berupa angka", minlength: "NIK harus 16 digit", maxlength: "NIK harus 16 digit" },
kk: { required: "No. KK wajib diisi", digits: "No. KK harus berupa angka", minlength: "No. KK harus 16 digit", maxlength: "No. KK harus 16 digit" },
tempat_lahir: { required: "Tempat lahir wajib diisi" },
tanggal_lahir: { required: "Tanggal lahir wajib diisi", date: "Format tanggal salah" },
jenis_kelamin: { required: "Jenis kelamin wajib diisi" },
pendidikan_terakhir: { required: "Pendidikan terakhir wajib diisi" },
alamat: { required: "Alamat wajib diisi" },
provinsi_id: { required: "Provinsi wajib diisi" },
kabupaten_id: { required: "Kabupaten/Kota wajib diisi" },
kecamatan_id: { required: "Kecamatan wajib diisi" },
desa_kelurahan_id: { required: "Desa/Kelurahan wajib diisi" },
status_perkawinan: { required: "Status perkawinan wajib diisi" },
file_ktp: { accept: "Format file tidak valid. Harap unggah file berupa gambar (PNG, JPEG, JPG)" },
file_kk: { accept: "Format file tidak valid. Harap unggah file berupa gambar (PNG, JPEG, JPG)" },
nomor_telepon: { digits: "Nomor telepon harus berupa angka", maxlength: "Nomor telepon maksimal 20 digit" }
},
errorElement: 'div',
errorPlacement: function (error, element) {
@@ -1,58 +1,143 @@
<div class="card mb-6">
<div class="card-body pt-12">
<div class="row">
<div class="col-md-3">
<div class="user-avatar-section">
<div class=" d-flex align-items-center flex-column">
<img
class="img-fluid rounded mb-4"
src="../../assets/img/avatars/1.png"
height="120"
width="120"
alt="User avatar" />
<div class="user-info text-center">
<h5>{{ $petani->nama }}</h5>
<span class="badge bg-label-secondary">Petani</span>
</div>
<div class="row">
<div class="col-md-4">
<div class="card mb-6">
<div class="card-header">
<h5 class="card-title m-0">Profil Petani</h5>
</div>
<div class="card-body">
<div class="d-flex justify-content-start align-items-center mb-6">
<div class="avatar me-3">
<img src="../../assets/img/avatars/1.png" alt="Avatar" class="rounded-circle" />
</div>
<div class="d-flex flex-column">
<h6 class="mb-0">{{ $petani ? $petani->nama : 'Tambah Petani Baru' }}</h6>
<span>{{ $petani ? ($petani->jenis_kelamin == 1 ? 'Laki-laki' : 'Perempuan') : 'Jenis Kelamin' }}</span>
<span>Komoditas: {{ $petani ? $petani->komoditas?->nama : 'Komoditas' }}</span>
</div>
</div>
<div class="d-flex justify-content-around flex-wrap my-6 gap-0 gap-md-2 gap-lg-3">
<div class="d-flex align-items-center me-5 gap-4">
<div class="avatar">
<div class="avatar-initial bg-label-primary rounded">
<i class="icon-base ti tabler-checkbox icon-lg"></i>
<h6 class="mb-1">Domisili</h6>
<p class=" mb-1">Alamat: {{ $petani ? $petani->alamat : 'Alamat' }}</p>
<p class=" mb-0">{{ $petani ? $petani->desaKelurahan->nama : 'Desa/Kelurahan' }}, {{ $petani ? $petani->desaKelurahan->kecamatan->nama : 'Kecamatan' }}, {{ $petani ? $petani->desaKelurahan->kecamatan->kabupatenKota->nama : 'Kabupaten/Kota' }}, {{ $petani ? $petani->desaKelurahan->kecamatan->kabupatenKota->provinsi->nama : 'Provinsi' }}</p>
</div>
</div>
</div>
<div class="col-md-8">
<div class="card mb-2">
<div class="card-widget-separator-wrapper">
<div class="card-body card-widget-separator">
<div class="row gy-4 gy-sm-1">
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
<div>
<h5 class="mb-0">1.23k</h5>
<span>Task Done</span>
</div>
</div>
<div class="d-flex align-items-center gap-4">
<div class="avatar">
<div class="avatar-initial bg-label-primary rounded">
<i class="icon-base ti tabler-briefcase icon-lg"></i>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
<div>
<h5 class="mb-0">568</h5>
<span>Project Done</span>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
</div>
</div>
</div>
<div class="col-md-9">
<h5 class="pb-4 border-bottom mb-4">Profil Petani</h5>
<div class="info-container">
<ul class="list-unstyled mb-6">
<li class="mb-2"><span class="h6">Nama: </span><span>{{ $petani->nama }}</span></li>
<li class="mb-2"><span class="h6">Jenis Kelamin: </span><span>{{ $petani->jenis_kelamin == 1 ? 'Laki-laki' : 'Perempuan' }}</span></li>
<li class="mb-2"><span class="h6">Alamat: </span><span>{{ $petani->alamat }},
{{ $petani->desaKelurahan?->nama }},
{{ $petani->desaKelurahan?->kecamatan->nama }},
{{ $petani->desaKelurahan?->kecamatan->kabupatenKota->nama }},
{{ $petani->desaKelurahan?->kecamatan->kabupatenKota->provinsi->nama }}</span></li>
</ul>
</div>
<div class="card mb-6">
<div class="card-widget-separator-wrapper">
<div class="card-body card-widget-separator">
<div class="row gy-4 gy-sm-1">
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-start card-widget-1 border-end pb-4 pb-sm-0">
<div>
<p class="mb-1">In-store Sales</p>
<h4 class="mb-1">$5,345.43</h4>
<p class="mb-0">
<span class="me-2">5k orders</span><span class="badge bg-label-success">+5.7%</span>
</p>
</div>
<span class="avatar me-sm-6">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-smart-home icon-28px text-heading"></i>
</span>
</span>
</div>
<hr class="d-none d-sm-block d-lg-none me-6" />
</div>
</div>
</div>
</div>
</div>
@@ -60,6 +145,40 @@
</div>
<div class="nav-align-top">
@if(!$petani)
<ul class="nav nav-pills flex-column flex-md-row mb-6 row-gap-2">
<li class="nav-item">
<a class="nav-link active" href="{{ route('petani.create') }}">
<i class="icon-base ti tabler-user-check me-1_5 icon-sm"></i>Profil
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" disabled tooltip="Lahan & Tanaman, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-trees me-1_5 icon-sm"></i>Lahan & Tanaman
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" disabled tooltip="Praktik Budidaya, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-seedling me-1_5 icon-sm"></i>Praktik Budidaya
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" disabled tooltip="Pendidikan & Pelatihan, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-books me-1_5 icon-sm"></i>Pendidikan & Pelatihan
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" disabled tooltip="Sosial Ekonomi, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-social me-1_5 icon-sm"></i>Sosial Ekonomi
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" disabled tooltip="Akses Pasar, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-building-store me-1_5 icon-sm"></i>Akses Pasar
</a>
</li>
</ul>
@else
<ul class="nav nav-pills flex-column flex-md-row mb-6 row-gap-2">
<li class="nav-item">
<a class="nav-link {{ request()->routeIs('petani.edit') ? 'active' : '' }}" href="{{ route('petani.edit', $petani->id) }}">
@@ -68,22 +187,22 @@
</li>
<li class="nav-item">
<a class="nav-link {{ request()->routeIs('petani.lahan-tanaman.*') ? 'active' : '' }}" href="{{ route('petani.lahan-tanaman.index', $petani->id) }}">
<i class="icon-base ti tabler-user-check me-1_5 icon-sm"></i>Lahan & Tanaman
<i class="icon-base ti tabler-trees me-1_5 icon-sm"></i>Lahan & Tanaman
</a>
</li>
<li class="nav-item">
<a class="nav-link {{ request()->routeIs('petani.praktik-budidaya.*') ? 'active' : '' }}" href="{{ route('petani.praktik-budidaya.index', $petani->id) }}">
<i class="icon-base ti tabler-user-check me-1_5 icon-sm"></i>Praktik Budidaya
<i class="icon-base ti tabler-seedling me-1_5 icon-sm"></i>Praktik Budidaya
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ route('petani.edit', $petani->id) }}">
<i class="icon-base ti tabler-user-check me-1_5 icon-sm"></i>Pendidikan & Pelatihan
<i class="icon-base ti tabler-books me-1_5 icon-sm"></i>Pendidikan & Pelatihan
</a>
</li>
<li class="nav-item">
<a class="nav-link {{ request()->routeIs('petani.sosial-ekonomi.*') ? 'active' : '' }}" href="{{ route('petani.sosial-ekonomi.index', $petani->id) }}">
<i class="icon-base ti tabler-user-check me-1_5 icon-sm"></i>Sosial Ekonomi
<i class="icon-base ti tabler-social me-1_5 icon-sm"></i>Sosial Ekonomi
</a>
</li>
<li class="nav-item">
@@ -92,4 +211,5 @@
</a>
</li>
</ul>
@endif
</div>
@@ -37,57 +37,41 @@
<div class="card mb-6">
<div class="card-body pt-12">
<div class="row">
<div class="col-12 col-lg-2 col-md-3">
<div class="d-flex justify-content-between flex-column mb-4 mb-md-0">
<ul class="nav nav-align-left nav-pills flex-column">
@foreach($lahan as $item)
<li class="nav-item mb-1">
<a class="nav-link" href="{{ route('petani.lahan-tanaman.edit', ['petani' => $petani->id, 'lahan_tanaman' => $item->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-building-store icon-sm me-1_5"></i>{{ $item->nama }}
</span>
</a>
</li>
@endforeach
<li class="nav-item mb-1">
<a class="nav-link active" href="{{ route('petani.lahan-tanaman.create', ['petani' => $petani->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-plus icon-sm me-1_5"></i>Tambah Lahan
</span>
</a>
</li>
</ul>
</div>
</div>
@include('produktivitas.petani.lahan.sidebar', ['petani' => $petani, 'lahan' => $lahan])
<div class="col-12 col-lg-10 col-md-9 pt-6 pt-lg-0">
<form id="petani-lahan-tanaman" method="POST" action="{{ route('petani.lahan-tanaman.store', ['petani' => $petani->id]) }}">
<form id="petani-lahan-tanaman" method="POST" action="{{ route('petani.lahan-tanaman.store', ['petani' => $petani->id, 'lahanSelected' => null]) }}">
@csrf
<input type="hidden" name="status_kepemilikan" value="sendiri">
<div class="row">
<div class="col-lg-6 mb-4">
<div class="col-lg-12 mb-4">
<h6 class="mb-3">Data Lahan dan Tanaman</h6>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Luas Lahan (m2) <span class="text-danger">*</span></label>
<input type="number" step="0.01" id="luas_lahan" name="luas_lahan" class="form-control @error('luas_lahan') is-invalid @enderror" placeholder="Contoh: 1.5" required />
@error('luas_lahan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Umur Lahan (tahun)</label>
<input type="number" name="umur_lahan" class="form-control @error('umur_lahan') is-invalid @enderror" placeholder="Contoh: 1" />
@error('umur_lahan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Jumlah Tanaman <span class="text-danger">*</span></label>
<input type="number" name="jumlah_tanaman" class="form-control @error('jumlah_tanaman') is-invalid @enderror" placeholder="Contoh: 1" required />
@error('jumlah_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Umur Tanaman (rata-rata)</label>
<input type="number" name="umur_tanaman" class="form-control @error('umur_tanaman') is-invalid @enderror" placeholder="Contoh: 1" />
@error('umur_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Komoditas Utama <span class="text-danger">*</span></label>
<select id="komoditas_id" name="komoditas_id" class="form-select @error('komoditas_id') is-invalid @enderror">
<option value="">Pilih Komoditas</option>
@@ -97,30 +81,20 @@
</select>
@error('komoditas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Jenis Komoditas Utama <span class="text-danger">*</span></label>
<select id="jenis_komoditas_id" name="jenis_komoditas_id" class="form-select @error('jenis_komoditas_id') is-invalid @enderror" disabled>
</select>
@error('jenis_komoditas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Varietas Umum <span class="text-danger">*</span></label>
<select id="varietas_id" name="varietas_id" class="form-select @error('varietas_id') is-invalid @enderror" disabled></select>
@error('varietas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<label class="form-label">Umur Tanaman (rata-rata)</label>
<input type="number" name="umur_tanaman" class="form-control @error('umur_tanaman') is-invalid @enderror" placeholder="Contoh: 1" />
@error('umur_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Kondisi Umum Tanaman</label>
<select id="kondisi_tanaman" name="kondisi_tanaman" class="form-select @error('kondisi_tanaman') is-invalid @enderror">
<option value="">Pilih Kondisi Tanaman</option>
@@ -130,7 +104,7 @@
</select>
@error('kondisi_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Serangan Hama</label>
<select id="serangan_hama" name="serangan_hama" class="form-select @error('serangan_hama') is-invalid @enderror">
<option value="">Pilih Serangan Hama</option>
@@ -138,10 +112,9 @@
<option value="{{ \App\Enums\SeranganHama::BELALANG }}" {{ old('serangan_hama') == \App\Enums\SeranganHama::BELALANG ? 'selected' : '' }}>Belalang</option>
<option value="{{ \App\Enums\SeranganHama::KUTU }}" {{ old('serangan_hama') == \App\Enums\SeranganHama::KUTU ? 'selected' : '' }}>Kutu</option>
</select>
@error('serangan_hama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Serangan Penyakit</label>
<select id="penyakit_tanaman" name="penyakit_tanaman" class="form-select @error('penyakit_tanaman') is-invalid @enderror">
<option value="">Pilih Penyakit</option>
@@ -151,7 +124,7 @@
<option value="{{ \App\Enums\PenyakitTanaman::TANAMAN_LAYU }}" {{ old('penyakit_tanaman') == \App\Enums\PenyakitTanaman::TANAMAN_LAYU ? 'selected' : '' }}>Tanaman Layu</option>
</select>
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Keparahan Serangan Hama/Penyakit</label>
<select id="keparahan_serangan" name="keparahan_serangan" class="form-select @error('keparahan_serangan') is-invalid @enderror">
<option value="">Pilih Keparahan Serangan</option>
@@ -162,8 +135,11 @@
@error('keparahan_serangan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
</div>
<hr class="my-4">
</div>
<div class="row mt-4">
<div class="col-lg-6 mb-4">
<h6 class="mb-3">Lokasi</h6>
<div class="row">
@@ -215,7 +191,6 @@
</div>
</div>
</div>
<div class="col-lg-6 mb-4">
<div class="d-flex justify-content-between align-items-center mb-3">
<h6 class="mb-0">Peta Lahan</h6>
@@ -228,7 +203,7 @@
<div class="row mt-3">
<div class="col-12 text-end">
<button type="reset" class="btn btn-label-secondary me-2">Reset</button>
<button type="submit" class="btn btn-primary"><i class="ti tabler-device-floppy me-2"></i> Simpan Data</button>
<button type="submit" class="btn btn-success"><i class="ti tabler-device-floppy me-2"></i> Simpan Lahan</button>
</div>
</div>
</div>
@@ -37,29 +37,7 @@
<div class="card mb-6">
<div class="card-body pt-12">
<div class="row">
<div class="col-12 col-lg-2 col-md-3">
<div class="d-flex justify-content-between flex-column mb-4 mb-md-0">
<ul class="nav nav-align-left nav-pills flex-column">
@foreach($lahan as $item)
<li class="nav-item mb-1">
<a class="nav-link {{ $item->id == $lahanSelected->id ? 'active' : '' }}" href="{{ route('petani.lahan-tanaman.edit', ['petani' => $petani->id, 'lahan_tanaman' => $item->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-building-store icon-sm me-1_5"></i>{{ $item->nama }}
</span>
</a>
</li>
@endforeach
<li class="nav-item mb-1">
<a class="nav-link aive" href="{{ route('petani.lahan-tanaman.create', ['petani' => $petani->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-plus icon-sm me-1_5"></i>Tambah Lahan
</span>
</a>
</li>
</ul>
</div>
</div>
@include('produktivitas.petani.lahan.sidebar', ['petani' => $petani, 'lahan' => $lahan, 'lahanSelected' => $lahanSelected])
<div class="col-12 col-lg-10 col-md-9 pt-6 pt-lg-0">
<form id="petani-lahan-tanaman" method="POST" action="{{ route('petani.lahan-tanaman.update', ['petani' => $petani->id, 'lahan_tanaman' => $lahanSelected->id]) }}">
@@ -67,19 +45,37 @@
@method('PUT')
<input type="hidden" name="status_kepemilikan" value="sendiri">
<div class="row">
<div class="col-lg-6 mb-4">
<div class="col-lg-12 mb-4">
<h6 class="mb-3">Data Lahan dan Komoditas</h6>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Luas Lahan (m2) <span class="text-danger">*</span></label>
<input type="number" step="0.01" id="luas_lahan" name="luas_lahan" class="form-control @error('luas_lahan') is-invalid @enderror" placeholder="Contoh: 1.5" required
value="{{ old('luas_lahan', $lahanSelected->luas_lahan) }}" />
@error('luas_lahan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Umur Lahan (tahun)</label>
<input type="number" name="umur_lahan" class="form-control @error('umur_lahan') is-invalid @enderror" placeholder="Contoh: 1"
value="{{ old('umur_lahan', $lahanSelected->umur_lahan) }}" />
@error('umur_lahan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Jumlah Tanaman <span class="text-danger">*</span></label>
<input type="number" name="jumlah_tanaman" class="form-control @error('jumlah_tanaman') is-invalid @enderror" placeholder="Contoh: 1" required
value="{{ old('jumlah_tanaman', $lahanSelected->jumlah_tanaman) }}" />
@error('jumlah_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Umur Tanaman (rata-rata)</label>
<input type="number" name="umur_tanaman" class="form-control @error('umur_tanaman') is-invalid @enderror" placeholder="Contoh: 1"
value="{{ old('umur_tanaman', $lahanSelected->umur_tanaman) }}" />
@error('umur_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Komoditas Utama <span class="text-danger">*</span></label>
<select id="komoditas_id" name="komoditas_id" class="form-select @error('komoditas_id') is-invalid @enderror">
<option value="">Pilih Komoditas</option>
@@ -89,7 +85,7 @@
</select>
@error('komoditas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Jenis Komoditas Utama <span class="text-danger">*</span></label>
<select id="jenis_komoditas_id" name="jenis_komoditas_id" class="form-select @error('jenis_komoditas_id') is-invalid @enderror" disabled>
@if(old('jenis_komoditas_id', $lahanSelected->jenis_komoditas_id))
@@ -98,9 +94,7 @@
</select>
@error('jenis_komoditas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<div class="row">
<div class="col-md-6 mb-3 form-control-validation">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Varietas Umum <span class="text-danger">*</span></label>
<select id="varietas_id" name="varietas_id" class="form-select @error('varietas_id') is-invalid @enderror" disabled>
@if(old('varietas_id', $lahanSelected->varietas_id))
@@ -109,15 +103,55 @@
</select>
@error('varietas_id')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-6 mb-3 form-control-validation">
<label class="form-label">Jumlah Tanaman <span class="text-danger">*</span></label>
<input type="number" name="jumlah_tanaman" class="form-control @error('jumlah_tanaman') is-invalid @enderror" placeholder="Contoh: 1" ]
value="{{ old('jumlah_tanaman', $lahanSelected->jumlah_tanaman) }}" required />
@error('jumlah_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="row">
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Kondisi Umum Tanaman</label>
<select id="kondisi_tanaman" name="kondisi_tanaman" class="form-select @error('kondisi_tanaman') is-invalid @enderror">
<option value="">Pilih Kondisi Tanaman</option>
<option value="{{ \App\Enums\KondisiTanaman::BAIK }}" {{ old('kondisi_tanaman', $lahanSelected->kondisi_tanaman) == \App\Enums\KondisiTanaman::BAIK ? 'selected' : '' }}>Baik</option>
<option value="{{ \App\Enums\KondisiTanaman::SEDANG }}" {{ old('kondisi_tanaman', $lahanSelected->kondisi_tanaman) == \App\Enums\KondisiTanaman::SEDANG ? 'selected' : '' }}>Sedang</option>
<option value="{{ \App\Enums\KondisiTanaman::BURUK }}" {{ old('kondisi_tanaman', $lahanSelected->kondisi_tanaman) == \App\Enums\KondisiTanaman::BURUK ? 'selected' : '' }}>Buruk</option>
</select>
@error('kondisi_tanaman')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Serangan Hama</label>
<select id="serangan_hama" name="serangan_hama" class="form-select @error('serangan_hama') is-invalid @enderror">
<option value="">Pilih Serangan Hama</option>
<option value="{{ \App\Enums\SeranganHama::ULAT }}" {{ old('serangan_hama', $lahanSelected->serangan_hama) == \App\Enums\SeranganHama::ULAT ? 'selected' : '' }}>Ulat</option>
<option value="{{ \App\Enums\SeranganHama::BELALANG }}" {{ old('serangan_hama', $lahanSelected->serangan_hama) == \App\Enums\SeranganHama::BELALANG ? 'selected' : '' }}>Belalang</option>
<option value="{{ \App\Enums\SeranganHama::KUTU }}" {{ old('serangan_hama', $lahanSelected->serangan_hama) == \App\Enums\SeranganHama::KUTU ? 'selected' : '' }}>Kutu</option>
</select>
@error('serangan_hama')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Serangan Penyakit</label>
<select id="penyakit_tanaman" name="penyakit_tanaman" class="form-select @error('penyakit_tanaman') is-invalid @enderror">
<option value="">Pilih Penyakit</option>
<option value="{{ \App\Enums\PenyakitTanaman::BUSUK_BUAH }}" {{ old('penyakit_tanaman', $lahanSelected->penyakit_tanaman) == \App\Enums\PenyakitTanaman::BUSUK_BUAH ? 'selected' : '' }}>Busuk Buah</option>
<option value="{{ \App\Enums\PenyakitTanaman::DAUN_MENGUNING }}" {{ old('penyakit_tanaman', $lahanSelected->penyakit_tanaman) == \App\Enums\PenyakitTanaman::DAUN_MENGUNING ? 'selected' : '' }}>Daun Menguning</option>
<option value="{{ \App\Enums\PenyakitTanaman::DAUN_BERCAK }}" {{ old('penyakit_tanaman', $lahanSelected->penyakit_tanaman) == \App\Enums\PenyakitTanaman::DAUN_BERCAK ? 'selected' : '' }}>Daun Bercak</option>
<option value="{{ \App\Enums\PenyakitTanaman::TANAMAN_LAYU }}" {{ old('penyakit_tanaman', $lahanSelected->penyakit_tanaman) == \App\Enums\PenyakitTanaman::TANAMAN_LAYU ? 'selected' : '' }}>Tanaman Layu</option>
</select>
</div>
<div class="col-md-3 mb-3 form-control-validation">
<label class="form-label">Keparahan Serangan Hama/Penyakit</label>
<select id="keparahan_serangan" name="keparahan_serangan" class="form-select @error('keparahan_serangan') is-invalid @enderror">
<option value="">Pilih Keparahan Serangan</option>
<option value="{{ \App\Enums\KeparahanSerangan::RINGAN }}" {{ old('keparahan_serangan', $lahanSelected->keparahan_serangan) == \App\Enums\KeparahanSerangan::RINGAN ? 'selected' : '' }}>Ringan</option>
<option value="{{ \App\Enums\KeparahanSerangan::SEDANG }}" {{ old('keparahan_serangan', $lahanSelected->keparahan_serangan) == \App\Enums\KeparahanSerangan::SEDANG ? 'selected' : '' }}>Sedang</option>
<option value="{{ \App\Enums\KeparahanSerangan::BERAT }}" {{ old('keparahan_serangan', $lahanSelected->keparahan_serangan) == \App\Enums\KeparahanSerangan::BERAT ? 'selected' : '' }}>Berat</option>
</select>
@error('keparahan_serangan')<div class="error invalid-feedback">{{ $message }}</div>@enderror
</div>
</div>
<hr class="my-4">
</div>
</div>
<div class="row mt-4">
<div class="col-lg-6 mb-4">
<h6 class="mb-3">Lokasi</h6>
<div class="row">
@@ -170,7 +204,6 @@
</div>
</div>
</div>
<div class="col-lg-6 mb-4">
<div class="d-flex justify-content-between align-items-center mb-3">
<h6 class="mb-0">Peta Lahan</h6>
@@ -22,31 +22,7 @@
<div class="card mb-6">
<div class="card-body pt-12">
<div class="col-12 col-lg-2 col-md-3">
<div class="d-flex justify-content-between flex-column mb-4 mb-md-0">
<ul class="nav nav-align-left nav-pills flex-column">
@foreach($lahan as $item)
<li class="nav-item mb-1">
<a class="nav-link {{ $loop->first ? 'active' : '' }}" href="{{ route('petani.lahan-tanaman.edit', ['petani' => $petani->id, 'lahan_tanaman' => $item->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-building-store icon-sm me-1_5"></i>{{ $item->nama }}
</span>
</a>
</li>
@endforeach
<li class="nav-item mb-1">
<a class="nav-link" href="{{ route('petani.lahan-tanaman.create', ['petani' => $petani->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-plus icon-sm me-1_5"></i>Tambah Lahan
</span>
</a>
</li>
</ul>
</div>
</div>
@if($lahan->count() > 0)
@endif
@include('produktivitas.petani.lahan.sidebar', ['petani' => $petani, 'lahan' => $lahan])
</div>
</div>
</div>
@@ -0,0 +1,23 @@
<div class="col-12 col-lg-2 col-md-3">
<div class="d-flex justify-content-between flex-column mb-4 mb-md-0">
<ul class="nav nav-align-left nav-pills flex-column">
@foreach($lahan as $item)
<li class="nav-item mb-1">
<a class="nav-link {{ isset($lahanSelected) && $lahanSelected?->id == $item->id ? 'active' : '' }}"
href="{{ route('petani.lahan-tanaman.edit', ['petani' => $petani->id, 'lahan_tanaman' => $item->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-trees icon-sm me-1_5"></i>{{ $item->nama }}
</span>
</a>
</li>
@endforeach
<li class="nav-item mb-1">
<a class="nav-link {{ isset($lahanSelected) ? '' : 'active' }}" href="{{ route('petani.lahan-tanaman.create', ['petani' => $petani->id]) }}">
<span class="align-middle">
<i class="icon-base ti tabler-plus icon-sm me-1_5"></i>Tambah Lahan
</span>
</a>
</li>
</ul>
</div>
</div>
+1
View File
@@ -188,6 +188,7 @@ Route::middleware('auth')
// Petani
Route::resource('petani', App\Http\Controllers\Web\Produktivitas\PetaniController::class);
Route::get('petani/show-image/{id}/{field}', [App\Http\Controllers\Web\Produktivitas\PetaniController::class, 'showImage'])->name('petani.show-image');
Route::resource('sosial-ekonomi', App\Http\Controllers\Web\Produktivitas\SosialEkonomiController::class)->except(['create', 'edit']);
Route::get('petani/{petani}/akses-pasar', [App\Http\Controllers\Web\Produktivitas\AksesPasarController::class, 'editByPetani'])->name('petani.akses-pasar.edit');
Route::resource('akses-pasar', App\Http\Controllers\Web\Produktivitas\AksesPasarController::class)->except(['create', 'edit']);