Menyelesaikan fitur Basic Data KJPP untuk menambahkan lebih dari satu email kantor, pic reviewer, pic admin, pic marketing

This commit is contained in:
2024-11-07 15:21:31 +07:00
committed by putrakuningan
parent 669c2483f8
commit a326f4c4e5
10 changed files with 450 additions and 313 deletions

View File

@@ -229,20 +229,22 @@
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
<div id="detail_email_kantor" class="flex flex-wrap items-center w-full gap-2">
<div class="flex flex-col lg:flex-row items-center w-full">
@if (isset($kjpp->detail_email_kantor))
@foreach (json_decode($kjpp->detail_email_kantor) as $detail)
<input class="input @error('detail_email_kantor') border-danger @enderror"
type="text" name="detail_email_kantor[email_kantor][]"
value="{{ $detail->email_kantor ?? old('detail_email_kantor') }}">
@error('detail_email_kantor')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
@if (isset($kjpp->detail_email_kantor))
@foreach ($detailEmailKantor as $detail_email_kantor)
<div class="flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full">
<div class="flex flex-wrap items-baseline w-full">
<input class="input @error('email_kantor') border-danger @enderror"
type="text" name="detail_email_kantor[email_kantor][]"
value="{{ $detail_email_kantor->email_kantor ?? old('detail_email_kantor.email_kantor') }}">
@error('email_kantor')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
<button type="button"
class="btn btn-danger btn-xs delete-button">Hapus</button>
@endforeach
@endif
</div>
class="btn btn-danger btn-xs delete-button-edit">Hapus</button>
</div>
@endforeach
@endif
</div>
<button type="button" id="tambah_email_kantor" class="btn btn-primary btn-xs">Tambah
Email Kantor</button>
@@ -297,37 +299,35 @@
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap">
<div id="detail_nama_pic_reviewer" class="flex flex-wrap items-baseline w-full gap-2.5">
@if (isset($kjpp->detail_nama_pic_reviewer))
@foreach (json_decode($kjpp->detail_nama_pic_reviewer) as $detail)
@if (isset($kjpp->detail_nama_pic_reviewer) && isset($kjpp->detail_nomor_hp_pic_reviewer))
@foreach (json_decode($detailJoinPicReviewer) as $detail_pic_reviewer)
<div class="flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full">
<label class="form-label max-w-56">
Nama PIC Reviewer
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('detail_nama_pic_reviewer') border-danger @enderror"
<input class="input @error('nama_pic_reviewer') border-danger @enderror"
type="text" name="detail_nama_pic_reviewer[nama_pic_reviewer][]"
value="{{ $detail->detail_nama_pic_reviewer ?? old('detail_nama_pic_reviewer') }}">
@error('detail_nama_pic_reviewer')
value="{{ $detail_pic_reviewer->nama_pic_reviewer ?? old('detail_nama_pic_reviewer.nama_pic_reviewer') }}">
@error('nama_pic_reviewer')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@foreach (json_decode($kjpp->detail_nomor_hp_pic_reviewer) as $detail)
<label class="form-label max-w-56">
Nomor HP PIC Reviewer
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('detail_nomor_hp_pic_reviewer') border-danger @enderror"
type="text"
name="detail_nomor_hp_pic_reviewer[nomor_hp_pic_reviewer][]"
value="{{ $detail->nomor_hp_pic_reviewer ?? old('detail_nomor_hp_pic_reviewer') }}">
@error('detail_nomor_hp_pic_reviewer')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@endforeach
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
<label class="form-label max-w-56">
Nomor HP PIC Reviewer
</label>
<div class="flex flex-wrap items-baseline w-full">
<input class="input @error('nomor_hp_pic_reviewer') border-danger @enderror"
type="text"
name="detail_nomor_hp_pic_reviewer[nomor_hp_pic_reviewer][]"
value="{{ $detail_pic_reviewer->nomor_hp_pic_reviewer ?? old('detail_nomor_hp_pic_reviewer.nomor_hp_pic_reviewer') }}">
@error('nomor_hp_pic_reviewer')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
<button type="button" class="btn btn-danger btn-xs delete-button-edit">
Hapus
</button>
</div>
@endforeach
@endif
@@ -367,35 +367,34 @@
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap">
<div id="detail_nama_pic_admin" class="flex flex-wrap items-baseline w-full gap-2.5">
@if (isset($kjpp->detail_nama_pic_admin))
@foreach (json_decode($kjpp->detail_nama_pic_admin) as $detail)
@if (isset($kjpp->detail_nama_pic_admin) && isset($kjpp->detail_nomor_hp_pic_admin))
@foreach (json_decode($detailJoinPicAdmin) as $detail_pic_admin)
<div class="flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full">
<label class="form-label max-w-56">
Nama PIC Admin
</label>
<div class="flex flex-wrap items-baseline w-full">
<input class="input @error('detail_nama_pic_admin') border-danger @enderror"
<input class="input @error('nama_pic_admin') border-danger @enderror"
type="text" name="detail_nama_pic_admin[nama_pic_admin][]"
value="{{ $detail->detail_nama_pic_admin ?? old('detail_nama_pic_admin') }}">
@error('detail_nama_pic_admin')
value="{{ $detail_pic_admin->nama_pic_admin ?? old('detail_nama_pic_admin.nama_pic_admin') }}">
@error('nama_pic_admin')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@foreach (json_decode($kjpp->detail_nomor_hp_pic_admin) as $detail)
<label class="form-label max-w-56">
Nomor HP PIC Admin
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('detail_nomor_hp_pic_admin') border-danger @enderror"
type="text" name="detail_nomor_hp_pic_admin[nomor_hp_pic_admin][]"
value="{{ $detail->nomor_hp_pic_admin ?? old('detail_nomor_hp_pic_admin') }}">
@error('detail_nomor_hp_pic_admin')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@endforeach
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
<label class="form-label max-w-56">
Nomor HP PIC Admin
</label>
<div class="flex flex-wrap items-baseline w-full">
<input class="input @error('nomor_hp_pic_admin') border-danger @enderror"
type="text" name="detail_nomor_hp_pic_admin[nomor_hp_pic_admin][]"
value="{{ $detail_pic_admin->nomor_hp_pic_admin ?? old('detail_nomor_hp_pic_admin.nomor_hp_pic_admin') }}">
@error('nomor_hp_pic_admin')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
<button type="button" class="btn btn-danger btn-xs delete-button-edit">
Hapus
</button>
</div>
@endforeach
@endif
@@ -432,37 +431,36 @@
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap">
<div id="detail_nama_pic_marketing" class="flex flex-wrap items-baseline w-full gap-2.5">
@if (isset($kjpp->detail_nama_pic_marketing))
@foreach (json_decode($kjpp->detail_nama_pic_marketing) as $detail)
@if (isset($kjpp->detail_nama_pic_marketing) && isset($kjpp->detail_nomor_hp_pic_marketing))
@foreach (json_decode($detailJoinPicMarketing) as $detail_pic_marketing)
<div class="flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full">
<label class="form-label max-w-56">
Nama PIC Marketing
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('detail_nama_pic_marketing') border-danger @enderror"
<input class="input @error('nama_pic_marketing') border-danger @enderror"
type="text" name="detail_nama_pic_marketing[nama_pic_marketing][]"
value="{{ $detail->detail_nama_pic_marketing ?? old('detail_nama_pic_marketing') }}">
@error('detail_nama_pic_marketing')
value="{{ $detail_pic_marketing->nama_pic_marketing ?? old('detail_nama_pic_marketing.nama_pic_marketing') }}">
@error('nama_pic_marketing')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@foreach (json_decode($kjpp->detail_nomor_hp_pic_marketing) as $detail)
<label class="form-label max-w-56">
Nomor HP PIC Marketing
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('detail_nomor_hp_pic_marketing') border-danger @enderror"
type="text"
name="detail_nomor_hp_pic_marketing[nomor_hp_pic_marketing][]"
value="{{ $detail->nomor_hp_pic_marketing ?? old('detail_nomor_hp_pic_marketing') }}">
@error('detail_nomor_hp_pic_marketing')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
@endforeach
<button type="button" class="btn btn-danger btn-xs delete-button">Hapus</button>
<label class="form-label max-w-56">
Nomor HP PIC Marketing
</label>
<div class="flex flex-wrap items-baseline w-full">
<input
class="input @error('nomor_hp_pic_marketing') border-danger @enderror"
type="text"
name="detail_nomor_hp_pic_marketing[nomor_hp_pic_marketing][]"
value="{{ $detail_pic_marketing->nomor_hp_pic_marketing ?? old('detail_nomor_hp_pic_marketing.nomor_hp_pic_marketing') }}">
@error('nomor_hp_pic_marketing')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
<button type="button" class="btn btn-danger btn-xs delete-button-edit">
Hapus
</button>
</div>
@endforeach
@endif

