Update menampilkan order yang cancelled dan juga menampilkan kembali unrichieved

This commit is contained in:
mikael-zakaria 2025-03-15 00:50:57 +08:00
parent aa31a93939
commit fd72ab2534
9 changed files with 197 additions and 147 deletions

View File

@ -20,7 +20,7 @@ class API_Dashboard extends ResourceController {
$date1 = $this->request->getPost('date1');
$date2 = $this->request->getPost('date2');
$sql = "SELECT
sr.COLLECTIONDATE, sr.SP_ACCESSNUMBER, tr.REQNUMBER as HOSTORDERNUMBER, p.PATNUMBER, concat(p.FIRSTNAMESK, ' ', p.NAME) as NAME,
sr.COLLECTIONDATE, sr.SP_ACCESSNUMBER, tr.REQNUMBER as HOSTORDERNUMBER, tr.REQSTATUS, p.PATNUMBER, concat(p.FIRSTNAMESK, ' ', p.NAME) as NAME,
TESTS=stuff(( select ', '+'('+T.SP_TESTCODE+')' from
( select T.SP_TESTCODE from SP_TESTS T
where T.SP_ACCESSNUMBER=sr.SP_ACCESSNUMBER

View File

@ -136,48 +136,57 @@ function index() {
}
tests = data[i].TESTS;
stat = data[i].STATS;
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
reqstatus = String(data[i].REQSTATUS);
trcolor = '';
if (reqstatus != '1') {
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
}
} else {
trcolor = ' table-danger-custom ';
bgcolor = ' table-danger-custom ';
datafilter = "data-filterrow='8'";
stattext = 'Cancelled';
}
let datarow = "<tr class='align-middle'" + datafilter +" >" +
let datarow = "<tr class='align-middle" + trcolor +"'" + datafilter + " >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
"<td role='button' class='"+bgcolor+" text-center align-middle pointercol' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+ ",event" +")'> <h4 class='p-0 m-0'><i class='bi bi-filetype-pdf'></i></h4> </td>" +'</tr>';
$("#table-body").append(datarow);
}
$('#myTable').DataTable({
"pageLength": 25, // Ganti sesuai kebutuhan
"lengthMenu": [25, 50, 100] // Pilihan dropdown entries per halaman
"pageLength": 50, // Ganti sesuai kebutuhan
"lengthMenu": [50, 75, 100] // Pilihan dropdown entries per halaman
});
// datatable filter

View File

@ -99,7 +99,7 @@ if(isset($data[0])) {
<button type='button' class='btn btn-dark m-0 px-2 py-1' " . "onclick='printSingleLabel($accessnumber, $sampletype, $usercityid)'" . "><h6 class='p-0 m-0'><i class='bi bi-printer'></i></h6></button>
<button type='button' class='btn btn-success m-0 px-2 py-1' onclick='collect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Coll.</h6></button>
<button type='button' class='btn btn-warning m-0 px-2 py-1' onclick='uncollect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Coll.</h6></button>
<!-- <button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button> -->
<button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button>
</td> ";
echo "<td id='comment$sampletype'>$comment <h6 class='p-0 m-0'><i class='bi bi-pencil-square' role='button' onclick='comment($sampletype, $accessnumber, \"$sampletext\", \"$comment\")'></i></h6></td>";
echo " </tr>";

View File

@ -132,48 +132,57 @@ function index() {
}
tests = data[i].TESTS;
stat = data[i].STATS;
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
reqstatus = String(data[i].REQSTATUS);
trcolor = '';
if (reqstatus != '1') {
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
}
} else {
trcolor = ' table-danger-custom ';
bgcolor = ' table-danger-custom ';
datafilter = "data-filterrow='8'";
stattext = 'Cancelled';
}
let datarow = "<tr class='align-middle'" + datafilter +" >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
let datarow = "<tr class='align-middle" + trcolor +"'" + datafilter + " >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
"<td role='button' class='"+bgcolor+" text-center align-middle pointercol' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+ ",event" +")'> <h4 class='p-0 m-0'><i class='bi bi-filetype-pdf'></i></h4> </td>" +'</tr>';
$("#table-body").append(datarow);
}
$('#myTable').DataTable({
"pageLength": 25, // Ganti sesuai kebutuhan
"lengthMenu": [25, 50, 100] // Pilihan dropdown entries per halaman
"pageLength": 50, // Ganti sesuai kebutuhan
"lengthMenu": [50, 75, 100] // Pilihan dropdown entries per halaman
});
// datatable filter

View File

@ -131,48 +131,57 @@ function index() {
}
tests = data[i].TESTS;
stat = data[i].STATS;
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
reqstatus = String(data[i].REQSTATUS);
trcolor = '';
if (reqstatus != '1') {
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
}
} else {
trcolor = ' table-danger-custom ';
bgcolor = ' table-danger-custom ';
datafilter = "data-filterrow='8'";
stattext = 'Cancelled';
}
let datarow = "<tr class='align-middle'" + datafilter +" >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
let datarow = "<tr class='align-middle" + trcolor +"'" + datafilter + " >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
"<td role='button' class='"+bgcolor+" text-center align-middle pointercol' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+ ",event" +")'> <h4 class='p-0 m-0'><i class='bi bi-filetype-pdf'></i></h4> </td>" +'</tr>';
$("#table-body").append(datarow);
}
$('#myTable').DataTable({
"pageLength": 25, // Ganti sesuai kebutuhan
"lengthMenu": [25, 50, 100] // Pilihan dropdown entries per halaman
"pageLength": 50, // Ganti sesuai kebutuhan
"lengthMenu": [50, 75, 100] // Pilihan dropdown entries per halaman
});
// datatable filter

