Fix Laporan Rincian Subrogasi per Posisi Akhir Bulan

This commit is contained in:
daengdeni 2024-04-03 10:17:33 +07:00
parent 2fbc3e3d10
commit 05e74252a9
3 changed files with 70 additions and 50 deletions

View File

@ -5,6 +5,7 @@
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Number;
use Modules\Writeoff\Entities\Branch; use Modules\Writeoff\Entities\Branch;
use Modules\Writeoff\Entities\DetailSubrogasiJamkrindo; use Modules\Writeoff\Entities\DetailSubrogasiJamkrindo;
use Modules\Writeoff\Entities\KlaimJamkrindo; use Modules\Writeoff\Entities\KlaimJamkrindo;
@ -42,9 +43,8 @@
public function laporan_subrogasi(Builder $builder, Request $request) public function laporan_subrogasi(Builder $builder, Request $request)
{ {
if ($request->jenis_laporan == 'C1') { if (request()->ajax()) {
if (request()->get('jenis_laporan') == 'C1') {
if (request()->ajax()) {
$klaimJamkrindo = KlaimJamkrindo::whereBetween('tanggal_rtgs_masuk', [ $klaimJamkrindo = KlaimJamkrindo::whereBetween('tanggal_rtgs_masuk', [
request()->get('start_date'), request()->get('start_date'),
request()->get('end_date') request()->get('end_date')
@ -55,7 +55,53 @@
$status = $row->is_detail_debitur ? '<span class="badge badge-light-success">Ada</span>' : '<span class="badge badge-light-danger">Tidak Ada</span>'; $status = $row->is_detail_debitur ? '<span class="badge badge-light-success">Ada</span>' : '<span class="badge badge-light-danger">Tidak Ada</span>';
return $status; return $status;
})->rawColumns(['is_detail_debitur'])->addIndexColumn()->toJson(); })->rawColumns(['is_detail_debitur'])->addIndexColumn()->toJson();
} else if (request()->get('jenis_laporan') == 'C2') {
if (request()->get('kode_cabang') == 'all') {
$data = DetailSubrogasiJamkrindo::with([
'subrogasi_jamkrindo',
'subrogasi_jamkrindo.branch',
'subrogasi_jamkrindo.debitur'
])
->selectRaw('nomor_pinjaman, SUM(pembayaran_debitur) AS pembayaran_debitur, SUM(subrogasi_jamkrindo) AS nilai_subrogasi_jamkrindo, SUM(pendapatan_bank) AS pendapatan_bank')
->whereMonth('tanggal_pembayaran', request()->get('bulan'))
->whereYear('tanggal_pembayaran', request()->get('tahun'))
->groupBy('nomor_pinjaman')
->get();
} else {
$data = DetailSubrogasiJamkrindo::query()->with([
'subrogasi_jamkrindo',
'subrogasi_jamkrindo.branch',
'subrogasi_jamkrindo.debitur'
])
->selectRaw('nomor_pinjaman, SUM(pembayaran_debitur) AS pembayaran_debitur, SUM(subrogasi_jamkrindo) AS nilai_subrogasi_jamkrindo , SUM(pendapatan_bank) AS pendapatan_bank')
->whereRelation('subrogasi_jamkrindo', 'kode_cabang', request()->get('kode_cabang'))
->whereMonth('tanggal_pembayaran', request()->get('bulan'))
->whereYear('tanggal_pembayaran', request()->get('tahun'))
->groupBy('nomor_pinjaman')
->get();
}
return DataTables::of($data)->editColumn('branch', function ($row) {
$data = json_decode($row);
return $data->subrogasi_jamkrindo->branch->kode.' - '.$data->subrogasi_jamkrindo->branch->name;
})->editColumn('debitur', function ($row) {
$data = json_decode($row);
return $data->subrogasi_jamkrindo->debitur->kode.' - '.$data->subrogasi_jamkrindo->debitur->name;
})->editColumn('pembayaran_debitur', function($row){
return Number::currency($row->pembayaran_debitur, 'IDR', 'id_ID');
})->editColumn('nilai_subrogasi_jamkrindo', function($row){
return Number::currency($row->nilai_subrogasi_jamkrindo, 'IDR', 'id_ID');
})->editColumn('pendapatan_bank', function($row){
return Number::currency($row->pendapatan_bank, 'IDR', 'id_ID');
})->rawColumns(['action'])->addIndexColumn()->toJson();
} }
}
if ($request->jenis_laporan == 'C1') {
$breadcrumb = [
'title' => 'Laporan Pencatatan Klaim Jamkrindo',
'link' => 'laporan.subrogasi'
];
$dataTable = $builder->columns([ $dataTable = $builder->columns([
Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false),
@ -75,58 +121,34 @@
]) ])
->addTableClass('align-middle table-row-dashed fs-6 gy-5') ->addTableClass('align-middle table-row-dashed fs-6 gy-5')
->setTableId('laporan-table') ->setTableId('laporan-table')
->minifiedAjax(request()->url(), null, $request->all()) ->minifiedAjax(request()->url(), null,['jenis_laporan' => $request->jenis_laporan,'start_date' => $request->start_date, 'end_date' => $request->end_date])
->stateSave(false) ->stateSave(false)
->responsive() ->responsive()
->autoWidth(true) ->autoWidth(true)
->orderBy(1); ->orderBy(1);
return view('writeoff::report.laporan_klaim_jamkrindo', compact('dataTable'));
} else if ($request->jenis_laporan == 'C2') { } else if ($request->jenis_laporan == 'C2') {
$start_date = request()->get('start_date'); $breadcrumb = [
'title' => 'Rincian Subrogasi per Posisi Akhir Bulan',
'link' => 'laporan.subrogasi'
];
$start_date = request()->get('periode');
$month = date('m', strtotime($start_date)); $month = date('m', strtotime($start_date));
$year = date('Y', strtotime($start_date)); $year = date('Y', strtotime($start_date));
if (request()->ajax()) { $req = ['jenis_laporan' => $request->jenis_laporan, 'kode_cabang' => request()->get('kode_cabang'), 'bulan' => $month, 'tahun' => $year];
if (request()->get('kode_cabang') == 'all') { //NO Debitur Cabang Nomor Pinjaman Norek Tabungan Pembayaran Debitur Subrogasi Jamkrindo Pendapatan Bank Keterangan Subrogasi
$data = DetailSubrogasiJamkrindo::with([
'subrogasi_jamkrindo',
'subrogasi_jamkrindo.branch',
'subrogasi_jamkrindo.debitur'
])
->selectRaw('nomor_pinjaman, SUM(pembayaran_debitur) AS pembayaran_debitur, SUM(subrogasi_jamkrindo) AS subrogasi_jamkrindo, SUM(pendapatan_bank) AS pendapatan_bank')
->whereMonth('tanggal_pembayaran', request()->get('bulan'))
->whereYear('tanggal_pembayaran', request()->get('tahun'))
->groupBy('nomor_pinjaman')
->get();
} else {
$data = DetailSubrogasiJamkrindo::with([
'subrogasi_jamkrindo',
'subrogasi_jamkrindo.branch',
'subrogasi_jamkrindo.debitur'
])
->selectRaw('nomor_pinjaman, SUM(pembayaran_debitur) AS pembayaran_debitur, SUM(subrogasi_jamkrindo) AS subrogasi_jamkrindo, SUM(pendapatan_bank) AS pendapatan_bank')
->whereRelation('subrogasi_jamkrindo', 'kode_cabang', request()->get('kode_cabang'))
->whereMonth('tanggal_pembayaran', request()->get('bulan'))
->whereYear('tanggal_pembayaran', request()->get('tahun'))
->groupBy('nomor_pinjaman')
->get();
}
echo json_encode($data);exit;
return DataTables::of($data)->editColumn('branch', function ($q) {
return $q->subrogasi_jamkrindo->branch->name;
})->addIndexColumn()->toJson();
}
$start_date = request()->get('start_date');
$month = date('m', strtotime($start_date));
$year = date('Y', strtotime($start_date));
$req = ['kode_cabang' => request()->get('kode_cabang'), 'bulan' => $month, 'tahun' => $year];
$dataTable = $builder->columns([ $dataTable = $builder->columns([
Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false),
Column::make('debitur')->title('Debitur'),
Column::make('branch')->title('Cabang'), Column::make('branch')->title('Cabang'),
Column::make('nomor_pinjaman')->title('Nomor Pinjaman'),
Column::make('subrogasi_jamkrindo.nomor_rekening')->title('Norek Tabungan'),
Column::make('pembayaran_debitur')->title('Pembayaran Debitur'),
Column::make('nilai_subrogasi_jamkrindo')->title('Subrogasi Jamkrindo'),
Column::make('pendapatan_bank')->title('Pendapatan Bank'),
Column::make('subrogasi_jamkrindo.keterangan')->title('Keterangan Subrogasi')
]) ])
->parameters([ ->parameters([
'scrollX' => false, 'scrollX' => false,
@ -138,10 +160,9 @@
->stateSave(false) ->stateSave(false)
->responsive() ->responsive()
->autoWidth(true) ->autoWidth(true)
->orderBy(1); ->orderBy(0);
return view('writeoff::report.laporan_klaim_jamkrindo', compact('dataTable'));
} }
return view('writeoff::report.laporan_klaim_jamkrindo', compact('dataTable', 'breadcrumb'));
} }
} }

View File

@ -1,7 +1,6 @@
<x-default-layout> <x-default-layout>
@section('title') @section('title')
Laporan Pencatatan Klaim Jamkrindo {{ $breadcrumb['title'] }}
@endsection @endsection
@section('breadcrumbs') @section('breadcrumbs')

View File

@ -84,7 +84,7 @@
<label class="required fw-semibold fs-6 mb-2">Periode</label> <label class="required fw-semibold fs-6 mb-2">Periode</label>
<!--end::Label--> <!--end::Label-->
<!--begin::Input--> <!--begin::Input-->
<input type="month" name="start_date" class="form-control form-control-solid mb-3 mb-lg-0" placeholder="Tanggal Awal"/> <input type="month" name="periode" class="form-control form-control-solid mb-3 mb-lg-0" placeholder="Tanggal Awal"/>
<!--end::Input--> <!--end::Input-->
@error('debitur') @error('debitur')
<span class="text-danger">{{ $message }}</span> @enderror <span class="text-danger">{{ $message }}</span> @enderror