var UserRights; var inventTable; var inventDetailTable; var reqDataTable; var InventoryId; function hasRolePermission(role) { return UserRights.includes(role); } function renderApprovalbtns(data, row) { var jsonData = JSON.stringify(row).replace(/"/g, """); var buttonsHtml = ''; var statusNumber = parseInt(row.itemNo, 10); if (statusNumber == 0 || statusNumber == null) { buttonsHtml += ' '; } else { buttonsHtml += ' '; } return buttonsHtml; } function renderItembtns(data, row) { var jsonData = JSON.stringify(row).replace(/"/g, """); var buttonsHtml = ''; var statusNumber = parseInt(row.itemNo, 10); if (statusNumber == 0 || statusNumber == null) { buttonsHtml += ' '; } else { buttonsHtml += ' '; } return buttonsHtml; } function holdItem(isApprove) { console.log('isApprove', isApprove); $('#addRemarksUpdate').modal('show'); $('#addRemarksUpdate').css('z-index', 1060); // Ensure the event listener is added only once if (!confirmUpdateListener) { document.getElementById('btnAddRemarks').addEventListener('click', function () { var Remarks = document.getElementById('remarks').value; if (isApprove === 3 && !Remarks) { alert('Please put remarks!'); return; } // Show a confirmation dialog const confirmation = confirm('Are you sure you want to proceed?'); if (confirmation) { // If all validation is passed then proceed to confirmation to backend // confirmPRApproveReject(isApprove, Remarks); var loader = $('#overlay, #loader').css('z-index', 1060); var ItemNo = document.getElementById("itemNo").value; var Status = isApprove; $.ajax({ url: '/PRMgmt/PostPRApproveReject', type: 'POST', data: { ItemNo: ItemNo, Status: Status, PRDetailsId: PRDetailsId, Remarks: Remarks }, // Pass requestData array to the backend success: function (response) { if (response.success) { prTable.ajax.reload(); prDataTable.ajax.reload(); $('#viewPRItemDetails').modal('hide'); $('#addRemarksUpdate').modal('hide'); if (isApprove == 1) { alert('Item Hold!'); } } else { itemTable.ajax.reload(); alert('Failed: ' + response.response); } }, beforeSend: function () { // Show the loader before making the AJAX request loader.show(); }, complete: function () { // Hide the loader after the AJAX request is complete (success or error) loader.hide(); } }); } }); // Set the flag to true to indicate that the listener is attached confirmUpdateListener = true; } } function populateLotNo(ItemNo, LotId) { $.ajax({ url: "/InventoryMgmt/GetLotQtyByItem", data: { ItemNo, LotId }, success: function (response) { // Log the received data for debugging console.log('Received data:', response); // Check if the response is successful and has a data array if (response.success && Array.isArray(response.data)) { var lots = response.data; // Clear existing options in the select element $('#lotNo').empty(); // Add the default option $('#lotNo').append($('