D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
shubmkcj
/
urbane.createerp.com
/
Filename :
invoice.php
back
Copy
<?php ob_start(); session_start(); include 'config.php'; $login = $_SESSION['login_email']; if($login == ''){ echo '<script>location.replace("index.php")</script>'; } if(isset($_SESSION["source_id"])){ $source_id = $_SESSION['source_id']; } function getPaidAmount($conn, $referenceId){ $amount = 0.00; $sqlGetPaidAmount = "SELECT amount, tax_deduction FROM payment WHERE reference = '$referenceId' AND transaction_type = 'Debit'"; $resultGetPaidAmount = mysqli_query($conn, $sqlGetPaidAmount); if($resultGetPaidAmount){ if(mysqli_num_rows($resultGetPaidAmount) > 0){ while($rowGetPaidAmount = mysqli_fetch_assoc($resultGetPaidAmount)){ $amount += $rowGetPaidAmount["amount"] + $rowGetPaidAmount["tax_deduction"]; } } } $amount = sprintf('%0.2f', $amount); return $amount; } ?> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Invoice Management | Invoice</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <meta content="A fully featured admin theme which can be used to build CRM, CMS, etc." name="description" /> <meta content="Coderthemes" name="author" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <!-- Font Awsome --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <!-- App favicon --> <link rel="shortcut icon" href="assets/images/favicon.png"> <!-- Pie Chart Css --> <link href="assets/pie charts/style.css" rel="stylesheet" type="text/css" /> <!-- App css --> <link href="assets/css/bootstrap.min.css" rel="stylesheet" type="text/css" /> <link href="assets/css/icons.css" rel="stylesheet" type="text/css" /> <link href="assets/css/metismenu.min.css" rel="stylesheet" type="text/css" /> <link href="assets/css/style.css" rel="stylesheet" type="text/css" /> <!-- DataTables --> <link href="plugins/datatables/dataTables.bootstrap4.min.css" rel="stylesheet" type="text/css" /> <link href="plugins/datatables/buttons.bootstrap4.min.css" rel="stylesheet" type="text/css" /> <!-- Responsive datatable examples --> <link href="plugins/datatables/responsive.bootstrap4.min.css" rel="stylesheet" type="text/css" /> <script src="assets/js/modernizr.min.js"></script> <link href="plugins/sweet-alert2/sweetalert2.min.css" rel="stylesheet" type="text/css"> <link href="plugins/jquery-toastr/jquery.toast.min.css" rel="stylesheet" /> <link href="https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel="stylesheet"> </head> <body> <!-- Begin page --> <div id="wrapper"> <!-- Top Bar Start --> <?php include 'top-header.php'; ?> <!-- Top Bar End --> <!-- ========== Left Sidebar Start ========== --> <?php include 'left-sidebar.php'; ?> <!-- Left Sidebar End --> <!-- ============================================================== --> <!-- Start right Content here --> <!-- ============================================================== --> <div class="content-page"> <!-- Start content --> <div class="content"> <div class="container-fluid"> <div class="row"> <div class="col-12"> <div class="page-title-box"> <h4 class="page-title float-left">Invoices</h4> <ol class="breadcrumb float-right"> <li class="breadcrumb-item"><a href="#">Sales</a></li> <li class="breadcrumb-item active">All Invoices</li> </ol> <div class="clearfix"></div> </div> </div> </div> <!-- end row --> <div class="row"> <div class="col-sm-12"> <div class="card-box table-responsive"> <form action="marging.php" method="get"> <div class="col-md-12 pb-2"> <button class="btn btn-primary" type="submit">Marge</button> </div> <table id="datatable" class="table table-bordered"> <thead> <tr class="theme-bg"> <th></th> <th>Date</th> <th>Proforma Id</th> <th>Invoice Id</th> <th>Invoice Reference Id</th> <th>Bill Pay Name</th> <th class="text-center">Status</th> <th>Total Amount</th> <th>Due Date</th> <th class="text-center">Actions</th> </tr> </thead> <tbody> <?php $sql = "SELECT * FROM `generate_invoice` where data_delete != 'yes' AND `marge_status`!='yes' order by id desc"; $result = mysqli_query($conn,$sql); while( $row = mysqli_fetch_array($result)){ $status = ""; $status1 = ""; $helping_id = $row['bill_pay_name']; $get_bpn = mysqli_query($conn,"SELECT * FROM `contact` where id='$helping_id'"); $get_bpn_row = mysqli_fetch_assoc($get_bpn); $final_bill_pay_name = $get_bpn_row['bill_display_name']; $paidAmount = getPaidAmount($conn, $row['invoice_Id']); if($row['data_delete'] == "cancel"){ $status = "<a class='btn btn-danger btn-xs'>Cancelled</a>"; $status1 = "Cancelled"; }else{ if($row['amount_paid'] <= $paidAmount){ $status = "<a class='btn btn-success btn-xs'>Paid</a>"; $isPaid = true; $status1 = "Paid"; } else if($row['amount_paid'] > $paidAmount && $paidAmount > 0){ $status = "<a class='btn btn-primary btn-xs'>Partial Paid</a>"; } else{ if(strtotime($row['due_date']) < strtotime(date('Y-m-d'))){ $status = "<a class='btn btn-warning btn-xs'>Overdue</a>"; } else{ $status = "<a class='btn btn-info btn-xs'>Pending</a>"; } } } ?> <tr class="gradeX" style='font-size:13px'> <td><input type="checkbox" name="get[]" value="<?php echo $row['invoice_reference']; ?>"></td> <td><?php echo $row['date']; ?></td> <td><?php echo $row['proforma_id']; ?></td> <td><?php echo $row['invoice_Id']; ?></td> <td><?php echo $row['invoice_reference']; ?></td> <td><?php echo $final_bill_pay_name ?></td> <td class="text-center"><?php echo $status; ?></td> <td><?php echo $row['amount_paid']; ?></td> <td><?php echo $row['due_date']; ?></td> <td class="text-center"> <?php if($status1 != "Cancelled") {if($paidAmount < $row['amount_paid']) { if($access->getFinanceAdd($_SESSION["login_email"], $_SESSION["source_id"]) == "on") {?> <button type="button" data-toggle="tooltip" data-placement="top" title="" data-original-title="Pay" onclick="payAmount(this, '<?php echo $row['bill_pay_name'] ?>')" value="<?php echo $row['id'] ?>" class="btn btn-xs btn-success"><i class="fa fa-credit-card"></i></button> <?php } } if($access->getFinanceEdit($_SESSION["login_email"], $_SESSION["source_id"]) == "on") {?> <button type="button" data-toggle="tooltip" data-placement="top" title="" data-original-title="Canelled Invoice" data-companyname="<?php echo $row['bill_pay_name'] ?>" value="<?php echo $row['id'] ?>" class="btn btn-xs btn-danger" onclick="cancelInvoice(this)"><i class="fa fa-times"></i></button> <?php } } ?> <a href="view_invoice.php?id=<?php echo $row['id'] ?>" class="btn btn-xs btn-info" data-toggle="tooltip" data-placement="top" title="" data-original-title="View"><i class="fa fa-eye"></i></a> <a href="print-invoice.php?id=<?php echo $row['id'] ?>" target="blank" class="btn btn-xs btn-warning" data-toggle="tooltip" data-placement="top" title="" data-original-title="Print"><i class="fa fa-print"></i></a> <button type="button" class="btn btn-xs btn-danger" value="<?php echo $row['id'] ?>" data-toggle="tooltip" data-placement="top" title="" data-original-title="Delete" class="btnDelete" onclick="deleteInvoice(this)"><i class="fa fa-trash-o"></i></button> </td> </tr> <?php } ?> </tbody> </table> </form> </div> </div> <!-- end: page --> </div> </div> <!-- container --> </div> <!-- content --> <?php include 'copyrignt.php' ?> </div> <!-- ============================================================== --> <!-- End Right content here --> <!-- ============================================================== --> </div> <div id="modalRecordPayment" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop="static" data-keyboard="false" aria-hidden="true"> <form method="post" id="formRecordPayment"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Record Payment</h4> </div> <div class="modal-body"> <input type="hidden" class="form-control" id="invoiceId" name ="invoiceId"> <input type="hidden" class="form-control" id="companyId" name ="companyId"> <input type="hidden" class="form-control" id="referenceId" name ="referenceId"> <input type="hidden" class="form-control" id="invoice_referenceId" name ="invoice_referenceId"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="field-3" class="control-label">Available Credit</label> <input type="text" class="form-control" id="availableCredit" name = "availableCredit" readonly> </div> <input type="checkBox" id="useThis" name = "useThis"> Use this Credit </div> <div class="col-md-6"> <div class="form-group"> <label for="field-3" class="control-label">Due Amount</label> <input type="text" class="form-control" id="dueAmount" name = "dueAmount" readonly> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="field-6" class="control-label">Amount</label> <input type="number" class="form-control" id="amount" name = "amount" value="0.00"> </div> </div> <div class="col-md-3 d-none"> <div class="form-group"> <label for="field-7" class="control-label">Tax Deduction(if any)</label> <input type="number" class="form-control" id="taxdeduction" name="taxdeduction" value="0.00"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="exampleInputPassword1">Payment Mode</label> <select class="form-control" name="payment_mode"> <option value="">-- Select Payment Mode --</option> <option value="Cash">Cash</option> <option value="Cheque">Cheque</option> <option value="Bank Transfer">Bank Transfer</option> <option value="Payment Gateway">Payment Gateway</option> </select> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="field-7" class="control-label">Payment Date</label> <input type="text" class="form-control" id="payment_date" name="payment_date"> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="field-7" class="control-label">Remark</label> <input type="text" class="form-control" id="remark" name="remark"> </div> </div> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary waves-effect" data-dismiss="modal">Close</button> <button type="button" id="btnRecordPayment" class="btn btn-info waves-effect waves-light">Submit</button> </div> </div> </div> </form> </div> <div id="cancelInvoiceModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop="static" data-keyboard="false" aria-hidden="true"> <form method="post" id="cancelInvoiceForm"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Cancel Invoice</h4> </div> <div class="modal-body"> <input type="hidden" class="form-control" id="invoiceId1" name ="invoiceId1"> <input type="hidden" class="form-control" id="companyId1" name ="companyId1"> <input type="hidden" class="form-control" id="paidAmountInput" name ="paidAmountInput"> <div class="row" id="divRefundMode" style="display:none"> <div class="col-md-6"> <div class="form-group"> <label for="field-3" class="control-label">Refund Mode</label> <select class="form-control" id="refundMode" name = "refundMode"> <option value="">--Select--</option> <option value="Original Source">Original Source</option> <option value="Add to Credit">Add to Credit</option> </select> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label for="field-3" class="control-label">Cancellation Note</label> <input type="text" class="form-control" id="cancelnote" name = "cancelnote"> </div> </div> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary waves-effect" data-dismiss="modal">Close</button> <button type="button" id="saveCancellation" class="btn btn-info waves-effect waves-light">Submit</button> </div> </div> </div> </form> </div> <!-- END wrapper --> <!-- Chart Js --> <script src='https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.min.js'></script> <script src='https://cdnjs.cloudflare.com/ajax/libs/c3/0.4.11/c3.min.js'></script> <script src='https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.3/Chart.js'></script> <!-- jQuery --> <script src="assets/js/jquery.min.js"></script> <script src="assets/js/popper.min.js"></script><!-- Popper for Bootstrap --> <script src="assets/js/bootstrap.min.js"></script> <script src="assets/js/metisMenu.min.js"></script> <script src="assets/js/waves.js"></script> <script src="assets/js/jquery.slimscroll.js"></script> <!-- Dashboard init --> <script src="assets/pages/jquery.dashboard.js"></script> <!-- App js --> <script src="assets/js/jquery.core.js"></script> <script src="assets/js/jquery.app.js"></script> <!-- Chart Js --> <!-- <script src="assets/pie charts/script.js"></script> --> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/jquery.validate.js"></script> <!-- <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js'></script> --> <script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <!-- Required datatable js --> <script src="plugins/datatables/jquery.dataTables.min.js"></script> <script src="plugins/datatables/dataTables.bootstrap4.min.js"></script> <!-- Buttons examples --> <script src="plugins/datatables/dataTables.buttons.min.js"></script> <script src="plugins/datatables/buttons.bootstrap4.min.js"></script> <script src="plugins/datatables/jszip.min.js"></script> <script src="plugins/datatables/pdfmake.min.js"></script> <script src="plugins/datatables/vfs_fonts.js"></script> <script src="plugins/datatables/buttons.html5.min.js"></script> <script src="plugins/datatables/buttons.print.min.js"></script> <script src="plugins/datatables/buttons.colVis.min.js"></script> <!-- Responsive examples --> <script src="plugins/datatables/dataTables.responsive.min.js"></script> <script src="plugins/datatables/responsive.bootstrap4.min.js"></script> <script src="plugins/sweet-alert2/sweetalert2.min.js"></script> <script src="plugins/jquery-toastr/jquery.toast.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function() { $('#datatable').DataTable({ ordering:false }); //Buttons examples var table = $('#datatable-buttons').DataTable({ lengthChange: false, buttons: ['copy', 'excel', 'pdf', 'colvis'] }); table.buttons().container() .appendTo('#datatable-buttons_wrapper .col-md-6:eq(0)'); }); $(document).ready(function(){ if (localStorage.getItem("PaymentAdded") == "true") { successMessage("Payment Successfully Saved."); localStorage.setItem("PaymentAdded", "false"); } if (localStorage.getItem("InvoiceDeleted") == "true") { successMessage("Invoice Successfully deleted."); localStorage.setItem("InvoiceDeleted", "false"); } if (localStorage.getItem("InvoiceInserted") == "true") { successMessage("Invoice Successfully Created."); localStorage.setItem("InvoiceInserted", "false"); } if (localStorage.getItem("InvoiceInsertedfail") == "true") { errorMessage("Failed !"); localStorage.setItem("InvoiceInsertedfail", "false"); } if (localStorage.getItem("InvoiceDeleted") == "true") { successMessage("Invoice Successfully Deleted."); localStorage.setItem("InvoiceDeleted", "false"); } if (localStorage.getItem("CancelInvoice") == "true") { successMessage("Invoice successfully cancelled."); localStorage.setItem("CancelInvoice", "false"); } if (localStorage.getItem("InvoiceUpdate") == "true") { successMessage("Invoice Successfully Update."); localStorage.setItem("InvoiceUpdate", "false"); } }); function payAmount(button, companyId){ var invoiceId = $(button).val(); var referenceNo = $(button).parent().siblings(':nth-child(4)').html(); var invoice_referenceId = $(button).parent().siblings(':nth-child(5)').html(); var invoiceAmount = $(button).parent().siblings(':nth-child(8)').html(); var paidAmount = getPaidAmount(referenceNo); invoiceAmount = invoiceAmount*1; paidAmount = paidAmount*1; var dueAmount = invoiceAmount - paidAmount; if(dueAmount <= 0){ dueAmount = 0.00; } $.ajax({ url : "PHP/response.php", data : "action=getAvailableCredit&companyId="+companyId, method : "POST", async : false, success : function(response){ $("#invoiceId").val(invoiceId); $("#referenceId").val(referenceNo); $("#invoice_referenceId").val(invoice_referenceId); $("#companyId").val(companyId); $("#availableCredit").val(response); $("#dueAmount").val(dueAmount.toFixed(2)); $("#modalRecordPayment").modal("toggle"); }, error : function(err){} }); } function cancelInvoice(button){ swal({ title: 'Are you sure?', text: "Do you really want to cancel this invoice??", type: 'warning', showCancelButton: true, confirmButtonColor: '#4fa7f3', cancelButtonColor: '#d57171', confirmButtonText: "Yes, I'm Sure!" }).then(function () { var invoiceId = $(button).val(); $("#invoiceId1").val(invoiceId); var paidAmount = $(button).parent().siblings(':nth-child(8)').html(); paidAmount = paidAmount*1; if(paidAmount > 0){ $("#divRefundMode").css({"display":"block"}); } var companyId = $(button).attr('data-companyname'); $("#companyId1").val(companyId); $("#paidAmountInput").val(paidAmount); $("#cancelInvoiceModal").modal("toggle"); // var referenceNo = $(button).parent().siblings(':first').html(); }); } $("#saveCancellation").click(function(){ $paidAmountInput = $("#paidAmountInput").val(); $paidAmountInput = $paidAmountInput * 1; if($("#cancelnote").val() == ""){ errorToast("Please enter cancellation notes"); } else if(($paidAmountInput > 0) && ($("#refundMode").val() == "")){ errorToast("Please select refund mode"); } else{ // alert("ok"); $.ajax({ url : "PHP/response.php", data : $("#cancelInvoiceForm").serialize()+"&action=cancelInvoice&createdBy=<?php echo $_SESSION["login_email"]; ?>&sourceId=<?php echo $source_id; ?>", method : "POST", async : false, success : function(response){ if(response.trim() == "SUCCESS"){ localStorage.setItem("CancelInvoice", "true"); location.reload(); } else{ errorMessage("ERROR-"+response); } }, error: function(xhr, ajaxOptions, thrownError){ errorToast("Error-"+xhr.status); }, }); } }); function getPaidAmount(referenceNo){ var result = 0.00; $.ajax({ url : "PHP/response.php", data : "action=getPaidAmount&referenceNo="+referenceNo, method : "POST", async : false, success : function(response){ result = response*1; }, error : function(err){} }); return result; } $("#btnRecordPayment").click(function(){ $.ajax({ url : "PHP/response.php", data : $("#formRecordPayment").serialize()+"&action=recordPayment&createdBy=<?php echo $_SESSION["login_email"]; ?>&sourceId=<?php echo $source_id; ?>", method : "POST", async : false, success : function(response){ if(response == 1){ localStorage.setItem("PaymentAdded", "true"); location.reload(); } else{ errorMessage("payment could not be saved"); } }, error : function(err){} }); }); function errorToast(msg){ $.toast({ heading: 'Error!', text: msg, position: 'top-right', loaderBg: '#bf441d', icon: 'error', hideAfter: 3000, stack: 1 }); } function successMessage(msg){ swal({ title: 'Success!', text: msg, type: 'success', confirmButtonColor: '#4fa7f3' }); } function errorMessage(msg){ swal({ title: 'Error!', text: msg, type: 'error', confirmButtonColor: '#4fa7f3' }); } $(document).ready(function() { $("#payment_date").datepicker({ dateFormat: 'dd MM yy' }); $("#payment_date").datepicker("setDate", new Date()); }); function deleteInvoice(button){ var itemId = $(button).val(); swal({ title: 'Are you sure?', text: "Do you really want to restore this Item??", type: 'warning', showCancelButton: true, confirmButtonColor: '#4fa7f3', cancelButtonColor: '#d57171', confirmButtonText: "Yes, I'm Sure!" }).then(function () { $.ajax({ url : "PHP/response.php", data : "action=DeleteInvoice&id="+itemId, method : "POST", async : false, success : function(response){ if(response == "DELETED"){ localStorage.setItem("InvoiceDeleted", "true"); location.replace('invoice.php'); } else{ errorMessage("Item could not be deleted."); } }, error : function(error){ errorMessage("Item could not be deleted."); } }); }); } </script> </body> </html>