update
This commit is contained in:
@@ -3,13 +3,12 @@
|
||||
@push('script')
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
if (window.mikroExpertiseAutoOpenInitialized) {
|
||||
console.warn('[mikro-expertise] duplicate script initialization skipped');
|
||||
return;
|
||||
}
|
||||
window.mikroExpertiseAutoOpenInitialized = true;
|
||||
if (window.mikroExpertiseAutoOpenInitialized) {
|
||||
return;
|
||||
}
|
||||
window.mikroExpertiseAutoOpenInitialized = true;
|
||||
|
||||
var focusPeriksaId = @json((string) ($focusPeriksaId ?? ''));
|
||||
var focusPeriksaId = @json((string) ($focusPeriksaId ?? ''));
|
||||
var focusNoFoto = @json((string) ($focusNoFoto ?? ''));
|
||||
var returnUrl = @json($expertiseReturnUrl ?? url('/'));
|
||||
var shouldOpenOnLoad = @json((bool) ($openExpertiseOnLoad ?? false));
|
||||
@@ -18,26 +17,14 @@
|
||||
var initialStartDate = @json($initialStartDate ?? '');
|
||||
var initialEndDate = @json($initialEndDate ?? '');
|
||||
var autoOpenAttempts = 0;
|
||||
var maxAutoOpenAttempts = 12;
|
||||
var hasOpenedTarget = false;
|
||||
var hasRequestedFilteredLoad = false;
|
||||
window.mikroExpertiseDirectOpen = shouldOpenOnLoad;
|
||||
|
||||
console.log('[mikro-expertise] init', {
|
||||
focusPeriksaId: focusPeriksaId,
|
||||
focusNoFoto: focusNoFoto,
|
||||
shouldOpenOnLoad: shouldOpenOnLoad,
|
||||
initialListMode: initialListMode,
|
||||
initialSearchValue: initialSearchValue,
|
||||
initialStartDate: initialStartDate,
|
||||
initialEndDate: initialEndDate
|
||||
});
|
||||
|
||||
function setInitialFilters() {
|
||||
console.log('[mikro-expertise] setInitialFilters:start');
|
||||
if ($('#mulai').length) {
|
||||
$('#mulai').val(initialStartDate);
|
||||
}
|
||||
var maxAutoOpenAttempts = 12;
|
||||
var hasOpenedTarget = false;
|
||||
var hasRequestedFilteredLoad = false;
|
||||
window.mikroExpertiseDirectOpen = shouldOpenOnLoad;
|
||||
function setInitialFilters() {
|
||||
if ($('#mulai').length) {
|
||||
$('#mulai').val(initialStartDate);
|
||||
}
|
||||
if ($('#akhir').length) {
|
||||
$('#akhir').val(initialEndDate);
|
||||
}
|
||||
@@ -47,17 +34,10 @@
|
||||
if ($('#master_set01').length) {
|
||||
$('#master_set01').val(initialListMode);
|
||||
}
|
||||
if ($('#valcari').length) {
|
||||
$('#valcari').val(initialSearchValue);
|
||||
}
|
||||
console.log('[mikro-expertise] setInitialFilters:done', {
|
||||
mulai: $('#mulai').val(),
|
||||
akhir: $('#akhir').val(),
|
||||
valjenis: $('#valjenis').val(),
|
||||
master_set01: $('#master_set01').val(),
|
||||
valcari: $('#valcari').val()
|
||||
});
|
||||
}
|
||||
if ($('#valcari').length) {
|
||||
$('#valcari').val(initialSearchValue);
|
||||
}
|
||||
}
|
||||
|
||||
function findExpertiseButton(boundIndex) {
|
||||
var row = $('#gridpemeriksaan').find('[role="row"][boundindex="' + boundIndex + '"]').first();
|
||||
@@ -72,78 +52,45 @@
|
||||
}).first();
|
||||
}
|
||||
|
||||
function triggerExpertiseButton(boundIndex, rowData) {
|
||||
console.log('[mikro-expertise] triggerExpertiseButton:start', {
|
||||
boundIndex: boundIndex,
|
||||
rowData: rowData
|
||||
});
|
||||
try {
|
||||
var columns = $('#gridpemeriksaan').jqxGrid('columns');
|
||||
var records = columns && columns.records ? columns.records : [];
|
||||
console.log('[mikro-expertise] triggerExpertiseButton:columns', {
|
||||
count: records.length
|
||||
});
|
||||
function triggerExpertiseButton(boundIndex, rowData) {
|
||||
try {
|
||||
var columns = $('#gridpemeriksaan').jqxGrid('columns');
|
||||
var records = columns && columns.records ? columns.records : [];
|
||||
|
||||
for (var i = 0; i < records.length; i++) {
|
||||
var column = records[i];
|
||||
if (column && typeof column.buttonclick === 'function') {
|
||||
var renderedLabel = typeof column.cellsrenderer === 'function'
|
||||
? column.cellsrenderer()
|
||||
: '';
|
||||
|
||||
for (var i = 0; i < records.length; i++) {
|
||||
var column = records[i];
|
||||
if (column && typeof column.buttonclick === 'function') {
|
||||
var renderedLabel = typeof column.cellsrenderer === 'function'
|
||||
? column.cellsrenderer()
|
||||
: '';
|
||||
if (String(renderedLabel).indexOf('Expertise') !== -1) {
|
||||
column.buttonclick(rowData || boundIndex);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('[mikro-expertise] triggerExpertiseButton:error', error);
|
||||
}
|
||||
|
||||
if (String(renderedLabel).indexOf('Expertise') !== -1) {
|
||||
console.log('[mikro-expertise] triggerExpertiseButton:calling column.buttonclick', {
|
||||
columnIndex: i,
|
||||
renderedLabel: renderedLabel
|
||||
});
|
||||
column.buttonclick(rowData || boundIndex);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('[mikro-expertise] triggerExpertiseButton:error', error);
|
||||
}
|
||||
var button = findExpertiseButton(boundIndex);
|
||||
if (button.length) {
|
||||
button.trigger('click');
|
||||
return true;
|
||||
}
|
||||
|
||||
var button = findExpertiseButton(boundIndex);
|
||||
if (button.length) {
|
||||
console.log('[mikro-expertise] triggerExpertiseButton:fallback DOM button click');
|
||||
button.trigger('click');
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
console.warn('[mikro-expertise] triggerExpertiseButton:not found');
|
||||
return false;
|
||||
}
|
||||
function openFocusedPeriksa() {
|
||||
if (!shouldOpenOnLoad || hasOpenedTarget || !focusPeriksaId) {
|
||||
return;
|
||||
}
|
||||
|
||||
function openFocusedPeriksa() {
|
||||
console.log('[mikro-expertise] openFocusedPeriksa:start', {
|
||||
shouldOpenOnLoad: shouldOpenOnLoad,
|
||||
hasOpenedTarget: hasOpenedTarget,
|
||||
focusPeriksaId: focusPeriksaId,
|
||||
focusNoFoto: focusNoFoto,
|
||||
attempt: autoOpenAttempts + 1
|
||||
});
|
||||
if (!shouldOpenOnLoad || hasOpenedTarget || !focusPeriksaId) {
|
||||
console.warn('[mikro-expertise] openFocusedPeriksa:skipped');
|
||||
return;
|
||||
}
|
||||
|
||||
var rows = $('#gridpemeriksaan').jqxGrid('getrows') || [];
|
||||
console.log('[mikro-expertise] openFocusedPeriksa:grid rows', {
|
||||
count: rows.length,
|
||||
sample: rows.slice ? rows.slice(0, 3).map(function (row) {
|
||||
return {
|
||||
id: row.id,
|
||||
nofoto: row.nofoto,
|
||||
dlp: row.dlp,
|
||||
status: row.status,
|
||||
boundindex: row.boundindex
|
||||
};
|
||||
}) : []
|
||||
});
|
||||
var matchedRow = null;
|
||||
var matchedRowBoundIndex = -1;
|
||||
var rows = $('#gridpemeriksaan').jqxGrid('getrows') || [];
|
||||
var matchedRow = null;
|
||||
var matchedRowBoundIndex = -1;
|
||||
|
||||
for (var i = 0; i < rows.length; i++) {
|
||||
if (String(rows[i].id) === focusPeriksaId || (focusNoFoto !== '' && String(rows[i].nofoto) === focusNoFoto)) {
|
||||
@@ -155,83 +102,58 @@
|
||||
}
|
||||
}
|
||||
|
||||
if (!matchedRow) {
|
||||
autoOpenAttempts++;
|
||||
console.warn('[mikro-expertise] openFocusedPeriksa:not matched', {
|
||||
attempt: autoOpenAttempts,
|
||||
focusPeriksaId: focusPeriksaId,
|
||||
focusNoFoto: focusNoFoto
|
||||
});
|
||||
if (autoOpenAttempts >= maxAutoOpenAttempts) {
|
||||
console.error('[mikro-expertise] openFocusedPeriksa:max attempts, showing divawal');
|
||||
$('#divawal').show();
|
||||
} else {
|
||||
setTimeout(openFocusedPeriksa, 500);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (!matchedRow) {
|
||||
autoOpenAttempts++;
|
||||
if (autoOpenAttempts >= maxAutoOpenAttempts) {
|
||||
$('#divawal').show();
|
||||
} else {
|
||||
setTimeout(openFocusedPeriksa, 500);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
var triggerRowIndex = matchedRowBoundIndex >= 0 ? matchedRowBoundIndex : matchedRow.boundindex;
|
||||
console.log('[mikro-expertise] openFocusedPeriksa:matched', {
|
||||
triggerRowIndex: triggerRowIndex,
|
||||
row: matchedRow
|
||||
});
|
||||
$('#gridpemeriksaan').jqxGrid('selectrow', triggerRowIndex);
|
||||
$('#gridpemeriksaan').jqxGrid('ensurerowvisible', triggerRowIndex);
|
||||
var triggerRowIndex = matchedRowBoundIndex >= 0 ? matchedRowBoundIndex : matchedRow.boundindex;
|
||||
$('#gridpemeriksaan').jqxGrid('selectrow', triggerRowIndex);
|
||||
$('#gridpemeriksaan').jqxGrid('ensurerowvisible', triggerRowIndex);
|
||||
|
||||
setTimeout(function () {
|
||||
if (triggerExpertiseButton(triggerRowIndex, matchedRow)) {
|
||||
hasOpenedTarget = true;
|
||||
console.log('[mikro-expertise] openFocusedPeriksa:triggered');
|
||||
return;
|
||||
}
|
||||
setTimeout(function () {
|
||||
if (triggerExpertiseButton(triggerRowIndex, matchedRow)) {
|
||||
hasOpenedTarget = true;
|
||||
return;
|
||||
}
|
||||
|
||||
autoOpenAttempts++;
|
||||
console.warn('[mikro-expertise] openFocusedPeriksa:trigger failed', {
|
||||
attempt: autoOpenAttempts
|
||||
});
|
||||
if (autoOpenAttempts >= maxAutoOpenAttempts) {
|
||||
console.error('[mikro-expertise] openFocusedPeriksa:max trigger attempts, showing divawal');
|
||||
$('#divawal').show();
|
||||
} else {
|
||||
setTimeout(openFocusedPeriksa, 500);
|
||||
}
|
||||
}, 150);
|
||||
}
|
||||
autoOpenAttempts++;
|
||||
if (autoOpenAttempts >= maxAutoOpenAttempts) {
|
||||
$('#divawal').show();
|
||||
} else {
|
||||
setTimeout(openFocusedPeriksa, 500);
|
||||
}
|
||||
}, 150);
|
||||
}
|
||||
|
||||
function requestFilteredLoad() {
|
||||
console.log('[mikro-expertise] requestFilteredLoad:start', {
|
||||
hasRequestedFilteredLoad: hasRequestedFilteredLoad,
|
||||
openedpageType: typeof openedpage
|
||||
});
|
||||
if (hasRequestedFilteredLoad) {
|
||||
console.warn('[mikro-expertise] requestFilteredLoad:skipped duplicate');
|
||||
return;
|
||||
}
|
||||
function requestFilteredLoad() {
|
||||
if (hasRequestedFilteredLoad) {
|
||||
return;
|
||||
}
|
||||
|
||||
hasRequestedFilteredLoad = true;
|
||||
setInitialFilters();
|
||||
if (typeof openedpage === 'function') {
|
||||
console.log('[mikro-expertise] requestFilteredLoad:calling openedpage');
|
||||
openedpage();
|
||||
} else {
|
||||
console.error('[mikro-expertise] requestFilteredLoad:openedpage missing, showing divawal');
|
||||
$('#divawal').show();
|
||||
}
|
||||
}
|
||||
|
||||
$('#gridpemeriksaan').off('bindingcomplete.mikro-expertise').on('bindingcomplete.mikro-expertise', function () {
|
||||
console.log('[mikro-expertise] grid bindingcomplete');
|
||||
openFocusedPeriksa();
|
||||
});
|
||||
|
||||
$(window).off('load.mikro-expertise').on('load.mikro-expertise', function () {
|
||||
console.log('[mikro-expertise] window load');
|
||||
requestFilteredLoad();
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
console.log('[mikro-expertise] ready fallback load');
|
||||
requestFilteredLoad();
|
||||
}, 0);
|
||||
|
||||
|
||||
@@ -3544,7 +3544,6 @@
|
||||
if ( $.fn.DataTable.isDataTable('#tblkumanmanual2') ) {
|
||||
$("#tblkumanmanual2").DataTable().ajax.reload();
|
||||
}
|
||||
console.log("Value updated", res);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -3569,7 +3568,6 @@
|
||||
if ( $.fn.DataTable.isDataTable('#tblkumanmanual2') ) {
|
||||
$("#tblkumanmanual2").DataTable().ajax.reload();
|
||||
}
|
||||
console.log("Value updated", res);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -3585,7 +3583,7 @@
|
||||
_token: '{{ csrf_token() }}'
|
||||
},
|
||||
success: function(res) {
|
||||
console.log("Value updated", res);
|
||||
// console.log("Value updated", res);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -4983,41 +4981,22 @@
|
||||
});
|
||||
}
|
||||
function openlamanekpertise(dlp, nofoto, idne){
|
||||
console.log('[openlamanekpertise] start', {
|
||||
inputDlp: dlp,
|
||||
inputNofoto: nofoto,
|
||||
inputIdne: idne,
|
||||
currentDlp: document.getElementById('dlp') ? document.getElementById('dlp').value : null,
|
||||
currentNofotoValue: document.getElementById('nofoto') ? document.getElementById('nofoto').value : null,
|
||||
currentNofotoText: document.getElementById('nofoto') ? document.getElementById('nofoto').textContent : null,
|
||||
currentPeriksaId: document.getElementById('periksa_id') ? document.getElementById('periksa_id').value : null
|
||||
});
|
||||
dlp = dlp || document.getElementById('dlp').value;
|
||||
nofoto = nofoto || document.getElementById('nofoto').value || document.getElementById('nofoto').textContent;
|
||||
idne = idne || document.getElementById('periksa_id').value;
|
||||
if ((dlp == '' || dlp == null) && window.mikroExpertiseDirectOpen) {
|
||||
dlp = 'Kultur';
|
||||
console.warn('[openlamanekpertise] dlp empty, using direct-open fallback', {
|
||||
fallbackDlp: dlp,
|
||||
nofoto: nofoto,
|
||||
idne: idne
|
||||
});
|
||||
}
|
||||
console.log('[openlamanekpertise] resolved values', {
|
||||
dlp: dlp,
|
||||
nofoto: nofoto,
|
||||
idne: idne
|
||||
});
|
||||
$('#dlp').val(dlp);
|
||||
$('#nofoto').val(nofoto).html(nofoto);
|
||||
$('#periksa_id').val(idne);
|
||||
$('#template_jenis').val(dlp);
|
||||
$('#divreadonly').hide();
|
||||
$('#divawal').hide();
|
||||
$('#divperiksa').show();
|
||||
dlp = dlp || document.getElementById('dlp').value;
|
||||
nofoto = nofoto || document.getElementById('nofoto').value || document.getElementById('nofoto').textContent;
|
||||
idne = idne || document.getElementById('periksa_id').value;
|
||||
if ((dlp == '' || dlp == null) && window.mikroExpertiseDirectOpen) {
|
||||
$('#divtemplate').show();
|
||||
} else {
|
||||
$('#divtemplate').hide();
|
||||
$('.templatejawaban').hide();
|
||||
$('#divpreview').hide();
|
||||
}
|
||||
$('#nofoto').val(nofoto).html(nofoto);
|
||||
$('#periksa_id').val(idne);
|
||||
$('#template_jenis').val(dlp);
|
||||
$('#divreadonly').hide();
|
||||
$('#divawal').hide();
|
||||
$('#divperiksa').show();
|
||||
$('.templatejawaban').hide();
|
||||
$('#divpreview').hide();
|
||||
$('#masterdiv').show();
|
||||
$('.setelahdipilihtemplate').show();
|
||||
$('#id_bakterihitungkolselect').show();
|
||||
@@ -5033,12 +5012,6 @@
|
||||
$('#vl_hasildiv2select').show();
|
||||
$('#vl_hasildiv2teks').hide();
|
||||
$('input[type="checkbox"]').prop('disabled', false);
|
||||
console.log('[openlamanekpertise] ui toggled', {
|
||||
divtemplateVisible: $('#divtemplate').is(':visible'),
|
||||
masterdivVisible: $('#masterdiv').is(':visible'),
|
||||
setelahdipilihtemplateVisibleCount: $('.setelahdipilihtemplate:visible').length
|
||||
});
|
||||
console.log('Loading komponen jawaban for DLP: '+dlp+' | No.Foto: '+nofoto+' | ID Periksa: '+idne);
|
||||
var form_data = new FormData();
|
||||
form_data.append('nofoto', nofoto);
|
||||
form_data.append('ruangan', dlp);
|
||||
@@ -5051,14 +5024,8 @@
|
||||
contentType : false,
|
||||
processData : false,
|
||||
success : function (response) {
|
||||
console.log('[openlamanekpertise] getResult success raw', response);
|
||||
var komponens = response.komponens || JSON.parse(response);
|
||||
console.log('[openlamanekpertise] getResult parsed', {
|
||||
count: Array.isArray(komponens) ? komponens.length : null,
|
||||
komponens: komponens
|
||||
});
|
||||
komponens.forEach(function(rows) {
|
||||
console.log(rows.komponen+' | '+rows.isidata);
|
||||
if (rows.komponen === 'lsg_pewarnaanlain') {
|
||||
CKEDITOR.instances['lsg_pewarnaanlain'].setData(rows.isidata);
|
||||
} else if (rows.komponen === 'lsg_ditemukanmorfologi') {
|
||||
@@ -5178,7 +5145,6 @@
|
||||
});
|
||||
}
|
||||
});
|
||||
console.log('Displaying template for DLP: '+dlp);
|
||||
if (dlp == 'CCI'){
|
||||
$('#templatecci').show();
|
||||
$('#judultemplate').html('CCI');
|
||||
@@ -5211,15 +5177,6 @@
|
||||
$('#templatecovid').show();
|
||||
$('#judultemplate').html('PCR COVID');
|
||||
}
|
||||
console.log('[openlamanekpertise] template branch done', {
|
||||
dlp: dlp,
|
||||
nofoto: nofoto,
|
||||
idne: idne,
|
||||
templateKulturVisible: $('#templatekultur').is(':visible'),
|
||||
templatePewarnaanVisible: $('#templatepewarnaanlangsung').is(':visible'),
|
||||
templateTbVisible: $('#templatetbc').is(':visible'),
|
||||
templateViralLoadVisible: $('#templateviralload').is(':visible')
|
||||
});
|
||||
}
|
||||
function openedpage( jQuery ){
|
||||
var jenis = document.getElementById('master_set01').value;
|
||||
@@ -5230,15 +5187,7 @@
|
||||
var poli = document.getElementById('valpoli2').value;
|
||||
var set06 = document.getElementById('master_judul').value;
|
||||
var token = document.getElementById('token').value;
|
||||
console.log('[openedpage] getList params', {
|
||||
jenis: jenis,
|
||||
mulai: mulai,
|
||||
akhir: akhir,
|
||||
valcari: valcari,
|
||||
poli: poli,
|
||||
master: master,
|
||||
judul: set06
|
||||
});
|
||||
|
||||
if (jenis == 'ThisDay'){
|
||||
$("#mulai").val('');
|
||||
$("#akhir").val('');
|
||||
@@ -5395,27 +5344,18 @@
|
||||
$("#gridpemeriksaan").jqxGrid('sortby', 'tlsnofoto', 'asc');
|
||||
},
|
||||
columns: [
|
||||
{ text: 'Expertise', filterable: false, columntype: 'button', align: 'center', width: 70, cellsrenderer: function () {
|
||||
return "Expertise";
|
||||
}, buttonclick: function (row) {
|
||||
editrow = row;
|
||||
var offset = $("#gridpemeriksaan").offset();
|
||||
var dataRecord = (row && typeof row === 'object')
|
||||
? row
|
||||
: $("#gridpemeriksaan").jqxGrid('getrowdata', editrow);
|
||||
console.log('[expertise button] clicked/resolved row', {
|
||||
inputRow: row,
|
||||
editrow: editrow,
|
||||
dataRecord: dataRecord
|
||||
});
|
||||
if (!dataRecord || typeof dataRecord.id === 'undefined') {
|
||||
console.error('[expertise button] dataRecord missing/invalid', {
|
||||
inputRow: row,
|
||||
editrow: editrow
|
||||
});
|
||||
return;
|
||||
}
|
||||
$("#nofoto").val('');
|
||||
{ text: 'Expertise', filterable: false, columntype: 'button', align: 'center', width: 70, cellsrenderer: function () {
|
||||
return "Expertise";
|
||||
}, buttonclick: function (row) {
|
||||
editrow = row;
|
||||
var offset = $("#gridpemeriksaan").offset();
|
||||
var dataRecord = (row && typeof row === 'object')
|
||||
? row
|
||||
: $("#gridpemeriksaan").jqxGrid('getrowdata', editrow);
|
||||
if (!dataRecord || typeof dataRecord.id === 'undefined') {
|
||||
return;
|
||||
}
|
||||
$("#nofoto").val('');
|
||||
$("#id_mikroorganismeoptional").val('').trigger('change');
|
||||
|
||||
for (var instance in CKEDITOR.instances) {
|
||||
@@ -5447,16 +5387,9 @@
|
||||
var cekuser5 = dataRecord.iddokter;
|
||||
var cekuser6 = dataRecord.analis;
|
||||
var set01 = dataRecord.pasien_id;
|
||||
var accnumber = dataRecord.nofoto;
|
||||
var cekkesimpulan = dataRecord.kesimpulan;
|
||||
var dlp = dataRecord.dlp;
|
||||
console.log('[expertise button] key values', {
|
||||
id: goook,
|
||||
nofoto: nofoto,
|
||||
dlp: dlp,
|
||||
status: statuse,
|
||||
pasien_id: set01
|
||||
});
|
||||
var accnumber = dataRecord.nofoto;
|
||||
var cekkesimpulan = dataRecord.kesimpulan;
|
||||
var dlp = dataRecord.dlp;
|
||||
var masteru = document.getElementById('master_userid').value;
|
||||
var token = document.getElementById('token').value;
|
||||
var sourceadendum = {
|
||||
|
||||
Reference in New Issue
Block a user