Penambahan tombol PDF di Bukubesar, Neraca, Laba rugi, Neraca saldo, dan Data Barang

Format PDF tersimpan di library semua
This commit is contained in:
2026-06-13 16:03:15 +07:00
parent a371fe3bac
commit 36ad02a222
15 changed files with 2551 additions and 7 deletions
+53 -3
View File
@@ -18,10 +18,12 @@
<input type="date" name="tanggal_sampai" id="tanggal_sampai" class="form-control">
</div>
<div class="col-md-4 d-flex align-items-end">
<div class="col-md-4 d-flex align-items-end gap-2">
<button type="submit" class="btn btn-warning w-100">
Tampilkan
</button>
</button><br>
<button type="button" class="btn btn-danger w-100" id="generate_pdf">
<i class="fa fa-print"></i>Generate PDF</button>
</div>
</form>
@@ -76,6 +78,7 @@
</div>
<script>
$(function(){
function loadData(tanggal_dari = '', tanggal_sampai = ''){
@@ -85,6 +88,7 @@ $(function(){
tanggal_sampai: tanggal_sampai
}, function(res){
let act = '', pas = '';
// ================= ACTIVA
@@ -134,18 +138,64 @@ $(function(){
},'json');
}
// ================= LOAD AWAL
loadData();
// ================= SUBMIT FILTER
$('#filterForm').on('submit', function(e){
e.preventDefault();
let dari = $('#tanggal_dari').val();
let sampai = $('#tanggal_sampai').val();
loadData(dari, sampai);
});
// Prevent double submit
$(document).on('submit', 'form', function(e){
e.preventDefault();
});
$('#generate_pdf').on('click', function () {
const tanggal_dari = $('#tanggal_dari').val() || '0000-00-00';
const tanggal_sampai = $('#tanggal_sampai').val() || '0000-00-00';
let btn = $(this);
btn.prop('disabled', true).html('Generate PDF...');
$.ajax({
url: "<?= base_url('generateneraca/generatepdf'); ?>"
+ '/' + tanggal_dari
+ '/' + tanggal_sampai,
type: "GET",
xhrFields: {
responseType: 'blob' // penting untuk PDF
},
success: function (response) {
let blob = new Blob([response], { type: 'application/pdf' });
let url = window.URL.createObjectURL(blob);
// buka di tab baru
window.open(url, '_blank');
},
error: function () {
Swal.fire('Error', 'Gagal generate PDF', 'error');
},
complete: function(){
btn.prop('disabled', false).html('Generate PDF');
}
});
});
</script>
});
</script>