Current File : /home/inlingua/public_html/crm.vprotectindia.com/resources/views/admin/rpt_invoice.blade.php |
@extends('admin.layouts.app')
@section('head')
{{-- <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.7/css/jquery.dataTables.min.css"> --}}
<link href="{{ asset('public/css/datatables.bootstrap.css') }}" rel="stylesheet">
@endsection
@section('content')
<!-- Table -->
<div class="row">
<div class="col">
<div class="card shadow">
<div class="card-header border-0">
<h3 class="mb-0">Invoice List</h3>
</div>
<div class="table-responsive container">
<table class="table table-bordered " id="invoices">
<thead>
<tr>
<th></th>
<th scope="col">ID</th>
<th scope="col">Customer</th>
<th scope="col">Invoice No</th>
<th scope="col">Invoice Date</th>
<th scope="col">Voucher Type</th>
<th scope="col">Total amt</th>
<th scope="col">Payment</th>
<th scope="col">Status</th>
<th scope="col">Action</th>
</tr>
</thead>
</table>
</div>
{{-- <div class="card-footer py-4">
<nav aria-label="...">
<ul class="pagination justify-content-end mb-0">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1">
<i class="fas fa-angle-left"></i>
<span class="sr-only">Previous</span>
</a>
</li>
<li class="page-item active">
<a class="page-link" href="#">1</a>
</li>
<li class="page-item">
<a class="page-link" href="#">2 <span class="sr-only">(current)</span></a>
</li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">
<i class="fas fa-angle-right"></i>
<span class="sr-only">Next</span>
</a>
</li>
</ul>
</nav>
</div> --}}
</div>
</div>
</div>
@endsection
@section('footer')
<script id="details-template" type="text/x-handlebars-template">
@verbatim
<div class="label label-info">Customer {{ invoice_number }}'s Invoice</div>
<table class="table details-table" id="invoices-{{id}}">
<thead>
<tr>
<th>Id</th>
<th>Item Name</th>
<th>Qty</th>
<th>Rate</th>
<th>Discount</th>
<th>Amount</th>
</tr>
</thead>
</table>
@endverbatim
</script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js"></script>
<script src="{{ asset('public/js/handlebars.js') }}"></script>
<script>
var template = Handlebars.compile($("#details-template").html());
var table = $('#invoices').DataTable({
processing: true,
serverSide: true,
ajax: '{!! route('admin.home.getinvoices') !!}',
columns: [
{
"className": 'details-control',
"orderable": false,
"searchable": false,
"data": null,
"defaultContent": ''
},
{ data: 'id', name: 'id' },
{ data: 'customer.fname', name: 'customer.fname' },
{ data: 'invoice_number', name: 'invoice_number' },
{ data: 'date', name: 'date' },
{ data: 'voucher_type', name: 'voucher_type' },
{ data: 'totalamt', name: 'totalamt' },
{ data: 'balance', name: 'balance' },
{ data: 'status', name: 'status' },
{ data: 'action', name: 'action' }
],
order: [[1, 'asc']]
});
// Add event listener for opening and closing details
$('#invoices tbody').on('click', 'td.details-control', function () {
var tr = $(this).closest('tr');
var row = table.row(tr);
var tableId = 'invoices-' + row.data().id;
if (row.child.isShown()) {
// This row is already open - close it
row.child.hide();
tr.removeClass('shown');
} else {
// Open this row
row.child(template(row.data())).show();
initTable(tableId, row.data());
console.log(row.data());
tr.addClass('shown');
tr.next().find('td').addClass('no-padding bg-secondary');
}
});
function initTable(tableId, data) {
$('#' + tableId).DataTable({
bLengthChange: false,
bPaginate: false,
processing: true,
serverSide: true,
ajax: data.details_url,
columns: [
{ data: 'id', name: 'id' },
{ data: 'itemname', name: 'itemname' },
{ data: 'qty', name: 'qty' },
{ data: 'rate', name: 'rate' },
{ data: 'discount', name: 'discount' },
{ data: 'amount', name: 'amount' },
]
})
}
</script>
@endsection