Mengubah Tujuan Penilaian KJPP sebelumnya diambil dari tabel penawaran.tujuan_penilaian_kjpp_id menjadi tabel tujuan_penilaian_kjpp.name di proses_penawaran
This commit is contained in:
@@ -46,7 +46,7 @@ class ProsesPenawaranController extends Controller
|
|||||||
$query->where(function ($q) use ($search) {
|
$query->where(function ($q) use ($search) {
|
||||||
$q->where('nomor_registrasi', 'LIKE', '%' . $search . '%');
|
$q->where('nomor_registrasi', 'LIKE', '%' . $search . '%');
|
||||||
$q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%');
|
$q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%');
|
||||||
|
$q->orWhereRelation('tujuanPenilaianKJPP', 'name', 'LIKE', '%' . $search . '%');
|
||||||
$q->orWhere('status', 'LIKE', '%' . $search . '%');
|
$q->orWhere('status', 'LIKE', '%' . $search . '%');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -75,7 +75,7 @@ class ProsesPenawaranController extends Controller
|
|||||||
|
|
||||||
// Get the data for the current page
|
// Get the data for the current page
|
||||||
//$data = $query->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->get();
|
//$data = $query->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->get();
|
||||||
$data = $query->get();
|
$data = $query->with(['tujuanPenilaianKJPP'])->get();
|
||||||
|
|
||||||
// Calculate the page count
|
// Calculate the page count
|
||||||
$pageCount = ceil($totalRecords / $request->get('size'));
|
$pageCount = ceil($totalRecords / $request->get('size'));
|
||||||
@@ -117,11 +117,9 @@ class ProsesPenawaranController extends Controller
|
|||||||
$data['status'] = 'success';
|
$data['status'] = 'success';
|
||||||
if ($penawaran) {
|
if ($penawaran) {
|
||||||
$i = 0;
|
$i = 0;
|
||||||
foreach($penawrandetails as $obj)
|
foreach ($penawrandetails as $obj) {
|
||||||
{
|
|
||||||
// dd($obj->dokumen_persetujuan);
|
// dd($obj->dokumen_persetujuan);
|
||||||
if($obj->dokumen_persetujuan && Storage::disk('public')->exists($obj->dokumen_persetujuan))
|
if ($obj->dokumen_persetujuan && Storage::disk('public')->exists($obj->dokumen_persetujuan)) {
|
||||||
{
|
|
||||||
$penawrandetails_path = Storage::url($obj->dokumen_persetujuan);
|
$penawrandetails_path = Storage::url($obj->dokumen_persetujuan);
|
||||||
$penawrandetails[$i]->dokumen_persetujuan = $penawrandetails_path;
|
$penawrandetails[$i]->dokumen_persetujuan = $penawrandetails_path;
|
||||||
$i++;
|
$i++;
|
||||||
@@ -161,22 +159,19 @@ class ProsesPenawaranController extends Controller
|
|||||||
if ($validator['fails']) {
|
if ($validator['fails']) {
|
||||||
$data['message'] = $validator['errors'];
|
$data['message'] = $validator['errors'];
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
$dataku = ['updated_by' => Auth::id(),
|
$dataku = [
|
||||||
|
'updated_by' => Auth::id(),
|
||||||
'updated_at' => now(),
|
'updated_at' => now(),
|
||||||
'biaya_penawaran' => str_replace(".", "", $request->biaya_penawaran)
|
'biaya_penawaran' => str_replace(".", "", $request->biaya_penawaran)
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($request->hasFile('dokumen_persetujuan'))
|
if ($request->hasFile('dokumen_persetujuan')) {
|
||||||
{
|
|
||||||
$file_tmp = $request->file('dokumen_persetujuan');
|
$file_tmp = $request->file('dokumen_persetujuan');
|
||||||
$folderPath = 'uploads/penawaran/';
|
$folderPath = 'uploads/penawaran/';
|
||||||
if ($file_tmp->isValid())
|
if ($file_tmp->isValid()) {
|
||||||
{
|
|
||||||
$myFile = $file_tmp->getClientOriginalName(); // nama file with extension
|
$myFile = $file_tmp->getClientOriginalName(); // nama file with extension
|
||||||
$file_name = pathinfo($myFile, PATHINFO_FILENAME); // nama file without extension
|
$file_name = pathinfo($myFile, PATHINFO_FILENAME); // nama file without extension
|
||||||
|
|
||||||
@@ -195,26 +190,20 @@ class ProsesPenawaranController extends Controller
|
|||||||
$data['status'] = 'success';
|
$data['status'] = 'success';
|
||||||
$data['detailpenawaran_id'] = $id;
|
$data['detailpenawaran_id'] = $id;
|
||||||
$data['message'] = 'Proses Penawarn KJPP successfully';
|
$data['message'] = 'Proses Penawarn KJPP successfully';
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
$data['message'] = 'Silahkan upload file pdf';
|
$data['message'] = 'Silahkan upload file pdf';
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
$data['message'] = 'Silahkan upload file';
|
$data['message'] = 'Silahkan upload file';
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
$data['message'] = 'Proses Penawarn KJPP failed.';
|
$data['message'] = 'Proses Penawarn KJPP failed.';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
$data['message'] = 'no ajax request';
|
$data['message'] = 'no ajax request';
|
||||||
@@ -258,20 +247,20 @@ class ProsesPenawaranController extends Controller
|
|||||||
$checkActiveDateRange = $this->checkActiveDateRangePenawaran($model->start_date, $model->end_date);
|
$checkActiveDateRange = $this->checkActiveDateRangePenawaran($model->start_date, $model->end_date);
|
||||||
|
|
||||||
// cek masa aktif penawaran
|
// cek masa aktif penawaran
|
||||||
if($checkActiveDateRange)
|
if ($checkActiveDateRange) {
|
||||||
{
|
|
||||||
|
|
||||||
$checkKelengkapanDetailKJPP = $this->checkKelengkapanDetailKJPP($id);
|
$checkKelengkapanDetailKJPP = $this->checkKelengkapanDetailKJPP($id);
|
||||||
if($checkKelengkapanDetailKJPP)
|
if ($checkKelengkapanDetailKJPP) {
|
||||||
{
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
try {
|
try {
|
||||||
$dataku = ['status' => 'tendered',
|
$dataku = [
|
||||||
|
'status' => 'tendered',
|
||||||
'updated_by' => Auth::id(),
|
'updated_by' => Auth::id(),
|
||||||
'updated_at' => now()
|
'updated_at' => now()
|
||||||
];
|
];
|
||||||
|
|
||||||
$dataPermohonan = ['status' => 'tendered',
|
$dataPermohonan = [
|
||||||
|
'status' => 'tendered',
|
||||||
'updated_by' => Auth::id(),
|
'updated_by' => Auth::id(),
|
||||||
'updated_at' => now()
|
'updated_at' => now()
|
||||||
];
|
];
|
||||||
@@ -285,24 +274,17 @@ class ProsesPenawaranController extends Controller
|
|||||||
|
|
||||||
$data['message'] = "Sukses melakukan Proses Penawaran";
|
$data['message'] = "Sukses melakukan Proses Penawaran";
|
||||||
$data['status'] = 'success';
|
$data['status'] = 'success';
|
||||||
|
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
DB::rollBack();
|
DB::rollBack();
|
||||||
// dd($e);
|
// dd($e);
|
||||||
$data['message'] = "Gagal melakukan Proses Penawaran";
|
$data['message'] = "Gagal melakukan Proses Penawaran";
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$data['message'] = "Silahkan lengkapi data KJPP";
|
$data['message'] = "Silahkan lengkapi data KJPP";
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$data['message'] = "Penawaran sudah di tutup";
|
$data['message'] = "Penawaran sudah di tutup";
|
||||||
$data['status'] = 'error';
|
$data['status'] = 'error';
|
||||||
}
|
}
|
||||||
@@ -317,27 +299,20 @@ class ProsesPenawaranController extends Controller
|
|||||||
$todays_date = strtotime(now());
|
$todays_date = strtotime(now());
|
||||||
|
|
||||||
$allow = true;
|
$allow = true;
|
||||||
if ($todays_date >= $start_date && $todays_date <= $end_date)
|
if ($todays_date >= $start_date && $todays_date <= $end_date) {
|
||||||
{
|
|
||||||
//Penawaran dibuka
|
//Penawaran dibuka
|
||||||
$allow = true;
|
$allow = true;
|
||||||
}
|
} else {
|
||||||
else
|
if ($todays_date < $start_date) {
|
||||||
{
|
|
||||||
if($todays_date < $start_date)
|
|
||||||
{
|
|
||||||
//Penawaran Belum dibuka
|
//Penawaran Belum dibuka
|
||||||
$allow = true;
|
$allow = true;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
//Penawaran sudah ditutup
|
//Penawaran sudah ditutup
|
||||||
$allow = false;
|
$allow = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $allow;
|
return $allow;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function checkKelengkapanDetailKJPP($id)
|
public function checkKelengkapanDetailKJPP($id)
|
||||||
@@ -360,13 +335,11 @@ class ProsesPenawaranController extends Controller
|
|||||||
// $sql = DB::getQueryLog();
|
// $sql = DB::getQueryLog();
|
||||||
|
|
||||||
|
|
||||||
if (sizeof($query)>0)
|
if (sizeof($query) > 0) {
|
||||||
{
|
|
||||||
$allow = false;
|
$allow = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $allow;
|
return $allow;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function updateStatusPenawaranKJPP(Request $request, $id): JsonResponse
|
public function updateStatusPenawaranKJPP(Request $request, $id): JsonResponse
|
||||||
@@ -379,7 +352,8 @@ class ProsesPenawaranController extends Controller
|
|||||||
$model = PenawaranDetailTender::findOrFail($id);
|
$model = PenawaranDetailTender::findOrFail($id);
|
||||||
$data['id'] = $id;
|
$data['id'] = $id;
|
||||||
|
|
||||||
$dataku = ['status' => '0',
|
$dataku = [
|
||||||
|
'status' => '0',
|
||||||
'updated_by' => Auth::id(),
|
'updated_by' => Auth::id(),
|
||||||
'updated_at' => now()
|
'updated_at' => now()
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace Modules\Lpj\Models;
|
namespace Modules\Lpj\Models;
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Modules\Lpj\Models\TujuanPenilaianKJPP;
|
||||||
use Modules\Lpj\Models\PenawaranDetailTender;
|
use Modules\Lpj\Models\PenawaranDetailTender;
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
use Illuminate\Database\Eloquent\Relations\HasMany; // andy add
|
use Illuminate\Database\Eloquent\Relations\HasMany; // andy add
|
||||||
@@ -29,4 +30,10 @@ class PenawaranTender extends Model
|
|||||||
{
|
{
|
||||||
return $this->hasMany(PenawaranDetailTender::class, 'penawaran_id');
|
return $this->hasMany(PenawaranDetailTender::class, 'penawaran_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// menambahkan relasi tujuan penilaian KJPP
|
||||||
|
public function tujuanPenilaianKJPP()
|
||||||
|
{
|
||||||
|
return $this->hasMany(TujuanPenilaianKJPP::class, 'id', 'tujuan_penilaian_kjpp_id');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,9 @@
|
|||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="grid">
|
<div class="grid">
|
||||||
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5" data-datatable-state-save="false" id="prosespenawaran-table" data-api-url="{{ route('tender.prosespenawaran.datatables') }}">
|
<div class="card card-grid min-w-full" data-datatable="false" data-datatable-page-size="5"
|
||||||
|
data-datatable-state-save="false" id="prosespenawaran-table"
|
||||||
|
data-api-url="{{ route('tender.prosespenawaran.datatables') }}">
|
||||||
<div class="card-header py-5 flex-wrap">
|
<div class="card-header py-5 flex-wrap">
|
||||||
<h3 class="card-title">
|
<h3 class="card-title">
|
||||||
Daftar Proses Penawaran
|
Daftar Proses Penawaran
|
||||||
@@ -25,7 +27,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="scrollable-x-auto">
|
<div class="scrollable-x-auto">
|
||||||
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm" data-datatable-table="true">
|
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm"
|
||||||
|
data-datatable-table="true">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="w-14">
|
<th class="w-14">
|
||||||
@@ -44,7 +47,7 @@
|
|||||||
<span class="sort-icon"> </span> </span>
|
<span class="sort-icon"> </span> </span>
|
||||||
</th>
|
</th>
|
||||||
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_kjpp_id">
|
<th class="min-w-[150px]" data-datatable-column="tujuan_penilaian_kjpp_id">
|
||||||
<span class="sort"> <span class="sort-label"> Tujuan Penilaian </span>
|
<span class="sort"> <span class="sort-label"> Tujuan Penilaian KJPP </span>
|
||||||
<span class="sort-icon"> </span> </span>
|
<span class="sort-icon"> </span> </span>
|
||||||
</th>
|
</th>
|
||||||
<th class="min-w-[150px]" data-datatable-column="penawarandetails_count">
|
<th class="min-w-[150px]" data-datatable-column="penawarandetails_count">
|
||||||
@@ -60,7 +63,8 @@
|
|||||||
</thead>
|
</thead>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
<div
|
||||||
|
class="card-footer justify-center md:justify-between flex-col md:flex-row gap-3 text-gray-600 text-2sm font-medium">
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
Show
|
Show
|
||||||
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per page
|
<select class="select select-sm w-16" data-datatable-size="true" name="perpage"> </select> per page
|
||||||
@@ -78,8 +82,7 @@
|
|||||||
|
|
||||||
@push('scripts')
|
@push('scripts')
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
function showPenawaranData(regId)
|
function showPenawaranData(regId) {
|
||||||
{
|
|
||||||
var url = "{{ url('tender/prosespenawaran') }}/" + regId;
|
var url = "{{ url('tender/prosespenawaran') }}/" + regId;
|
||||||
$(location).attr('href', url);
|
$(location).attr('href', url);
|
||||||
}
|
}
|
||||||
@@ -112,8 +115,11 @@
|
|||||||
start_date: {
|
start_date: {
|
||||||
title: 'Tanggal Penawaran',
|
title: 'Tanggal Penawaran',
|
||||||
},
|
},
|
||||||
tujuan_penilaian_kjpp_id: {
|
tujuan_penilaian_k_j_p_p: {
|
||||||
title: 'Tujuan Penilaian',
|
title: 'Tujuan Penilaian KJPP',
|
||||||
|
render: (item, data) => {
|
||||||
|
return data.tujuan_penilaian_k_j_p_p[0].name
|
||||||
|
}
|
||||||
},
|
},
|
||||||
penawarandetails_count: {
|
penawarandetails_count: {
|
||||||
title: 'Total KJPP',
|
title: 'Total KJPP',
|
||||||
@@ -147,7 +153,5 @@
|
|||||||
dataTable.search(searchValue, true);
|
dataTable.search(searchValue, true);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@endpush
|
@endpush
|
||||||
|
|||||||
Reference in New Issue
Block a user