Merged in feature/nisha/laporan-wtd (pull request #383)
laporan_rumusan_wtd
This commit is contained in:
@@ -5,8 +5,10 @@ namespace App\Http\Controllers;
|
||||
use App\WTDDraft;
|
||||
use App\TuntutBaki;
|
||||
use App\Cawangan;
|
||||
use App\Customer;
|
||||
use Illuminate\Http\Request;
|
||||
use Carbon\Carbon;
|
||||
use App\Helper;
|
||||
|
||||
use Illuminate\Support\Facades\Http;
|
||||
|
||||
@@ -34,4 +36,89 @@ class WTDController extends Controller
|
||||
|
||||
return response()->json($tuntutbaki);
|
||||
}
|
||||
|
||||
public function getSummaryWtd(Request $request){
|
||||
|
||||
$startDate = $request->startDate ?? now()->startOfMonth()->toDateString();
|
||||
$endDate = $request->endDate ?? now()->endOfMonth()->toDateString();
|
||||
|
||||
$active_dbs = Helper::getActiveCawanganDbConnection();
|
||||
|
||||
$cawangan = Cawangan::select('kodcaw', 'details_caw', 'mysql')
|
||||
->whereIn('mysql', $active_dbs)
|
||||
->get();
|
||||
|
||||
$responses = [];
|
||||
|
||||
foreach ($cawangan as $caw) {
|
||||
|
||||
$db = $caw->mysql;
|
||||
|
||||
$tuntutbaki = TuntutBaki::on($db)
|
||||
->join('serahbaki', 'serahbaki.t_jual', '=', 'tuntutbaki.tarikh')
|
||||
->join('gadai', 'gadai.norujukan', '=', 'tuntutbaki.norujukan')
|
||||
->whereBetween('tuntutbaki.tarikh', [$startDate, $endDate])
|
||||
->where('tuntutbaki.teller', 'DM')
|
||||
->where('serahbaki.aktif', 1)
|
||||
->selectRaw("
|
||||
gadai.nokp as nokp,
|
||||
tuntutbaki.norujukan as norujukan,
|
||||
tuntutbaki.jumlah as jumlah,
|
||||
serahbaki.batchno as batchno,
|
||||
serahbaki.t_jual as t_jual,
|
||||
serahbaki.t_htr_ag as t_htr_ag
|
||||
")
|
||||
->orderByRaw('CAST(serahbaki.batchno AS UNSIGNED)')
|
||||
->orderBy('tuntutbaki.norujukan')
|
||||
->get();
|
||||
|
||||
$nokps = $tuntutbaki
|
||||
->pluck('nokp')
|
||||
->filter() // elak null
|
||||
//->unique()
|
||||
->values();
|
||||
|
||||
$customers = Customer::on('mysql7')
|
||||
->whereIn('kplama', $nokps)
|
||||
->orWhereIn('kpbaru', $nokps)
|
||||
->get()
|
||||
->keyBy(function ($item) {
|
||||
return $item->kpbaru ?: $item->kplama;
|
||||
});
|
||||
|
||||
$wtd_det = [];
|
||||
|
||||
foreach ($tuntutbaki as $tuntut) {
|
||||
|
||||
$nokp = $tuntut->nokp;
|
||||
$cust = $customers->get($nokp);
|
||||
|
||||
$wtd_det[] = [
|
||||
"norujukan" => $tuntut->norujukan,
|
||||
"nokp" => $nokp,
|
||||
"jumlah" => (float) $tuntut->jumlah,
|
||||
"batchno" => $tuntut->batchno,
|
||||
"t_proses" => $tuntut->t_jual,
|
||||
"t_htr_ag" => $tuntut->t_htr_ag,
|
||||
"nama_cust" => $cust->nama ?? null,
|
||||
];
|
||||
}
|
||||
|
||||
$details = collect($wtd_det)
|
||||
->values()
|
||||
->all();
|
||||
|
||||
$responses[] = [
|
||||
'kodcaw' => $caw->kodcaw,
|
||||
'details_caw' => $caw->details_caw,
|
||||
// WEB
|
||||
'jumlah_surat' => count($details),
|
||||
'sum_baki' => collect($details)->sum('jumlah'),
|
||||
// EXCEL
|
||||
'details' => $details,
|
||||
];
|
||||
}
|
||||
return response()->json($responses);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -896,11 +896,11 @@ $router->group(['prefix'=>'admin'], function () use ($router){
|
||||
$router->get('wtd/rekodSimulasi',['uses'=>'AdminPageController@RekodSimulasiWTD']);
|
||||
$router->post('wtd/prosesSimulasi',['uses'=>'AdminPageController@ProsesSimulasiWTD']);
|
||||
$router->post('wtd/pengesahanSimulasi',['uses'=>'AdminPageController@PengesahanSimulasiWTD']);
|
||||
|
||||
$router->post('wtd/simulasiToDraft',['uses'=>'AdminPageController@SimulasiToDraft']);
|
||||
|
||||
$router->post('wtd/simulasiBaru',['uses'=>'AdminPageController@SimulasiBaru']);
|
||||
|
||||
//laporan wtd
|
||||
$router->get('wtd/summaryWtd', ['uses' => 'WTDController@getSummaryWtd']);
|
||||
|
||||
$router->get('audit/keuntungansebenar',['uses'=>'AdminPageController@KeuntunganSebenarExport']);
|
||||
$router->get('laporan/aging',['uses'=>'AdminPageController@LaporanAging']);
|
||||
|
||||
Reference in New Issue
Block a user