fix error export pdf

This commit is contained in:
KhatamNugraha
2024-03-04 14:52:04 +07:00
parent 5c79b3938f
commit 809b315838
5 changed files with 542 additions and 502 deletions

View File

@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Table with 9 Columns</title>
<title>KonfrimasiBank</title>
<style>
@page {
margin-top: 3.5cm;
@ -30,7 +30,7 @@
},
table {
/* table {
width: 100%;
border-collapse: collapse;
border: 1px solid #ddd;
@ -38,7 +38,6 @@
th, td {
border: 1px solid #ddd;
padding: 3px;
/* text-align: center; */
font-size: 12px;
}
th {
@ -47,28 +46,83 @@
}
tr:nth-child(even) {
background-color: #f2f2f2;
}
} */
.text-center{
text-align: center;
}
ul.no-bullets {
list-style-type: none;
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
font-size: 12px; /* Ukuran font dalam piksel */
}
p{
font-family: Arial, sans-serif;
font-size: 12px; /* Ukuran font dalam piksel */
}
.no-border-table {
border-collapse: collapse;
}
.no-border-table,
.no-border-table th,
.no-border-table td,
.no-border-table tr {
border: none;
}
.space1 {
border: 1px solid black;
border-collapse: collapse;
font-size: 12px;
}
</style>
</head>
<body>
<table style="width:100%;">
<thead style="background-color: dimgrey">
<ul class="no-bullets">
<li>Nomor &nbsp; : {{$data['infoSuratOld']['no_surat']}}</li>
<li>Tanggal : {{ Carbon\Carbon::parse($data['infoSuratOld']['tgl_surat'])->format('d-m-Y') }}</li>
</ul><br>
<ul class="no-bullets">
<li>Kepada Yth</li>
<li>{{$data['infoSuratNew']['nama_tujuan']}}</li>
<li>{{$data['infoSuratNew']['alamat']}}</li>
<li>Email : {{$data['infoSuratNew']['email']}}</li>
<li>Telp : {{$data['infoSuratNew']['tlp']}}</li>
</ul><br>
<ul class="no-bullets">
<li> Sesuai dengan surat saudara Nomor {{$data['infoSuratNew']['no_req_surat']}} tanggal {{ Carbon\Carbon::parse($data['infoSuratNew']['tgl_req_surat'])->format('d-m-Y') }} dengan ini kami sampaikan data data nasabah sesuai permintaan saudara sebagai berikut : </li><br>
<li>Nama Nasabah : {{$data['DataCustomer']->SHORT_NAME}}</li>
<li>Nomor CIF &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : {{$data['DataCustomer']->CUSTOMER_NO}}</li>
</ul><br>
<ul class="no-bullets">
<li>SIMPANAN NASABAH YANG BERSANGKUTAN PADA BANK</li>
<li>POSISI : {{ Carbon\Carbon::parse($data['infoSuratNew']['tgl_req_surat'])->format('d-m-Y') }} </li>
</ul>
<table style="width:100%;" class="space1" >
<thead style="background-color: dimgrey" class="class="space1"">
<tr>
<th class="text-center " style="width:5%">No</th>
<th class="text-center" style="width:21%">Jenis Rekening</th>
<th class="text-center" style="width:12%">Tgl Realisasi</th>
<th class="text-center" style="width:7%">Mata Uang</th>
<th class="text-center" style="width:15%">Saldo</th>
<th class="text-center" style="width:10%">Jangka Waktu</th>
<th class="text-center" style="width:8%">Suku Bunga</th>
<th class="text-center" style="width:12%">Tgl Jatuh Tempo</th>
<th class="text-center" style="width:10%">Keterangan</th>
<th class="text-center space1" style="width:5%">No</th>
<th class="text-center space1" style="width:21%">Jenis Rekening</th>
<th class="text-center space1" style="width:12%">Tgl Realisasi</th>
<th class="text-center space1" style="width:7%">Mata Uang</th>
<th class="text-center space1" style="width:15%">Saldo</th>
<th class="text-center space1" style="width:10%">Jangka Waktu</th>
<th class="text-center space1" style="width:8%">Suku Bunga</th>
<th class="text-center space1" style="width:12%">Tgl Jatuh Tempo</th>
<th class="text-center space1" style="width:10%">Keterangan</th>
</tr>
</thead>
<tbody>
@ -76,30 +130,180 @@
@php $i=1
@endphp
@foreach ($data['DataAccounts'] as $val)
<tr class="">
<td class="text-center ">{{ $i++ }}</td>
<td class="text-left">{{ $val['SHORT_NAME'] }}</td>
<td class=" text-center">{{ $val['OPENING_DATE'] }}</td>
<td class=" text-center">{{ $val['CURRENCY'] }}</td>
<td class=" text-left"></td>
<td class="text-center "></td>
<td class="text-center "></td>
<td class="text-center ">{{ $val['MATURITY_DATE'] }}</td>
<td class="text-center ">{{ $val['ACCOUNT_NUMBER'] }}</td>
<tr class="space1">
<td class="text-center space1">{{ $i++ }}</td>
<td class="text-left space1">{{ $val['SHORT_NAME'] }}</td>
<td class=" text-center space1">{{ $val['OPENING_DATE'] }}</td>
<td class=" text-center space1">{{ $val['CURRENCY'] }}</td>
<td class=" text-left space1">{{ $val['WORKING_BALANCE'] }}</td>
<td class="text-center space1 ">{{ $val['TERM'] }}</td>
<td class="text-center space1 ">{{ $val['FIXED_RATE'] }}</td>
<td class="text-center space1 ">{{ $val['MATURITY_DATE'] }}</td>
<td class="text-center space1">{{ $val['ACCOUNT_NUMBER'] }}</td>
</tr>
@endforeach
@else
<tr class="">
<td class="" colspan="9" style="text-align: center;">Tidak Ada Data Yang Ditampilkan</td>
<td class="space1" colspan="9" style="text-align: center;">Tidak Ada Data Yang Ditampilkan</td>
</tr>
@endif
<!-- Add more rows here if needed -->
</tbody>
</table>
</table><br>
<ul class="no-bullets">
<li>PINJAMAN YANG DIBERIKAN OLEH BANK KEPADA NASABAH</li>
<li>POSISI : {{ Carbon\Carbon::parse($data['infoSuratNew']['tgl_req_surat'])->format('d-m-Y') }} </li>
</ul>
<table class="space1" style="width:100%;">
<thead style="background-color: dimgrey">
<tr class="space1">
<th class="text-center space1" style="width:5%">No</th>
<th class="text-center space1" style="width:21%">Jenis Rekening</th>
<th class="text-center space1" style="width:12%">Tgl Realisasi</th>
<th class="text-center space1" style="width:7%">Mata Uang</th>
<th class="text-center space1" style="width:15%">Saldo</th>
<th class="text-center" style="width:10%">Jangka Waktu</th>
<th class="text-center space1" style="width:8%">Suku Bunga</th>
<th class="text-center space1" style="width:12%">Tgl Jatuh Tempo</th>
<th class="text-center space1" style="width:10%">Keterangan</th>
</tr>
</thead>
<tbody>
@if (count($data['DataPinjaman'])>0)
@php $i=1;
$saldo = '';
@endphp
@foreach ($data['DataPinjaman'] as $key1 => $pinjaman)
<tr class="space1">
<td class="text-center space1">{{ $i++ }}</td>
<td class="space1">{{ $pinjaman['PRODUCT_LINE'] }}</td>
<td class="text-center space1 ">{{$pinjaman['START_DATE']}}</td>
<td class="text-center space1">{{ $pinjaman['CURRENCY'] }}</td>
<td class="text-center space1">{{$pinjaman['WORKING_BALANCE']}}</td>
<td class="text-center space1">{{ $pinjaman['TERM'] }}</td>
<td class="text-center space1">{{ $pinjaman['FIXED_RATE'] }} %</td>
<td class="text-center space1">{{ $pinjaman['MATURITY_DATE'] }}</td>
<td class="text-center space1">{{ $pinjaman['ACCOUNT_NUMBER'] }}</td>
</tr>
@endforeach
@else
<tr class="space1">
<td class="space1" colspan="9" style="text-align: center;">Tidak Ada Data Pinjaman Yang Ditampilkan</td>
</tr>
@endif
</tbody>
</table><br>
<ul class="no-bullets">
<li>FASILITAS LAIN YANG DITERIMA OLEH NASABAH</li>
<li>POSISI : {{ Carbon\Carbon::parse($data['infoSuratNew']['tgl_req_surat'])->format('d-m-Y') }} </li>
</ul>
<table class="space1" style="width:100%;">
<thead style="background-color: dimgrey">
<tr class="space1">
<th class="text-center space1" style="width:5%">No</th>
<th class="text-center space1" style="width:21%">Jenis Rekening</th>
<th class="text-center space1" style="width:12%">Tgl Realisasi</th>
<th class="text-center space1" style="width:7%">Mata Uang</th>
<th class="text-center space1" style="width:15%">Saldo</th>
<th class="text-center space1" style="width:10%">Jangka Waktu</th>
<th class="text-center space1" style="width:8%">Suku Bunga</th>
<th class="text-center space1" style="width:12%">Tgl Jatuh Tempo</th>
<th class="text-center space1" style="width:10%">Keterangan</th>
</tr>
</thead>
<tbody>
@if (count($data['DataLimit']) > 0 OR count($data['DataFasilitas']) > 0 )
@if (count($data['DataLimit']) > 0)
@php $i=1 @endphp
@foreach ($data['DataLimit'] as $limit)
@php
$approvalDate = \Carbon\Carbon::parse($limit->APPROVAL_DATE);
$expiryDate = \Carbon\Carbon::parse($limit->EXPIRY_DATE);
$term = $expiryDate->diffInMonths($approvalDate);
$limitPecent = intval($limit->LIMIT_PERCENTAGE) / 100 ;
$noRek = explode(']', $limit->ACCOUNT);
@endphp
<tr class="space1">
<td class="text-center space1">{{ $i++ }}</td>
<td class="space1">{{ $limit->SHORT_NAME }}</td>
<td class="text-center space1">{{ $approvalDate->format('d-m-Y') }}</td>
<td class="text-center space1">{{ $limit->LIMIT_CURRENCY }}</td>
<td class="space1">
{{ ($limit->AVAIL_AMT != 0.00) ? number_format($limit->AVAIL_AMT,2,',','.') : 'NIHIL'}}</td>
<td class="text-center space1">{{ $term }} D </td>
<td class="text-center space1">{{ $limitPecent }} %</td>
<td class="text-center space1">{{ $expiryDate->format('d-m-Y')}}</td>
<td class="text-center space1">
@if(count($noRek) > 1)
<ul class="no-bullets">
@foreach ($noRek as $item)
<li style=" font-family: Times New Roman,Times, sans-serif;font-size:12px">{{$item}}</li>
@endforeach
</ul>
@else
{{ $limit->ACCOUNT}}
@endif
</td>
</tr>
@endforeach
@endif
@if (count($data['DataFasilitas']) > 0)
@php
$no = 0;
if (count( $data['DataLimit']) > 0) {
$no = count($data['DataLimit']) + 1 ;
}else{
$no = 1 ;
}
@endphp
@foreach ($data['DataFasilitas'] as $fasilitas)
<tr class="space1" style="background-color: antiquewhite">
<td class="text-center space1">{{ $no++ }}</td>
<td class="space1">{{ $fasilitas->jenis_fasilitas }}</td>
<td class="text-center space1">{{ \Carbon\Carbon::parse($fasilitas->start_date)->format('d-m-Y') }}</td>
<td class="text-center space1">{{ $fasilitas->mata_uang }}</td>
<td class="space1">{{ $fasilitas->saldo }}</td>
<td class="text-center space1 ">{{ $fasilitas->jangka_waktu }}</td>
<td class="text-center space1">{{ $fasilitas->fixed_rate }} %</td>
<td class="text-center space1">{{ \Carbon\Carbon::parse($fasilitas->due_date)->format('d-m-Y') }}</td>
<td class="text-center space1">{{ $fasilitas->nomor_rekening }}</td>
</tr>
@endforeach
@endif
@else
<tr class="space1">
<td class="space1" colspan="9" style="text-align: center;">Tidak Ada Fasilitas </td>
</tr>
@endif
</tbody>
</table><br>
<p>Demikian data ini kami sampaikan agar dapat digunakan sebagaimana mestinya</p> <br><br><br><br>
<div style="width:300px" class>
<table style="width:100%;" class="">
<table style="width:100%;" class=" no-border-table">
<td class="space1" style="width:20%;font-size:12px;border:none">
<ul class="no-bullets">
<li>{{$data['DataSigner'][0]['deputy_director_name']}}</li>
<li>Deputy Director</li>
</ul>
</td>
<td class="space1" style="width:20%;font-size:12px;border:none">
<ul class="no-bullets">
<li>{{$data['DataSigner'][0]['executive_officer_name']}}</li>
<li>Executive Officer</li>
</ul>
</td>
</tr>
</table>
</div>
</body>
</html>

