update
This commit is contained in:
@@ -354,6 +354,7 @@ class ReportController extends Controller
|
||||
$page = $request->input('pagenum') ?? 1;
|
||||
$order = $request->input('order') ?? 'id desc';
|
||||
$filterscount = $request->input('filterscount') ?? 0;
|
||||
$isMdrReport = $jenisreport == 'list_hasil_mdr';
|
||||
if ($jenisreport == 'biorepository'){
|
||||
if ($bulan == 'ALL'){
|
||||
$queryBiorepo = DB::table('db_komponenjawaban')
|
||||
@@ -410,6 +411,16 @@ class ReportController extends Controller
|
||||
if ($statusFilter === 'Selesai') {
|
||||
$query->where('status', 'LIKE', '%Selesai%');
|
||||
}
|
||||
if ($isMdrReport) {
|
||||
$query->whereExists(function ($subquery) {
|
||||
$subquery->select(DB::raw(1))
|
||||
->from('db_komponenjawaban')
|
||||
->whereColumn('db_komponenjawaban.accnumber', 'periksa.nofoto')
|
||||
->whereIn('db_komponenjawaban.komponen', ['bakterisir', 'id_bakterisir01', 'id_bakterisir02'])
|
||||
->whereNotNull('db_komponenjawaban.isidata')
|
||||
->where('db_komponenjawaban.isidata', '!=', '');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* CURSOR → Streaming data, tidak boros memori
|
||||
@@ -443,7 +454,8 @@ class ReportController extends Controller
|
||||
->select('accnumber','komponen','isidata')
|
||||
->whereIn('accnumber', array_unique($acc))
|
||||
->whereIn('komponen', [
|
||||
'id_bakteri01','id_bakteri02','bakteri'
|
||||
'id_bakteri01','id_bakteri02','bakteri',
|
||||
'bakterisir','id_bakterisir01','id_bakterisir02'
|
||||
])
|
||||
->get()
|
||||
->groupBy('accnumber');
|
||||
@@ -467,6 +479,13 @@ class ReportController extends Controller
|
||||
$row->id_bakteri01 = optional($k->firstWhere('komponen','id_bakteri01'))->isidata;
|
||||
$row->id_bakteri02 = optional($k->firstWhere('komponen','id_bakteri02'))->isidata;
|
||||
$row->bakteri = optional($k->firstWhere('komponen','bakteri'))->isidata;
|
||||
$row->hasil_mdr = $k->whereIn('komponen', ['bakterisir', 'id_bakterisir01', 'id_bakterisir02'])
|
||||
->pluck('isidata')
|
||||
->filter(function ($value) {
|
||||
return trim(strip_tags((string) $value)) !== '';
|
||||
})
|
||||
->unique()
|
||||
->implode('; ');
|
||||
|
||||
$row->filefoto = "<a href='".url('/hasil/'.$row->nofoto)."'>$row->nofoto</a>";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user