View File

@@ -14,6 +14,19 @@
});
}
function DeleteEditListeners() {
document.querySelectorAll(".delete-button-edit").forEach(button => {
button.addEventListener("click", function() {
this.closest(
".flex.flex-col.lg\\:flex-row.gap-2.items-baseline.lg\\:items-center.w-full"
)
.remove();
});
});
}
DeleteEditListeners();
document.getElementById("tambah_email_kantor").addEventListener("click", function() {
const newDiv = document.createElement("div");
newDiv.className = "flex flex-col lg:flex-row gap-2 items-baseline lg:items-center w-full";

View File

@@ -42,9 +42,7 @@
<label class="form-label max-w-56">Nomor Ijin Usaha</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">
@foreach ($ijin_usaha as $iu)
{{ $iu->code }}
@endforeach
{{ $kjpp->nomor_ijin_usaha }}
</p>
</div>
</div>
@@ -53,22 +51,36 @@
Alamat Kantor
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->address }} , Kel.
@foreach ($villages as $village)
{{ $village->name }}
@endforeach , Kec.
@foreach ($districts as $district)
{{ $district->name }}
@endforeach ,
@foreach ($cities as $city)
{{ ucwords(strtolower($city->name)) }}
@endforeach ,
@foreach ($provinces as $province)
{{ $province->name }}
@endforeach, Kode Pos.
@foreach ($villages as $village)
{{ $village->postal_code }}
@endforeach
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->address }}
@if (isset($kjpp->village_code))
, Kel.
@foreach ($villages as $village)
{{ $village->name }}
@endforeach
@endif
@if (isset($kjpp->district_code))
, Kec.
@foreach ($districts as $district)
{{ $district->name }}
@endforeach
@endif
@if (isset($kjpp->city_code))
,@foreach ($cities as $city)
{{ ucwords(strtolower($city->name)) }}
@endforeach
@endif
@if (isset($kjpp->province_code))
,
@foreach ($provinces as $province)
{{ $province->name }}
@endforeach
@endif
@if (isset($kjpp->postal_code))
, Kode Pos.
@foreach ($villages as $village)
{{ $village->postal_code }}
@endforeach
@endif
</p>
</div>
</div>
@@ -84,6 +96,13 @@
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->email_kantor }}</p>
@if (isset($kjpp->detail_email_kantor))
@foreach (json_decode($kjpp->detail_email_kantor) as $detail_email_kantor)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_email_kantor->email_kantor }}
</p>
@endforeach
@endif
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
@@ -106,12 +125,26 @@
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nama_pic_reviewer }}</p>
@if (isset($kjpp->detail_nama_pic_reviewer))
@foreach (json_decode($kjpp->detail_nama_pic_reviewer) as $detail_nama_pic_reviewer)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nama_pic_reviewer->nama_pic_reviewer }}
</p>
@endforeach
@endif
</div>
<label class="form-label max-w-56">
Nomor HP PIC Reviewer
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nomor_hp_pic_reviewer }}</p>
@if (isset($kjpp->detail_nomor_hp_pic_reviewer))
@foreach (json_decode($kjpp->detail_nomor_hp_pic_reviewer) as $detail_nomor_hp_pic_reviewer)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nomor_hp_pic_reviewer->nomor_hp_pic_reviewer }}
</p>
@endforeach
@endif
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
@@ -120,12 +153,26 @@
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nama_pic_admin }}</p>
@if (isset($kjpp->detail_nama_pic_admin))
@foreach (json_decode($kjpp->detail_nama_pic_admin) as $detail_nama_pic_admin)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nama_pic_admin->nama_pic_admin }}
</p>
@endforeach
@endif
</div>
<label class="form-label max-w-56">
Nomor HP PIC Admin
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nomor_hp_pic_admin }}</p>
@if (isset($kjpp->detail_nomor_hp_pic_admin))
@foreach (json_decode($kjpp->detail_nomor_hp_pic_admin) as $detail_nomor_hp_pic_admin)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nomor_hp_pic_admin->nomor_hp_pic_admin }}
</p>
@endforeach
@endif
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
@@ -134,12 +181,26 @@
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nama_pic_marketing }}</p>
@if (isset($kjpp->detail_nama_pic_marketing))
@foreach (json_decode($kjpp->detail_nama_pic_marketing) as $detail_nama_pic_marketing)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nama_pic_marketing->nama_pic_marketing }}
</p>
@endforeach
@endif
</div>
<label class="form-label max-w-56">
Nomor HP PIC Marketing
</label>
<div class="flex flex-wrap items-baseline w-full">
<p class="flex w-full text-gray-600 font-medium text-sm">{{ $kjpp->nomor_hp_pic_marketing }}</p>
@if (isset($kjpp->detail_nomor_hp_pic_marketing))
@foreach (json_decode($kjpp->detail_nomor_hp_pic_marketing) as $detail_nomor_hp_pic_marketing)
<p class="flex w-full text-gray-600 font-medium text-sm">
{{ $detail_nomor_hp_pic_marketing->nomor_hp_pic_marketing }}
</p>
@endforeach
@endif
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">