View File

@ -40,7 +40,7 @@
<div class="card-body pt-6">
<div class="container">
<div class="row" >
<div class="col-md-3"></div>
<div class="col-md-2"></div>
<div class="col-md-6" style="border: 1px solid grey;padding: 20px;background-color:#f4f4f4">
<form id="myForm">
<div class="row mb-3">
@ -79,7 +79,8 @@
</form>
</div>
<div class="col-md-3 d-flex justify-content-end">
<div class="col-md-4 d-flex justify-content-end">
<form class="form_customer2" id="exportForm">
@csrf
@ -90,27 +91,36 @@
<input type="hidden" style="margin-bottom: 5px" name="periode" /> --}}
<div class="text-right ">
<div class="d-flex justify-content-end ">
<button type="button" class="btn btn-light-primary btn-sm exportPdf" style="display:none" id="buttonExport1">
{{-- <button type="button" class="btn btn-light-primary btn-sm exportPdf" style="display:none" id="buttonExport1">
<i class="ki-duotone ki-exit-down fs-2"><span class="path1"></span><span
class="path2"></span></i>
Export Report
Export
</button> --}}
<button type="button" class="btn btn-light-primary btn-sm exportPdf" style="display:none" id="buttonPostInfoSurat">
<i class="ki-duotone ki-plus fs-2"><span class="path1"></span><span
class="path2"></span></i>
Surat
</button>
</div>
</div>
</div>
</form>
<form class="formFasilitas" action="{{ route($route[0].'.fasilitas') }}" >
@csrf
<input type="hidden" style="margin-bottom: 5px" name="cus_no_fasilitas" id="cus_no_fasilitas" />
<input type="hidden" style="margin-bottom: 5px" name="startDateFasilitas" id="startDateFasilitas" />
<input type="hidden" style="margin-bottom: 5px" name="endDateFasilitas" id="endDateFasilitas" />
<input type="hidden" style="margin-bottom: 5px" name="company_name" id="company_name" />
<input type="hidden" style="margin-bottom: 5px" name="status" value="1" />
<button type="submit" class="btn btn-light-info btn-sm fasilitasButton " style="margin-left:5px;display:none">
<form class="fasilitas">
<button type="submit" class="btn btn-light-info btn-sm " style="margin-left:5px;">
<i class="ki-duotone ki-plus fs-2"><span class="path1"></span><span class="path2"></span></i>
Fasilitas
</a>
</button>
</form>
<form method="POST" action="{{ route($route[0].'.export') }}" target="_blank" >
@csrf
<input type="hidden" style="margin-bottom: 5px" name="cusNo" id="cusNo" />
<input type="hidden" style="margin-bottom: 5px" name="accNo" id="accNo" />
<input type="hidden" style="margin-bottom: 5px" name="cabang" id="cabang" />
<input type="hidden" style="margin-bottom: 5px" name="signerId" id="signerId" />
<input type="hidden" style="margin-bottom: 5px" name="startDate2" id="startDate2" />
<button type="submit" class="btn btn-light-info btn-sm exportButton" style="margin-left:5px;display:none" ><i class="ki-duotone ki-plus fs-2"><span class="path1"></span><span class="path2"></span></i>
Export</button>
</form>
</div>
</div>
@ -276,7 +286,7 @@
<div class="modal-footer">
<button type="button" class="btn btn-secondary btn-sm closeButtonSigner"
data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary btn-sm" id="submitSigner">Submit</button>
<button type="button" class="btn btn-primary btn-sm" id="submitInfoSurat">Submit</button>
</div>
</form>
</div>
@ -306,22 +316,6 @@
$('.mycheck').hide();
$('#cif_null').hide();
// $("#phoneNumber").on("input", function () {
// validatePhoneNumber($(this).val());
// });
// function validatePhoneNumber(phoneNumber) {
// var regex = /^\d{12}$/;
// if (regex.test(phoneNumber)) {
// $("#phoneNumber").css("border", "1px solid green");
// $("#error-message").text("");
// } else {
// $("#phoneNumber").css("border", "1px solid red");
// $("#error-message").text("Invalid phone number. Please enter a valid 10-digit number.");
// }
// }
$("#myForm").submit(function (event) {
event.preventDefault(); // Prevent the form from submitting normally
if ($("#cif").val() === "") {
@ -365,12 +359,15 @@
$('.loading1').hide();
let dateString ='';
$.each(items, function(i, index) {
var reverse = items[i]['WORKING_BALANCE'].toString().split('').reverse().join(''),
rp = reverse.match(/\d{1,3}/g);
rp = rp.join('.').split('').reverse().join('');
$('#dataBody').append('<tr class="secondrow"><td>' + (
no++) +
'</td><td>' + items[i]['ACCOUNT_NUMBER'] +
'</td><td>' + items[i]['COMPANY_NAME'] +
'</td><td>' + items[i]['SHORT_NAME'] +
'</td><td>' + items[i]['WORKING_BALANCE'] +
'</td><td>' + rp +
// '</td><td>' + items[i]['PRODUCT'] +
'</td><td>' + items[i]['CURRENCY'] + '</td>'+
'<td class="tes">'+
@ -387,6 +384,14 @@
$("input[name=endDateFasilitas]").val(endDate);
$(".selected-values").val('');
$('#cusNo').val();
$('#accNo').val();
$('#cabang').val();
$('.exportButton').hide();
$('#buttonPostInfoSurat').hide();
$('#selectAll').prop('checked', false);;
},
error: function (error) {
console.error("Form submission failed!");
@ -400,14 +405,6 @@
var selectedValues = [];
$('#table4 tbody').on('change', 'tr td.tes input[type=checkbox]', function() {
$('.exportPdf').show();
// if ($(this).is(':checked')) {
// // Do something...
// acc_no.push($(this).val());
// $("input[name=acc_no]").val(acc_no)
// }else{
// acc_no.push($(this).val());
// $("input[name=acc_no]").val(acc_no)
// };
var value = $(this).val();
@ -461,13 +458,19 @@
});
//submit signer
$("#buttonExport1").click(function(){
$("#buttonPostInfoSurat").click(function(){
$("#signerModal").modal('show');
})
//submit signer
// $("#exportButton").click(function(){
// $("#signerModal").modal('show');
// })
// Handle form submission when the "Submit" button inside the modal is clicked
$("#submitSigner").click(function(e) {
$("#submitInfoSurat").click(function(e) {
e.preventDefault();
var cif = $('input[name="cus_no"]').val();
var cabang = $('input[name="kode_cabang"]').val();
@ -482,7 +485,7 @@
var alamat = $.trim($("#alamat").val());
var signer = $("#signer-select").find('option:selected').val();
$("#signerModal").modal('hide');
$('.modalSpiner').modal('show');
// $('.modalSpiner').modal('show');
var dt = new Date();
var date = dt.getYear() + ":" + dt.getDate() + ":" + dt.getHours();
@ -507,36 +510,22 @@
$.ajax({
type: "POST",
url: "{{ route('konfirmasibank.export') }}",
url: "{{ route('konfirmasibank.postInfoSurat') }}",
data: dataToSend, // serializes the form's elements.
xhrFields: {
responseType: 'blob'
},
dataType: 'json', // Mengatur tipe data yang diharapkan dari respons
success: function(data) {
// $('.modalSpiner').modal('hide');
// Create a Blob from the response data
var blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' });
var dt = new Date();
var time = dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds();
// Create a link element
var link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
// Set the download attribute with the desired file name
link.download = 'KonfirmasiBank_' + time +'.pdf';
// Append the link to the document body
document.body.appendChild(link);
// Programmatically click the link to trigger the download
link.click();
// Remove the link from the document
document.body.removeChild(link);
$('#cusNo').val(cif);
$('input[name="email"]').val();
$('#accNo').val(acc_no);
$('#cabang').val(cabang);
$('#startDate2').val(startDate);
$('#signerId').val(signer);
// location.reload();
$('.exportButton').show();
$('#signerModal')[0].reset();
toastr.success(data.message);
// location.reload();
$('.modalSpiner').modal('hide');
},
error: function(data, textStatus, errorThrown) {
$('.modalSpiner').modal('hide');