View File

@ -99,7 +99,7 @@ if(isset($data[0])) {
<button type='button' class='btn btn-dark m-0 px-2 py-1' " . "onclick='printSingleLabel($accessnumber, $sampletype, $usercityid)'" . "><h6 class='p-0 m-0'><i class='bi bi-printer'></i></h6></button>
<button type='button' class='btn btn-success m-0 px-2 py-1' onclick='collect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Coll.</h6></button>
<button type='button' class='btn btn-warning m-0 px-2 py-1' onclick='uncollect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Coll.</h6></button>
<!-- <button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button> -->
<button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button>
</td> ";
echo "<td id='comment$sampletype'>$comment <h6 class='p-0 m-0'><i class='bi bi-pencil-square' role='button' onclick='comment($sampletype, $accessnumber, \"$sampletext\", \"$comment\")'></i></h6></td>";
echo " </tr>";

View File

@ -131,48 +131,57 @@ function index() {
}
tests = data[i].TESTS;
stat = data[i].STATS;
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
reqstatus = String(data[i].REQSTATUS);
trcolor = '';
if (reqstatus != '1') {
if(stat == 'Pend') {
bgcolor = 'bg-orange';
datafilter = "data-filterrow='0'";
stattext = 'Pending';
} else if(stat == 'PartColl') {
bgcolor = 'bg-peach';
datafilter = "data-filterrow='1'";
stattext = 'Part Collected';
} else if(stat == 'Coll') {
bgcolor = 'bg-pink';
datafilter = "data-filterrow='2'";
stattext = 'Collected';
} else if(stat == 'PartRecv') {
bgcolor = 'bg-soft-blue';
datafilter = "data-filterrow='3'";
stattext = 'Part Received';
} else if(stat == 'Recv') {
bgcolor = 'bg-blue';
datafilter = "data-filterrow='4'";
stattext = 'Received';
} else if(stat == 'Inc') {
bgcolor = 'bg-grey';
datafilter = "data-filterrow='5'";
stattext = 'Incomplete';
} else if(stat == 'PartVal') {
bgcolor = 'bg-soft-green';
datafilter = "data-filterrow='6'";
stattext = 'Part Validated';
} else if(stat == 'Comp') {
bgcolor = 'bg-green';
datafilter = "data-filterrow='7'";
stattext = 'Validated';
}
} else {
trcolor = ' table-danger-custom ';
bgcolor = ' table-danger-custom ';
datafilter = "data-filterrow='8'";
stattext = 'Cancelled';
}
let datarow = "<tr class='align-middle'" + datafilter +" >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon + "<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
let datarow = "<tr class='align-middle" + trcolor +"'" + datafilter + " >" +
"<td class='text-start'>" + colldate + '<br>'+ colltime +'</td> <td>' + patnumber + '</td> <td>' + patname.trim() + "</td> <td class='text-start' style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + accessnumber +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span>" +"</td> <td style='cursor: pointer;' ondblclick='copyToClipboard(this)'>" + testing_test + hon +"<br><span class='copy-message badge text-bg-success' style='display: none;'>Disalin</span></td> <td>" + tests + '</td>' +
"<td role='button' class='"+bgcolor+" text-center align-middle pointercol' onclick='viewAccess("+accessnumber+")'>"+stattext+"</td>" +
"<td role='button' class='text-center align-middle' onclick='resultPdfAccess("+accessnumber+ ",event" +")'> <h4 class='p-0 m-0'><i class='bi bi-filetype-pdf'></i></h4> </td>" +'</tr>';
$("#table-body").append(datarow);
}
$('#myTable').DataTable({
"pageLength": 25, // Ganti sesuai kebutuhan
"lengthMenu": [25, 50, 100] // Pilihan dropdown entries per halaman
"pageLength": 50, // Ganti sesuai kebutuhan
"lengthMenu": [50, 75, 100] // Pilihan dropdown entries per halaman
});
// datatable filter

View File

@ -99,7 +99,7 @@ if(isset($data[0])) {
<button type='button' class='btn btn-dark m-0 px-2 py-1' " . "onclick='printSingleLabel($accessnumber, $sampletype, $usercityid)'" . "><h6 class='p-0 m-0'><i class='bi bi-printer'></i></h6></button>
<button type='button' class='btn btn-success m-0 px-2 py-1' onclick='collect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Coll.</h6></button>
<button type='button' class='btn btn-warning m-0 px-2 py-1' onclick='uncollect($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Coll.</h6></button>
<!-- <button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button> -->
<button type='button' class='btn btn-primary m-0 px-2 py-1' onclick='unreceive($sampletype, $accessnumber)'><h6 class='p-0 m-0'>Un-Rec.</h6></button>
</td> ";
echo "<td id='comment$sampletype'>$comment <h6 class='p-0 m-0'><i class='bi bi-pencil-square' role='button' onclick='comment($sampletype, $accessnumber, \"$sampletext\", \"$comment\")'></i></h6></td>";
echo " </tr>";

View File

@ -1911,6 +1911,20 @@ progress {
border-color: var(--bs-table-border-color);
}
.table-danger-custom {
--bs-table-color: #000;
--bs-table-bg: #e72838d0;
--bs-table-border-color: #dfc2c4;
--bs-table-striped-bg: #eccccf;
--bs-table-striped-color: #000;
--bs-table-active-bg: #dfc2c4;
--bs-table-active-color: #000;
--bs-table-hover-bg: #e5c7ca;
--bs-table-hover-color: #000;
color: var(--bs-table-color);
border-color: var(--bs-table-border-color);
}
.table-light {
--bs-table-color: #000;
--bs-table-bg: #f8f9fa;