2024-12-05 16:59:28 +08:00
< ? php
namespace App\Controllers ;
class PrinterController extends BaseController {
// Data ZPL untuk mencetak label
// $startSection = "^XA\n^PW400\n^LL224\n";
// $nameSection = "^FO10,2\n^A0N,23,23\n^FD MRS. I PUTU AYU PUTRI PERTIWI ^FS\n";
// $yearSection = "^FO12,25\n^A0N,22,22\n^FD F 24Y ^FS\n";
// $labelBarcodeSection = "^FO85,50\n^BY2,2.0,45\n^BCN,100,N,N,N\n^FD25082257^FS\n";
// $numberCodeSection = "^FO374,43\n^A0B,25,25\n^FD 25082257 ^FS\n";
// $sampleSection = "^FO19,45\n^A0B,27,27\n^FD $sample ^FS\n";
// $parameterSection = "^FO10,165\n^A0N,23,23\n^FD PSA, HDL, LDL, BUN, SGOT ^FS\n";
// $lisNumSection = "^FO10,195\n^A0N,17,20\n^FD LIS 4112082257 ^FS\n";
// $hisNumSection = "^FO10,210\n^A0N,20,20\n^FD HIS 01241101855 ^FS\n";
// $numSampleSection = "^FO240,200\n^A0N,27,27\n^FD $access 115 ^FS\n";
// $endSection = "^XZ";
public function printSingleSampleBarcode ( $access , $sample ) {
$time = microtime ( true );
$logTime = date ( 'd-m-Y_H_i_s' , $time ) . sprintf ( '_%03d' , ( $time - floor ( $time )) * 1000 );
$filename = " sample_ " . $logTime ;
2024-12-05 18:58:52 +08:00
$role = session () -> get ( 'userrole' );
2024-12-05 16:59:28 +08:00
$networkPath = " " ;
2024-12-08 15:14:05 +08:00
$db = \Config\Database :: connect ();
$sql = " select p.PATNUMBER as UHID, sr.HOSTORDERNUMBER as BV, p.NAME, p.SEX, p.BIRTHDATE, st.SAMPLETYPE, ds.FULLTEXT, st.SAMPLETYPE+right(sr.SP_ACCESSNUMBER,5) as barcode
from SP_TUBES st
left join SP_REQUESTS sr on st . SP_ACCESSNUMBER = sr . SP_ACCESSNUMBER
left join PATIENTS p on p . PATID = sr . PATID
left join DICT_SAMPLES_TYPES ds on ds . SAMPCODE = st . SAMPLETYPE
where st . SP_ACCESSNUMBER = '$access' AND ds . FULLTEXT = '$sample' " ;
$query = $db -> query ( $sql );
$results = $query -> getResultArray ();
$item = $results [ 0 ];
$uhid = substr ( $item [ 'UHID' ], - 10 );
$bv = $item [ 'BV' ];
$sex = $item [ 'SEX' ] == 1 ? " M " : " F " ;
$title = $item [ 'SEX' ] == 1 ? " Mr " : " Mrs " ;
$name = $item [ 'NAME' ];
$sample = $item [ 'FULLTEXT' ];
$barcode = $item [ 'barcode' ];
2024-12-05 16:59:28 +08:00
// Ruang Analis Printer POSTEK C168/200s
2024-12-06 11:40:27 +08:00
if ( $role === 'admin' || $role === 'user' ) {
2024-12-05 16:59:28 +08:00
// Buka Mapping Drive PC Laboratorium
exec ( 'net use L: \\\\10.148.5.20\\Labelshare /user:Administrator 2>&1' , $output , $return_var );
$pathNetworkFolder = 'L:/Sampling_Labels/' ;
$letterPath = 'L:' ;
// Printer Posteck
$sampleLable = " N
OD
q400
Q200 , 10 + 0
I8 , A , 001
D10
2024-12-08 15:14:05 +08:00
A4 , 3 , 0 , 2 , 1 , 1 , N , \ " $title . $name\ "
A4 , 25 , 0 , 2 , 1 , 1 , N , \ " $sex USIA \"
A4 , 55 , 0 , 2 , 1 , 1 , N , \ " $sample\ "
2024-12-05 16:59:28 +08:00
A4 , 75 , 0 , 2 , 1 , 1 , N , \ " Chapter \"
2024-12-08 15:14:05 +08:00
B149 , 35 , 0 , 1 , 3 , 8 , 70 , N , \ " $barcode\ "
A199 , 110 , 0 , 2 , 1 , 1 , N , \ " LAB $barcode\ "
A4 , 140 , 0 , 2 , 1 , 1 , N , \ " UH : $uhid\ "
A4 , 160 , 0 , 2 , 1 , 1 , N , \ " BV : $bv\ "
A195 , 156 , 0 , 2 , 1 , 1 , N , \ " Tgl Coll \"
2024-12-05 16:59:28 +08:00
P1
" ;
// Ruang Analis Printer Zebra
2024-12-06 11:40:27 +08:00
} else if ( $role === 'sampling' ) {
2024-12-05 16:59:28 +08:00
// Buka Mapping Drive PC Sampling
exec ( 'net use S: \\\\10.148.3.169\\Labelshare /user:Administrator 2>&1' , $output , $return_var );
$pathNetworkFolder = 'S:/Sampling_Labels/' ;
$letterPath = 'S:' ;
// Printer Zebra
$sampleLable = " N
OD
q400
Q185 , 10 + 0
I8 , A , 001
D10
2024-12-08 15:14:05 +08:00
A4 , 3 , 0 , 2 , 1 , 1 , N , \ " $title . $name\ "
A4 , 25 , 0 , 2 , 1 , 1 , N , \ " $sex USIA \"
A4 , 55 , 0 , 2 , 1 , 1 , N , \ " $sample\ "
2024-12-05 16:59:28 +08:00
A4 , 75 , 0 , 2 , 1 , 1 , N , \ " Chapter \"
2024-12-08 15:14:05 +08:00
B149 , 35 , 0 , 1 , 3 , 8 , 70 , N , \ " $barcode\ "
A199 , 110 , 0 , 2 , 1 , 1 , N , \ " LAB $barcode\ "
A4 , 140 , 0 , 2 , 1 , 1 , N , \ " UH : $uhid\ "
A4 , 160 , 0 , 2 , 1 , 1 , N , \ " BV : $bv\ "
A195 , 156 , 0 , 2 , 1 , 1 , N , \ " Tgl Coll \"
2024-12-05 16:59:28 +08:00
P1
" ;
} else {
// Eksekusi Kode Berikut Apabila Role Bukan Analis atau Sampling
return $this -> response -> setJSON ([
'message' => " Akses Tidak Berwenang " ,
'error' => " Hak Akses Anda Tidak Dikenali " ,
'status' => false ,
]);
}
$fullPath = $pathNetworkFolder . $filename ;
// Tulis file ke folder tujuan
if ( ! file_put_contents ( $fullPath , $sampleLable )) {
exec ( 'net use ' . $letterPath . ' /delete 2>&1' , $output , $return_var );
// Eksekusi Kode Berikut Apabila Ada Error
return $this -> response -> setJSON ([
'error' => $output ,
'message' => " Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda " ,
'status' => false ,
]);
} else {
// Hapus Koneksi
exec ( 'net use ' . $letterPath . ' /delete 2>&1' , $output , $return_var );
return $this -> response -> setJSON (
[
'message' => " Print Berhasil " ,
'status' => true ,
]
);
}
}
2024-12-08 15:14:05 +08:00
public function printAllSampleBarcode ( $access ) {
2024-12-05 16:59:28 +08:00
$role = session () -> get ( 'userrole' );
$networkPath = " " ;
2024-12-08 15:14:05 +08:00
$db = \Config\Database :: connect ();
$sql = " select p.PATNUMBER as UHID, sr.HOSTORDERNUMBER as BV, p.NAME, p.SEX, p.BIRTHDATE, st.SAMPLETYPE, ds.FULLTEXT, st.SAMPLETYPE+right(sr.SP_ACCESSNUMBER,5) as barcode
from SP_TUBES st
left join SP_REQUESTS sr on st . SP_ACCESSNUMBER = sr . SP_ACCESSNUMBER
left join PATIENTS p on p . PATID = sr . PATID
left join DICT_SAMPLES_TYPES ds on ds . SAMPCODE = st . SAMPLETYPE
where st . SP_ACCESSNUMBER = '$access' " ;
$query = $db -> query ( $sql );
$results = $query -> getResultArray ();
2024-12-05 16:59:28 +08:00
// Ruang Analis Printer POSTEK
2024-12-06 11:40:27 +08:00
if ( $role === 'admin' || $role === 'user' ) {
2024-12-05 16:59:28 +08:00
// Buka Mapping Drive PC Laboratorium
exec ( 'net use L: \\\\10.148.5.20\\Labelshare /user:Administrator 2>&1' , $output , $return_var );
$pathNetworkFolder = 'L:/Sampling_Labels/' ;
$letterPath = 'L:' ;
2024-12-08 15:14:05 +08:00
// for ($i=0; $i<$data; $i++) {
2024-12-05 16:59:28 +08:00
2024-12-08 15:14:05 +08:00
foreach ( $results as $item ) {
2024-12-05 16:59:28 +08:00
$time = microtime ( true );
$logTime = date ( 'd-m-Y_H_i_s' , $time ) . sprintf ( '_%03d' , ( $time - floor ( $time )) * 1000 );
$filename = " sample_ " . $logTime ;
2024-12-08 15:14:05 +08:00
$uhid = substr ( $item [ 'UHID' ], - 10 );
$bv = $item [ 'BV' ];
$sex = $item [ 'SEX' ] == 1 ? " M " : " F " ;
$title = $item [ 'SEX' ] == 1 ? " Mr " : " Mrs " ;
$name = $item [ 'NAME' ];
$sample = $item [ 'FULLTEXT' ];
$barcode = $item [ 'barcode' ];
2024-12-05 16:59:28 +08:00
// Printer Posteck
$sampleLable = " N
OD
q400
Q200 , 10 + 0
I8 , A , 001
D10
2024-12-08 15:14:05 +08:00
A4 , 3 , 0 , 2 , 1 , 1 , N , \ " $title . $name\ "
A4 , 25 , 0 , 2 , 1 , 1 , N , \ " $sex USIA \"
A4 , 55 , 0 , 2 , 1 , 1 , N , \ " $sample\ "
2024-12-05 16:59:28 +08:00
A4 , 75 , 0 , 2 , 1 , 1 , N , \ " Chapter \"
2024-12-08 15:14:05 +08:00
B149 , 35 , 0 , 1 , 3 , 8 , 70 , N , \ " $barcode\ "
A199 , 110 , 0 , 2 , 1 , 1 , N , \ " LAB $barcode\ "
A4 , 140 , 0 , 2 , 1 , 1 , N , \ " UH : $uhid\ "
A4 , 160 , 0 , 2 , 1 , 1 , N , \ " BV : $bv\ "
A195 , 156 , 0 , 2 , 1 , 1 , N , \ " Tgl Coll \"
2024-12-05 16:59:28 +08:00
P1
" ;
$fullPath = $pathNetworkFolder . $filename ;
// Tulis file ke folder tujuan
if ( ! file_put_contents ( $fullPath , $sampleLable )) {
exec ( 'net use ' . $letterPath . ' /delete 2>&1' , $output , $return_var );
// Eksekusi Kode Berikut Apabila Ada Error
return $this -> response -> setJSON ([
'error' => $output ,
'message' => " Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda " ,
'status' => false ,
]);
}
}
// Ruang Analis Printer Zebra
2024-12-06 11:40:27 +08:00
} else if ( $role === 'sampling' ) {
2024-12-05 16:59:28 +08:00
// Buka Mapping Drive PC Sampling
exec ( 'net use S: \\\\10.148.3.169\\Labelshare /user:Administrator 2>&1' , $output , $return_var );
$pathNetworkFolder = 'S:/Sampling_Labels/' ;
$letterPath = 'S:' ;
2024-12-08 15:14:05 +08:00
foreach ( $results as $item ) {
2024-12-05 16:59:28 +08:00
$time = microtime ( true );
$logTime = date ( 'd-m-Y_H_i_s' , $time ) . sprintf ( '_%03d' , ( $time - floor ( $time )) * 1000 );
$filename = " sample_ " . $logTime ;
2024-12-08 15:14:05 +08:00
$uhid = substr ( $item [ 'UHID' ], - 10 );
$bv = $item [ 'BV' ];
$sex = $item [ 'SEX' ] == 1 ? " M " : " F " ;
$title = $item [ 'SEX' ] == 1 ? " Mr " : " Mrs " ;
$name = $item [ 'NAME' ];
$sample = $item [ 'FULLTEXT' ];
$barcode = $item [ 'barcode' ];
2024-12-05 16:59:28 +08:00
// Printer Zebra
$sampleLable = " N
OD
q400
Q185 , 10 + 0
I8 , A , 001
D10
2024-12-08 15:14:05 +08:00
A4 , 3 , 0 , 2 , 1 , 1 , N , \ " $title . $name\ "
A4 , 25 , 0 , 2 , 1 , 1 , N , \ " $sex USIA \"
A4 , 55 , 0 , 2 , 1 , 1 , N , \ " $sample\ "
2024-12-05 16:59:28 +08:00
A4 , 75 , 0 , 2 , 1 , 1 , N , \ " Chapter \"
2024-12-08 15:14:05 +08:00
B149 , 35 , 0 , 1 , 3 , 8 , 70 , N , \ " $barcode\ "
A199 , 110 , 0 , 2 , 1 , 1 , N , \ " LAB $barcode\ "
A4 , 140 , 0 , 2 , 1 , 1 , N , \ " UH : $uhid\ "
A4 , 160 , 0 , 2 , 1 , 1 , N , \ " BV : $bv\ "
A195 , 156 , 0 , 2 , 1 , 1 , N , \ " Tgl Coll \"
2024-12-05 16:59:28 +08:00
P1
" ;
$fullPath = $pathNetworkFolder . $filename ;
// Tulis file ke folder tujuan
if ( ! file_put_contents ( $fullPath , $sampleLable )) {
exec ( 'net use ' . $letterPath . ' /delete 2>&1' , $output , $return_var );
// Eksekusi Kode Berikut Apabila Ada Error
return $this -> response -> setJSON ([
'error' => $output ,
'message' => " Gagal Melakukan Print, Mohon Ulangi Atau Cek Koneksi Printer Anda " ,
'status' => false ,
]);
}
}
} else {
// Eksekusi Kode Berikut Apabila Role Bukan Analis atau Sampling
return $this -> response -> setJSON ([
'message' => " Akses Tidak Berwenang " ,
'error' => " Hak Akses Anda Tidak Dikenali " ,
'status' => false ,
]);
}
// Hapus Koneksi
exec ( 'net use ' . $letterPath . ' /delete 2>&1' , $output , $return_var );
return $this -> response -> setJSON (
[
'message' => " Print Berhasil " ,
'status' => true ,
]
);
}
2024-12-06 10:47:51 +08:00
2024-12-08 15:14:05 +08:00
public function otherTests ( $access ){
2024-12-06 10:47:51 +08:00
$fullPage = " " ;
$headPage = "
< div id = 'page' >
< div id = 'pagetop' style = 'height:0.01cm' > </ div >
2024-12-07 09:25:13 +07:00
< img src = '".base_url()."assets/img/padma-header.png' class = 'img' />
2024-12-06 10:47:51 +08:00
< div id = 'dinfo' >
< table class = 'information t_center' >
< tr >
< th class = 'padmaColor' colspan = '6' align = 'center' > CLINICAL LABORATORY </ th >
</ tr >
< tr >
< th style = 'width:12%' align = 'left' > UHID </ th >
< td style = 'width:2%' >:</ td >
< td style = 'width:44%' > 1 BCJJAJSDK </ td >
< th style = 'width:20%' align = 'left' > Sample ID </ th >
< td style = 'width:2%' >:</ td >
< td style = 'width:20%' > LAB2420076951 </ td >
</ tr >
< tr >
< th align = 'left' > Name </ th >
< td >:</ td >
< td > Ni Luh Putu Eka Putri Saraswati </ td >
< th align = 'left' > Specimen </ th >
< td >:</ td >
< td > Serum </ td >
</ tr >
2024-12-05 16:59:28 +08:00
2024-12-06 10:47:51 +08:00
< tr >
< th align = 'left' > Age / Gender </ th >
< td >:</ td >
< td > 22 year ( s ) / Male </ td >
< th align = 'left' > Collection Date / Time </ th >
< td >:</ td >
< td > 26 - 10 - 2024 / 11 : 55 : 04 </ td >
</ tr >
< tr >
< th align = 'left' > Speciality </ th >
< td >:</ td >
< td ></ td >
< th align = 'left' > Result Date / Time </ th >
< td >:</ td >
< td > 26 - 10 - 2024 / 11 : 52 : 04 </ td >
</ tr >
</ table >
</ div >
< div id = 'dresult' >
< br >
< table class = 'result t_center' >
< tr align = 'left' >
2024-12-08 15:14:05 +08:00
< th class = 'padmaColor' style = 'width:35%' > Parameter </ th >
< th class = 'padmaColor' style = 'width:14%' > Result </ th >
< th class = 'padmaColor' style = 'width:14%' > Unit </ th >
2024-12-06 10:47:51 +08:00
< th class = 'padmaColor' style = 'width:17%' > Normal Range </ th >
2024-12-08 15:14:05 +08:00
< th class = 'padmaColor' style = 'width:20%' > Notes </ th >
2024-12-06 10:47:51 +08:00
</ tr >
" ;
$resultTest = " " ;
2024-12-08 15:14:05 +08:00
$item = end ( $access );
2024-12-06 10:47:51 +08:00
$resultNoteandSpecimen = "
< br >
< table class = 'result t_center' >
< tr >
< th align = 'left' class = 'padmaColor' > Notes </ th >
</ tr >
< tr >
< td >
2024-12-08 15:14:05 +08:00
" . $item['RESVALUE'] . "
2024-12-06 10:47:51 +08:00
</ td >
</ tr >
</ table >
< br >
< table class = 't_center table_collection' >
< tr >
2024-12-08 15:14:05 +08:00
< td >< pre > Collection datetime : - </ pre ></ td >
2024-12-06 10:47:51 +08:00
</ tr >
< tr >
2024-12-08 15:14:05 +08:00
< td >< pre > Reception datetime : - </ pre ></ td >
2024-12-06 10:47:51 +08:00
</ tr >
</ table >
" ;
$footerPage = "
< div id = 'footer' >
< table class = 'table_footer t_center' >
< tr >
< td ></ td >
< td align = 'right' >< img src = 'http://cmod.id/assets/img/ttd.png' alt = '' ></ td >
</ tr >
< tr >
< td >< u > Entered By </ u ></ td >
< td align = 'right' >< u > Verified By </ u ></ td >
</ tr >
< tr >
< td > Lab Technician </ td >
< td align = 'right' > dr . I Komang Parwata Sp . PK </ td >
</ tr >
< tr >
2024-12-06 11:40:27 +08:00
< td > Mrs . Gst Ayu Riska Mastari </ td >
2024-12-06 10:47:51 +08:00
< td align = 'right' > Reg . No : 570 / SIPDS / 0001 / I / DPMPTSP / 2023 </ td >
</ tr >
</ table >
</ div >
" ;
$lastDiv = " </div> " ;
2024-12-08 15:14:05 +08:00
$tempChapEng = " " ;
$tempChapInd = " " ;
array_pop ( $access );
2024-12-06 10:47:51 +08:00
$i = 0 ;
2024-12-08 15:14:05 +08:00
foreach ( $access as $item ) {
if ( $tempChapEng != $item [ 'chap_eng' ]) {
$tempChapEng = $item [ 'chap_eng' ];
$tempChapInd = $item [ 'chap_ind' ];
$i ++ ;
// Untuk Chapter
$resultTest .= "
< tr align = 'left' class = 'chapter' >
< td colspan = '5' >
< pre >< b > " . $tempChapEng . " </ b ></ pre >
< pre > < small >< b > " . $tempChapInd . " </ b ></ small ></ pre >
</ td >
</ tr >
" ;
}
// Melebihi batas Kertas
if ( $i % 24 == 0 ) {
$resultTest .= " </table></div> " ;
$fullPage .= $headPage . $resultTest . $footerPage . $lastDiv ;
$i = 0 ;
$resultTest = " " ;
}
$i ++ ;
2024-12-08 16:06:11 +08:00
if ( $item [ 'RESTYPE' ] == " CE " ){
$resvalue = $item [ 'RESULT' ];
} else {
$resvalue = $item [ 'RESVALUE' ];
}
2024-12-08 15:14:05 +08:00
$resultTest .= "
< tr >
< td colspan = '1' class = '' >
< pre > " . $item["test_eng"] . " </ pre >
< pre > < small > " . $item["test_ind"] . " </ small ></ pre >
</ td >
2024-12-08 16:06:11 +08:00
< td class = '' > " . $resvalue . " </ td >
2024-12-08 15:14:05 +08:00
< td class = '' > " . $item["UNIT"] . " </ td >
< td class = '' > " . $item["REFRANGE"] . " </ td >
< td class = '' > " . " " . " </ td >
</ tr >
" ;
// Melebihi batas Kertas
if ( $i % 24 == 0 ) {
$resultTest .= " </table></div> " ;
$fullPage .= $headPage . $resultTest . $footerPage . $lastDiv ;
$i = 0 ;
$resultTest = " " ;
}
2024-12-06 10:47:51 +08:00
}
2024-12-08 15:14:05 +08:00
2024-12-06 10:47:51 +08:00
$resultTest .= "
</ table >
" . $resultNoteandSpecimen . "
</ div > " ;
$fullPage .= $headPage . $resultTest . $footerPage . $lastDiv ;
return $fullPage ;
}
public function printResultTest ( $access ) {
2024-12-08 15:14:05 +08:00
$db = \Config\Database :: connect ();
2024-12-08 16:06:11 +08:00
$sql = " SELECT
dc . CHAPID ,
dc . FULLTEXT AS chap_eng ,
dc . FULLTEXT AS chap_ind ,
cr .* ,
cdt . TEXT1 AS test_eng ,
cdt . TEXT2 AS test_ind
FROM
cmod . dbo . CM_RESULTS cr
LEFT JOIN REQUESTS r
ON r . ACCESSNUMBER = cr . ACCESSNUMBER
LEFT JOIN cmod . dbo . CM_DICT_TESTS cdt
ON cr . TESTCODE = cdt . TESTCODE
LEFT JOIN DICT_TESTS dt
ON dt . TESTCODE = cr . TESTCODE AND dt . ENDVALIDDATE IS NULL
LEFT JOIN TESTS t
ON t . REQUESTID = r . REQUESTID AND t . TESTID = dt . TESTID
LEFT JOIN DICT_CHAPTERS dc
ON dc . CHAPID = dt . CHAPID AND dc . ENDVALIDDATE IS NULL
LEFT JOIN cmod . dbo . CM_DICT_CHAPTERS cdc
ON cdc . CHAPCODE = dc . CHAPCODE
WHERE
cr . ACCESSNUMBER = '$access'
ORDER BY
CASE
WHEN cr . TESTCODE = 'NOTE' THEN 1
ELSE 0
END ,
t . TESTORDER ;
" ;
2024-12-08 15:14:05 +08:00
$query = $db -> query ( $sql );
$results = $query -> getResultArray ();
$data_urine = array_filter ( $results , function ( $item ) {
$chapterid = $item [ " CHAPID " ];
// Memfilter data dengan CHAPID 3, 61, atau 62
return $chapterid == 3 || $chapterid == 61 || $chapterid == 62 ;
2024-12-06 10:47:51 +08:00
});
// Seleksi data yang mengandung "FESES"
2024-12-08 15:14:05 +08:00
$data_feces = array_filter ( $results , function ( $item ) {
$chapterid = $item [ " CHAPID " ];
// Memfilter data yang 4
return $chapterid == 4 ;
2024-12-06 10:47:51 +08:00
});
2024-12-08 15:14:05 +08:00
// Seleksi data yang tidak mengandung "urine" dan "feces"
$data_others = array_filter ( $results , function ( $item ) {
$chapterid = $item [ " CHAPID " ];
// Memfilter data yang bukan 61 atau 3
return $chapterid !== 3 && $chapterid !== 4 && $chapterid !== 61 && $chapterid !== 62 ;
2024-12-06 10:47:51 +08:00
});
$fullPage = " " ;
2024-12-08 15:14:05 +08:00
if ( $data_urine != null ) {
2024-12-06 11:40:27 +08:00
$fullPage .= $this -> otherTests ( $data_urine );
2024-12-06 10:47:51 +08:00
}
2024-12-08 15:14:05 +08:00
if ( $data_feces != null ) {
2024-12-06 11:40:27 +08:00
$fullPage .= $this -> otherTests ( $data_feces );
2024-12-06 10:47:51 +08:00
}
2024-12-08 15:14:05 +08:00
if ( $data_others != null ) {
2024-12-06 10:47:51 +08:00
$fullPage .= $this -> otherTests ( $data_others );
}
return view ( 'result_report' , [ 'data' => $fullPage ]);
}
2024-12-05 16:59:28 +08:00
}