FEAT_UI_CHANGES_IN_REPORTS

This commit is contained in:
Srinivas-Saravanan 2025-04-02 15:39:08 +05:30
parent 9486dd1e7d
commit 660647bcf5
5 changed files with 6820 additions and 6239 deletions

File diff suppressed because it is too large Load Diff

View File

@ -25,6 +25,15 @@
<link href="<?php echo base_url(); ?>assets/css/app-creative-dark.min.css" rel="stylesheet" type="text/css" id="app-dark-stylesheet"><!-- icons --> <link href="<?php echo base_url(); ?>assets/css/app-creative-dark.min.css" rel="stylesheet" type="text/css" id="app-dark-stylesheet"><!-- icons -->
<link href="<?php echo base_url(); ?>assets/css/icons.min.css" rel="stylesheet" type="text/css"> <link href="<?php echo base_url(); ?>assets/css/icons.min.css" rel="stylesheet" type="text/css">
<style> <style>
.dataTable tbody td {
padding-right: 10px;
}
.mb-3, .my-3 {
margin-top: -53px;
margin-bottom: -27px !important;
}
.mb25{ .mb25{
margin-bottom: 25px; margin-bottom: 25px;
} }
@ -39,18 +48,29 @@
} }
th::before {
margin-top: -13px !important;
top: 6px !important;
}
th::after{
/* display: inline-block; */
/* text-align: center; */
top: 0px !important;
}
/* .form-group { /* .form-group {
font-size: 11px; font-size: 11px;
padding: 5px; padding: 5px;
} */ } */
.body { .body {
font-size: 10px; font-size: 12px;
} }
.table { .table {
font-size: 9px; font-size: 12px;
border-spacing:0px; border-spacing:10px;
} }
@ -67,9 +87,9 @@
.table tbody{ .table tbody{
position: relative; position: relative;
overflow: auto; overflow: auto;
max-height: 350px; max-height: 700px;
width: 100%; width: 100%;
font-weight: bold; /* font-weight: bold; */
} }
.table thead th{ .table thead th{
@ -95,26 +115,7 @@
padding: 0.10rem; padding: 0.10rem;
} }
#toggle-column-modal-button, #scroll-horizontal-datatable_wrapper .buttons-csv, #scroll-horizontal-datatable_filter label{
z-index: 99;
position: relative;
}
#scroll-horizontal-datatable_filter label{
margin-top:15px;
margin-left:-236px;
}
#scroll-horizontal-datatable_filter{
margin-left:-246px;
margin-right: 880px;
margin-top: -67px;
}
#scroll-horizontal-datatable_wrapper .buttons-csv{
height: 36px;
padding: 6px 20px;
line-height: 17px;
margin-left: 42px;
margin-top: -46px;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination { div.dataTables_wrapper div.dataTables_paginate ul.pagination {
margin: 23px 0; margin: 23px 0;
} }
@ -211,23 +212,23 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<option selected="selected"value="6">VENDOR GST</option> <option selected="selected"value="6">VENDOR GST</option>
<option selected="selected" value="7">RECIPIENT</option> <option selected="selected" value="7">RECIPIENT</option>
<option selected="selected"value="8">RECIPIENT GST</option> <option value="8">RECIPIENT GST</option>
<option selected="selected"value="9">INVOICE NUMBER</option> <option selected="selected"value="9">INVOICE NUMBER</option>
<option selected="selected"value="10">INVOICE DATE</option> <option selected="selected"value="10">INVOICE DATE</option>
<option selected="selected"value="11">HSN</option> <option value="11">HSN</option>
<option selected="selected"value="12">TAXABLE VALUE</option> <option selected="selected"value="12">TAXABLE VALUE</option>
<option selected="selected"value="13">CGST VALUE</option> <option value="13">CGST VALUE</option>
<option selected="selected"value="14">CGST RATE</option> <option value="14">CGST RATE</option>
<option selected="selected"value="15">SGST VALUE</option> <option value="15">SGST VALUE</option>
<option selected="selected"value="17">SGST RATE</option> <option value="16">SGST RATE</option>
<option selected="selected"value="18">IGST VALUE</option> <option value="17">IGST VALUE</option>
<option selected="selected"value="19">IGST RATE</option> <option value="18">IGST RATE</option>
<option selected="selected"value="20">TOTAL INVOICE VALUE</option> <option selected="selected"value="19">TOTAL INVOICE VALUE</option>
<option selected="selected"value="21">TOTAL VALUE</option> <option selected="selected"value="20">TOTAL VALUE</option>
<option selected="selected"value="22">STATUS</option> <option selected="selected"value="21">STATUS</option>
<option selected="selected"value="23">TICKET TYPE</option> <option selected="selected"value="22">TICKET TYPE</option>
<option selected="selected"value="24">AIRLINE FILE NAME</option> <option selected="selected"value="23">AIRLINE FILE NAME</option>
<option selected="selected"value="25">EXTRACTION DATE</option> <option selected="selected"value="24">EXTRACTION DATE</option>
<!-- <option selected="selected"value="26">BATCH ID</option> --> <!-- <option selected="selected"value="26">BATCH ID</option> -->
<!-- <option selected="selected" value="0">Icon for Select Option</option> --> <!-- <option selected="selected" value="0">Icon for Select Option</option> -->
</select> </select>
@ -246,39 +247,39 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
</form> </form>
</div> </div>
<table id="scroll-horizontal-datatable" class="table w-100 nowrap"> <table id="scroll-horizontal-datatable" class="table table-striped nowrap w-100">
<thead> <thead>
<button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal" style=" <!-- <button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal" style="
margin-top: -43px; margin-top: -43px;
margin-right: 1228px; margin-right: 1228px;
"> <i class="fa fa-eye"></i> </button> "> <i class="fa fa-eye"></i> </button> -->
<tr> <tr>
<th hidden>S.NO</th> <th hidden>S.NO</th>
<th hidden>INVOICE ID</th> <th hidden>INVOICE ID</th>
<th>PAX NAME</th> <th>PAX NAME</th>
<th>PNR</th> <th>PNR</th>
<th>TICKET NO</th> <th>TKT</th>
<th>VENDOR</th> <th hidden>VENDOR</th>
<th>VENDOR GST</th> <th hidden>VENDOR GST</th>
<th>RECIPIENT</th> <th>REC</th>
<th>RECIPIENT GST</th> <th >REC GST</th>
<th>INVOICE NUMBER</th> <th>INV NUMBER</th>
<th>INVOICE DATE</th> <th>INV DATE</th>
<th >HSN</th> <th >HSN</th>
<th>TAXABLE VALUE</th> <th>TAX VAL</th>
<th>CGST VALUE</th> <th >CGST VAL</th>
<th >CGST RATE</th> <th >CGST RATE</th>
<th>SGST VALUE</th> <th >SGST VAL</th>
<th >SGST RATE</th> <th >SGST RATE</th>
<th>IGST VALUE</th> <th >IGST VAL</th>
<th >IGST RATE</th> <th >IGST RATE</th>
<th>TOTAL INVOICE VALUE</th> <th>TOT INV VAL</th>
<th>TOTAL VALUE</th> <th>TOT VAL</th>
<th>STATUS</th> <th>STATUS</th>
<th>TICKET TYPE</th> <th>TKT TYPE</th>
<th>AIRLINE FILE NAME</th> <th>AIRLINE FILE NAME</th>
<th>EXTRACTION DATE</th> <th>EXTR DATE</th>
<th>BATCH ID</th> <th>BATCH ID</th>
</tr> </tr>
</thead> </thead>
@ -291,26 +292,27 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<td><?php echo $value->pax_name; ?></td> <td><?php echo $value->pax_name; ?></td>
<td><?php echo $value->pnr; ?></td> <td><?php echo $value->pnr; ?></td>
<td><?php echo $value->ticket_no; ?></td> <td><?php echo $value->ticket_no; ?></td>
<td><?php echo $value->vendor; ?></td> <td hidden><?php echo $value->vendor; ?></td>
<td><?php echo $value->vendor_gst; ?></td> <td hidden><?php echo $value->vendor_gst; ?></td>
<td><?php echo $value->recepient; ?></td> <td><?php echo $value->recepient; ?></td>
<td><?php echo $value->recepient_gst; ?></td> <td><?php echo $value->recepient_gst; ?></td>
<td><?php echo $value->invoice_no?></td> <td><?php echo $value->invoice_no?></td>
<td><?php echo $value->invoice_dt; ?></td> <td><?php echo $value->invoice_dt; ?></td>
<td><?php echo $value->hsn; ?></td> <td><?php echo $value->hsn; ?></td>
<td><?php echo $value->taxable_value; ?></td> <td style="text-align: right;"><?php echo (int) $value->taxable_value; ?></td>
<td><?php echo $value->cgst_value;?></td> <td style="text-align: right;"><?php echo (int) $value->cgst_value;?></td>
<td><?php echo $value->cgst_rate; ?></td> <td style="text-align: right;"><?php echo (int) $value->cgst_rate; ?></td>
<td><?php echo $value->sgst_value; ?></td> <!-- <td hidden>kkk</td> -->
<td><?php echo $value->sgst_rate; ?></td> <td style="text-align: right;"><?php echo (int) $value->sgst_value; ?></td>
<td><?php echo $value->igst_value; ?></td> <td style="text-align: right;"><?php echo (int) $value->sgst_rate; ?></td>
<td><?php echo $value->igst_rate; ?></td> <td style="text-align: right;"><?php echo (int) $value->igst_value; ?></td>
<td><?php echo $value->total_inv_value; ?></td> <td style="text-align: right;"><?php echo (int) $value->igst_rate; ?></td>
<td><?php echo $value->total_values; ?></td> <td style="text-align: right;"><?php echo (int) $value->total_inv_value; ?></td>
<td style="text-align: right;"><?php echo (int) $value->total_values; ?></td>
<td><?php echo $value->status; ?></td> <td><?php echo $value->status; ?></td>
<td><?php echo $value->ticket_type; ?></td> <td><?php echo $value->ticket_type; ?></td>
<td><?php echo $value->airline_file_name; ?></td> <td><?php echo $value->airline_file_name; ?></td>
<td><?php echo $value->extraction_date; ?></td> <td><?php echo date('d-m-Y', strtotime($value->extraction_date)); ?></td>
<td><?php echo $value->batch_id; ?></td><?php <td><?php echo $value->batch_id; ?></td><?php
} }
?> ?>
@ -388,15 +390,25 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
$(document).ready(function() { $(document).ready(function() {
oTable = $("#scroll-horizontal-datatable").DataTable({ oTable = $("#scroll-horizontal-datatable").DataTable({
lengthChange: !1, lengthChange: true,
"paging": true,
"lengthMenu": [10, 25, 50, 100],
"pageLength": 50,
dom: 'Bfrtip', // dom: 'Bflrtip',
"dom": '<"row mb-3"<"col-md-4 d-flex justify-content-start align-items-center"l><"col-md-4 d-flex justify-content-end align-items-center"f><"col-md-4 d-flex justify-content-end align-self-start"B>>rtip',
buttons: [ buttons: [
{ {
extend: "csvHtml5", extend: "csvHtml5",
exportOptions: { exportOptions: {
columns: [ 0, 1, 2, 3, 4, 23, 24, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,19,20,21,22] columns: [ 0, 1, 2, 3, 4, 23, 24, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,19,20,21,22]
} }
},
{
text: "Columns",
action: function (e, dt, node, config) {
$('#columnModal').modal('show');
}
} }
// 'copyHtml5', // 'copyHtml5',
@ -418,8 +430,13 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
//// } //// }
// ], // ],
scrollX: !0, scrollX: !0,
"paging": true, // "paging": false,
"pageLength": 50, // "pageLength": 50,
"columnDefs": [{
"targets": [11,8,13,14,15,16,17,18],
"visible": false
}],
language: { language: {
paginate: { paginate: {
previous: "<i class='mdi mdi-chevron-left'>", previous: "<i class='mdi mdi-chevron-left'>",

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>TMC GST INV</title> <title>TMC GST INV</title>
@ -38,96 +39,135 @@
<link href="<?php echo base_url(); ?>assets/css/icons.min.css" rel="stylesheet" type="text/css" /> <link href="<?php echo base_url(); ?>assets/css/icons.min.css" rel="stylesheet" type="text/css" />
<style> <style>
.dataTable tbody td {
padding-right: 10px;
}
th::before {
margin-top: -16px !important;
top: 6px !important;
margin-right: 4px !important;
}
th::after {
/* display: inline-block; */
/* text-align: center; */
top: -2px !important;
margin-right: 4px !important;
}
.mb25 { .mb25 {
margin-bottom: 25px; margin-bottom: 25px;
} }
.required { .required {
color: red; color: red;
} }
#bs-select-1 { #bs-select-1 {
max-height: 150px !important; max-height: 150px !important;
overflow-y: auto !important; overflow-y: auto !important;
} }
.left{
} .left {}
.table tr, table td {
padding: 5px; /* Adjust the padding as needed to decrease the cell height */ .table tr,
table td {
padding: 5px;
/* Adjust the padding as needed to decrease the cell height */
line-height: 2; line-height: 2;
/* Adjust the line-height as needed for tighter cell spacing */ /* Adjust the line-height as needed for tighter cell spacing */
} }
.table tbody { .table tbody {
position: relative; position: relative;
overflow: auto; overflow: auto;
max-height: 350px; /* max-height: 30px; */
width: 100%; width: 100%;
} }
.table thead th { .table thead th {
vertical-align: middle; vertical-align: middle;
} }
.dataTables_scrollBody
{
max-height: 390px; .dataTables_scrollBody {
/* max-height: 100px; */
width: 1129px; width: 1129px;
} }
.footer
{ .footer {
padding-top: 19px; padding-top: 19px;
padding-right: 17px; padding-right: 17px;
padding-bottom: 2px; padding-bottom: 2px;
padding-left: 17px; padding-left: 17px;
} }
.highlight-gst-inv { .highlight-gst-inv {
background-color: #FFFFFF; /* Light grey for GST Invoice Number */ background-color: #FFFFFF;
/* Light grey for GST Invoice Number */
} }
.highlight-gst-inv_fare { .highlight-gst-inv_fare {
background-color: #FFFFFF; /* Light grey for GST Invoice Number */ background-color: #FFFFFF;
/* Light grey for GST Invoice Number */
} }
.highlight-tmc-tkt { .highlight-tmc-tkt {
background-color: #f0f0f0; /* Lighter grey for TMC Ticket Number */ background-color: #f0f0f0;
/* Lighter grey for TMC Ticket Number */
} }
.highlight-tmc-pax { .highlight-tmc-pax {
background-color:#f0f0f0; /* Lighter grey for TMC Ticket Number */ background-color: #f0f0f0;
/* Lighter grey for TMC Ticket Number */
} }
.highlight-tmc-tkt_fare { .highlight-tmc-tkt_fare {
background-color: #f0f0f0; /* Lighter grey for TMC Ticket Number */ background-color: #f0f0f0;
/* Lighter grey for TMC Ticket Number */
} }
.highlight-airline-inv { .highlight-airline-inv {
background-color: #f0f0f0; /* Light grey for Airline Invoice Number */ background-color: #f0f0f0;
/* Light grey for Airline Invoice Number */
} }
.highlight-airline-tkt { .highlight-airline-tkt {
background-color: #f0f0f0; /* Light sandal for Airline Ticket Number */ background-color: #f0f0f0;
/* Light sandal for Airline Ticket Number */
} }
.highlight-airline-tkt_fare { .highlight-airline-tkt_fare {
background-color: #f0f0f0; /* Light sandal for Airline Ticket Number */ background-color: #f0f0f0;
/* Light sandal for Airline Ticket Number */
} }
/* ...your existing styles */ /* ...your existing styles */
.fare-mismatch td { .fare-mismatch td {
color:red; /* Ensures text is readable on dark red background */ color: red;
/* Ensures text is readable on dark red background */
} }
<style> <style>.mb25 {
.mb25{
margin-bottom: 25px; margin-bottom: 25px;
} }
.required { .required {
color: red; color: red;
} }
#bs-select-1 { #bs-select-1 {
max-height: 150px !important; max-height: 150px !important;
overflow-y: auto !important; overflow-y: auto !important;
} }
.left{
} .left {}
/* .form-group { /* .form-group {
@ -135,20 +175,23 @@
padding: 5px; padding: 5px;
} */ } */
.body { .body {
font-size: 10px; font-size: 12px;
} }
.table { .table {
font-size: 9px; font-size: 12px;
border-spacing: 0px; border-spacing: 0px;
} }
label { label {
display: inline-block; display: inline-block;
margin-bottom: 2.5rem; margin-bottom: 2.5rem;
} }
.table tr, table td {
.table tr,
table td {
padding: 5px; padding: 5px;
/* line-height: 2; */ /* line-height: 2; */
/* Adjust the line-height as needed for tighter cell spacing */ /* Adjust the line-height as needed for tighter cell spacing */
@ -157,55 +200,35 @@
.table tbody { .table tbody {
position: relative; position: relative;
overflow: auto; overflow: auto;
max-height: 350px; /* max-height: 50px; */
width: 100%; width: 100%;
font-weight: bold; /* font-weight: bold; */
} }
.table thead th { .table thead th {
vertical-align: middle; vertical-align: middle;
} }
.dataTables_scrollBody
{
max-height: 390px;
width: 1129px;
}
.form-group { .form-group {}
} .table td,
.table td, .table th { .table th {
padding: 0.10rem; padding: 0.10rem;
} }
.dt-buttons,.btn-group .flex-wrap
{ .dt-buttons .flex-wrap {
margin-top: -185px; margin-top: -185px;
} }
#scroll-horizontal-datatable_filter label{
margin-top:15px;
margin-left:-236px;
}
#scroll-horizontal-datatable_filter {
margin-left: -280px;
margin-top: -122px;
}
#scroll-horizontal-datatable_filter label{
z-index: 99;
position: relative;
margin-right: 872px;
margin-top: 25px;
}
.dataTables_scroll{
margin-top:-27px;
}
/* Style the container for the table with a fixed header */
/* Style the container for the table with a fixed header */
.mb-3,
.my-3 {
margin-top: -53px;
margin-bottom: -27px !important;
}
</style> </style>
</head> </head>
@ -247,50 +270,20 @@
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<div class="row" style="margin-bottom:20px;"> <div style="margin-bottom: 2.5rem" class="row">
<form method="post" action="<?php echo base_url('corporate/tmc_gst_inv'); ?>"> <form class="col-md-12" method="post" action="<?php echo base_url('corporate/tmc_gst_inv'); ?>">
<h4 style="
margin-top: -18px;
">TMC GST INV</h4><br>
<div class="form-row" style="
margin-left: 782px;">
<!--
<div class="form-group col-md-2">
<label for="inputEmail4" class="col-form-label">GST No</label>
<select name="gst_no" class="form-control">
<?php
// foreach($gstno_list->result() as $gstno_i){
// echo '<option>'.$gstno_i->gn_gstno.'</option>';
// }
?>
</select> <div class="form-row">
<div class="form-group col-md-6" ><h4 class="page-title">TMC RECON</h4><br></div>
<div class="form-group col-md-6 d-flex justify-content-end align-items-center">
<div class="col-md-5"></div>
<div class="col-md-5 d-flex justify-content-end">
<input class="form-control input-daterange-datepicker" type="text" name="date" value="<?php echo $selected_data; ?>" />
</div> </div>
--> <div class="col-md-2 d-flex justify-content-end">
<button type="submit" class="btn btn-primary">Submit</button>
<div class="form-group col-md-5" style="margin-top:-34px;">
<label for="from_date">From</label>
<!-- <input type="date" class="form-control" id="from_date" name="from_date" style="
margin-top: -34px;" value="<?php echo isset($_POST['from_date']) ? $_POST['from_date'] : ''; ?>"> -->
<input type="date" class="form-control" id="from_date" name="from_date" style="
margin-top: -34px;z-index: 99;
position: relative;" value="2020-01-01">
</div> </div>
<div class="form-group col-md-5"style="margin-top:-34px;">
<label for="to_date">To</label>
<!-- <input type="date" class="form-control" id="to_date" name="to_date" style="
margin-top: -34px;"value="<?php echo isset($_POST['to_date']) ? $_POST['to_date'] : ''; ?>"> -->
<input type="date" class="form-control" id="to_date" name="to_date" style="
margin-top: -34px;z-index: 99;
position: relative;" value="<?php echo date('Y-m-d'); ?>">
</div>
<div class="form-group col-md-2">
<label for="inputPassword4" class="col-form-label"></label>
<button style="margin-top:-43px;font-size:12px;z-index: 99;
position: relative;" type="submit" class="btn btn-primary">Submit</button><br>
</div> </div>
@ -310,19 +303,19 @@
</form> </form>
</div> </div>
<table id="scroll-horizontal-datatable" class="table w-100 nowrap"> <table id="scroll-horizontal-datatable" class="table table-striped nowrap w-100">
<thead> <thead>
<tr> <tr>
<th>TMC Pax Name</th> <th>TMC PAX NAME</th>
<th>TMC Tkt number</th> <th>TMC TKT NUMBER</th>
<th>TMC Tkt Fare</th> <th>TMC TKT FARE</th>
<th>GST Inv Number</th> <th>GST INV NUMBER</th>
<th>GST Inv Value</th> <th>GST INV VALUE</th>
<th>Airline Inv Number</th> <th>AIRLINE INV NUMBER</th>
<th>Airline Tkt Number</th> <th>AIRLINE TKT NUMBER</th>
<th>Airline Tkt Fare</th> <th>AIRLINE TKT FARE</th>
<!-- <th>RECIPIENT</th> <!-- <th>RECIPIENT</th>
<th>RECIPIENT GST</th> <th>RECIPIENT GST</th>
<th>INVOICE NUMBER</th> <th>INVOICE NUMBER</th>
@ -355,12 +348,12 @@
<tr <?php if (!$anyFareEmpty && ($row->tmc_tkt_fare != $row->gst_fare || $row->tmc_tkt_fare != $row->airline_fare || $row->gst_fare != $row->airline_fare)) echo 'class="fare-mismatch"'; ?>> <tr <?php if (!$anyFareEmpty && ($row->tmc_tkt_fare != $row->gst_fare || $row->tmc_tkt_fare != $row->airline_fare || $row->gst_fare != $row->airline_fare)) echo 'class="fare-mismatch"'; ?>>
<td class="highlight-tmc-pax"><?php echo $row->tmc_pax; ?></td> <td class="highlight-tmc-pax"><?php echo $row->tmc_pax; ?></td>
<td class="highlight-tmc-tkt"><?php echo $row->tmc_ticket_no; ?></td> <td class="highlight-tmc-tkt"><?php echo $row->tmc_ticket_no; ?></td>
<td class="highlight-tmc-tkt_fare"><?php echo $row->tmc_tkt_fare; ?></td> <td style="text-align: right;" class="highlight-tmc-tkt_fare"><?php echo (int) $row->tmc_tkt_fare; ?></td>
<td class="highlight-gst-inv"><?php echo $row->gst_invoice_no; ?></td> <td class="highlight-gst-inv"><?php echo $row->gst_invoice_no; ?></td>
<td class="highlight-gst-inv_fare"><?php echo $row->gst_fare; ?></td> <td style="text-align: right;" class="highlight-gst-inv_fare"><?php echo (int) $row->gst_fare; ?></td>
<td class="highlight-airline-inv"><?php echo $row->airline_inv_no; ?></td> <td class="highlight-airline-inv"><?php echo $row->airline_inv_no; ?></td>
<td class="highlight-airline-tkt"><?php echo $row->airline_ticket_no; ?></td> <td class="highlight-airline-tkt"><?php echo $row->airline_ticket_no; ?></td>
<td class="highlight-airline-tkt_fare"><?php echo $row->airline_fare; ?></td> <td style="text-align: right;" class="highlight-airline-tkt_fare"><?php echo (int) $row->airline_fare; ?></td>
</tr> </tr>
<?php endforeach; ?> <?php endforeach; ?>
@ -475,13 +468,14 @@
$(document).ready(function() { $(document).ready(function() {
oTable = $("#scroll-horizontal-datatable").DataTable({ oTable = $("#scroll-horizontal-datatable").DataTable({
lengthChange: !1, lengthChange: true,
"paging": true, "paging": true,
"lengthMenu": [10, 25, 50, 100],
"pageLength": 50, "pageLength": 50,
// dom: 'Bfrtip', // dom: 'Bflrtip',
buttons: [ "dom": '<"row mb-3"<"col-md-4 d-flex justify-content-start align-items-center"l><"col-md-4 d-flex justify-content-end align-items-center"f><"col-md-4 d-flex justify-content-end align-self-start"B>>rtip',
{ buttons: [{
extend: "csvHtml5", extend: "csvHtml5",
exportOptions: { exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7] columns: [0, 1, 2, 3, 4, 5, 6, 7]
@ -506,7 +500,7 @@
//// className: "btn-light" //// className: "btn-light"
//// } //// }
// ], // ],
scrollX: !0, // scrollX: !0,
language: { language: {
paginate: { paginate: {
previous: "<i class='mdi mdi-chevron-left'>", previous: "<i class='mdi mdi-chevron-left'>",
@ -524,6 +518,84 @@ scrollX: !0,
}); });
</script> </script>
<script>
$(document).ready(function() {
var $select_data = '<?php echo $selected_data; ?>';
// Set default start date to 01/01/2020
var defaultStart = moment('01/01/2020', 'DD/MM/YYYY'); // ← Fixed start date
var defaultEnd = moment(); // Today
// Use submitted dates if available
if ($select_data && $select_data.indexOf(' - ') > -1) {
var parts = $select_data.split(' - ');
defaultStart = moment(parts[0], 'DD/MM/YYYY');
defaultEnd = moment(parts[1], 'DD/MM/YYYY');
}
// Initialize datepicker
$('input.input-daterange-datepicker').daterangepicker({
locale: {
format: 'DD/MM/YYYY',
cancelLabel: 'Clear'
},
startDate: defaultStart,
endDate: defaultEnd,
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
}
}).on('apply.daterangepicker', function(ev, picker) {
$(this).val(
picker.startDate.format('DD/MM/YYYY') + ' - ' +
picker.endDate.format('DD/MM/YYYY')
);
});
});
$(document).ready(function() {
// Reset form on initial load if it's not a deliberate submission
if (window.history.replaceState) {
window.history.replaceState(null, null, window.location.pathname);
}
var $select_data = '<?php echo $selected_data; ?>';
var defaultStart = moment('01/01/2020', 'DD/MM/YYYY');
var defaultEnd = moment();
if ($select_data && $select_data.indexOf(' - ') > -1) {
var parts = $select_data.split(' - ');
defaultStart = moment(parts[0], 'DD/MM/YYYY');
defaultEnd = moment(parts[1], 'DD/MM/YYYY');
}
$('input.input-daterange-datepicker').daterangepicker({
locale: { format: 'DD/MM/YYYY', cancelLabel: 'Clear' },
startDate: defaultStart,
endDate: defaultEnd,
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
}
}).on('apply.daterangepicker', function(ev, picker) {
$(this).val(
picker.startDate.format('DD/MM/YYYY') + ' - ' +
picker.endDate.format('DD/MM/YYYY')
);
});
});
</script>
</body> </body>
</html> </html>

View File

@ -1,5 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>TMC Recon</title> <title>TMC Recon</title>
@ -39,19 +40,38 @@
<!-- Include the StickyTableHeaders plugin --> <!-- Include the StickyTableHeaders plugin -->
<!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/StickyTableHeaders/0.1.1/jquery.stickytableheaders.min.js"></script> --> <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/StickyTableHeaders/0.1.1/jquery.stickytableheaders.min.js"></script> -->
<style> <style>
.text-end{
text-align: right;
}
.dataTable tbody td {
padding-right: 20px;
}
/* .dropdown-menu {
position: absolute !important;
will-change: transform !important;
transform: translate3d(0px, 0px, 0px) !important;
top: auto !important;
left: auto !important;
} */
.mb25 { .mb25 {
margin-bottom: 25px; margin-bottom: 25px;
} }
.required { .required {
color: red; color: red;
} }
#bs-select-1 { #bs-select-1 {
max-height: 150px !important; max-height: 150px !important;
overflow-y: auto !important; overflow-y: auto !important;
} }
.left{
} /* .left {} */
/* .form-group { /* .form-group {
@ -59,90 +79,123 @@
padding: 5px; padding: 5px;
} */ } */
.body { .body {
font-size: 10px; font-size: 12px;
} }
.table { .table {
font-size: 9px; font-size: 12px;
border-spacing: 0px; border-spacing: 0px;
} }
th::before {
margin-top: -16px !important;
top: 6px !important;
margin-right: -3px !important;
}
th::after{
/* display: inline-block; */
/* text-align: center; */
top: -2px !important;
margin-right: -3px !important;
}
.mb-3, .my-3 {
margin-top: -23px;
margin-bottom: -27px !important;
}
.formLabel{
margin-bottom: 0rem !important;
}
label { label {
display: inline-block; display: inline-block;
margin-bottom: 2.5rem; margin-bottom: 2.5rem;
} }
.table tr, table td {
.table tr,
table td {
padding: 5px; padding: 5px;
/* line-height: 2; */ line-height: 2;
/* Adjust the line-height as needed for tighter cell spacing */ /* Adjust the line-height as needed for tighter cell spacing */
} }
.table tbody { .table tbody {
position: relative; position: relative;
overflow: auto; overflow: auto;
max-height: 350px; /* max-height: 400px; */
width: 100%; width: 100%;
font-weight: bold; /* font-weight: bold; */
} }
.table thead th { .table thead th {
vertical-align: middle; vertical-align: middle;
} }
.dataTables_scrollBody
{
max-height: 390px; .dataTables_scrollBody {
/* max-height: 390px; */
width: 1129px; width: 1129px;
} }
.footer
{ .footer {
padding-top: 9px; padding-top: 9px;
padding-right: 17px; padding-right: 17px;
padding-bottom: 2px; padding-bottom: 2px;
padding-left: 17px; padding-left: 17px;
} }
.form-group { .form-group {
margin-bottom: -2rem; margin-bottom: -2rem;
} }
.table td, .table th {
.table td,
.table th {
padding: 0.10rem; padding: 0.10rem;
} }
/* Style the container for the table with a fixed header */ /* Style the container for the table with a fixed header */
/* Style the container for the table with a fixed header */ /* Style the container for the table with a fixed header */
.btn-group>.btn { /* .btn-group>.btn {
position: absolute; position: absolute;
flex: 1 1 auto; flex: 1 1 auto;
} } */
.btn{
/* .btn {
margin-left: 60px; margin-left: 60px;
margin-top: -94px; margin-top: -94px;
} */
#closeModal{
margin-left: 60px;
margin-top: -1px !important;
} }
.dataTables_filter{ /* .dataTables_filter {
margin-top: -94px; margin-top: -94px;
margin-right: 874px; margin-right: 874px;
} } */
.page-title { .page-title {
margin-top: -18px; margin-top: -18px;
} }
#toggle-column-modal-button, #scroll-horizontal-datatable_wrapper .buttons-csv, #scroll-horizontal-datatable_filter label{
z-index: 99;
position: relative;
}
#scroll-horizontal-datatable_filter label { #scroll-horizontal-datatable_filter label {
margin-top: -5px; margin-top: -5px;
} }
#scroll-horizontal-datatable_wrapper .buttons-csv{
height: 36px;
padding: 6px 20px; #viewOrDeleteDropdown{
line-height: 17px; /* margin-top: -14px; */
}
.dropdown,.bootstrap-select ,.show-tick .form-control
{
margin-top:4px;
} }
/* .btn ,.dropdown-toggle,.btn-light /* .btn ,.dropdown-toggle,.btn-light
{ {
margin-left:8px; margin-left:8px;
@ -150,12 +203,16 @@
*/ */
.dropdown-toggle { .dropdown-toggle {
margin-left: 8px; margin-left: 8px;
/* margin-top: -10px; */
} }
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
/* div.dataTables_wrapper div.dataTables_paginate ul.pagination {
margin: 11px 0; margin: 11px 0;
} } */
/* .dataTables_length{
margin-top: -31px;
padding-left: 19px;
} */
</style> </style>
</head> </head>
@ -229,9 +286,9 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<div class="row" style="margin-bottom:-6px;"> <div style="margin-bottom: 2.5rem" class="row">
<form class="col-md-12" id="formid"> <form class="col-md-12" id="formid">
<h4 class="page-title">TMC RECON</h4><br>
<div class="form-row"> <div class="form-row">
<!-- <!--
<div class="form-group col-md-2"> <div class="form-group col-md-2">
@ -246,23 +303,27 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
</div> </div>
--> -->
<div class="form-group col-md-6" style="margin-top:-4px;margin-left: 777px;"> <div class="form-group col-md-6" ><h4 class="page-title">TMC RECON</h4><br></div>
<div class="form-group col-md-6 d-flex justify-content-end align-items-center">
<label> FROM &nbsp;&nbsp;</label>
<!-- <label class="formLabel" for="from"> FROM &nbsp;&nbsp</label>
<input type="date" id="from" name="from" value="2020-01-01"> <input type="date" id="from" name="from" value="2020-01-01">
&nbsp;&nbsp; &nbsp;&nbsp;
<label> TO </label> <label class="formLabel" for="TO" > TO &nbsp;&nbsp</label>
<input type="date" id="TO" name="to" value="2023-01-01" &nbsp;&nbsp;=""> <input type="date" id="TO" name="to" value="2023-01-01" &nbsp;&nbsp;="">
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<label for="inputPassword4" class="col-form-label"></label> <label for="inputPassword4" class="col-form-label"></label>
<button style="margin-top:-6px;margin-left: -3px;font-size:10px;" type="submit" class="btn btn-primary">Submit</button><br> <button style="margin-top:-6px;margin-left: -3px;font-size:10px;" type="submit" class="btn btn-primary">Submit</button><br> -->
<div class="col-md-5"></div>
<div class="col-md-5 d-flex justify-content-end">
<input class="form-control input-daterange-datepicker" type="text" name="date" value="<?php echo $selected_data; ?>" />
</div>
<div class="col-md-2 d-flex justify-content-start">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div> </div>
<div class="form-group col-md-2">
</div>
<!-- <div class="form-group col-md-3" style="margin-top:-7px;"id="hidden-dropdown"> --> <!-- <div class="form-group col-md-3" style="margin-top:-7px;"id="hidden-dropdown"> -->
@ -280,15 +341,15 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<label for="selectColumn" style="margin-bottom:3.5rem">Select Column:</label> <label for="selectColumn" style="margin-bottom:3.5rem">Select Column:</label>
<select style="overflow-y:scroll" name="column_name" id="column_name" class="form-control selectpicker" multiple> <select style="overflow-y:scroll" name="column_name" id="column_name" class="form-control selectpicker" multiple>
<option selected="selected" value="1">TICKET NO</option> <option selected="selected" value="1">TICKET NO</option>
<option selected="selected" value="2">DOC TYPE </option> <option selected="selected" value="2">DOC </option>
<option selected="selected" value="3">PAX NAME</option> <option selected="selected" value="3">PAX NAME</option>
<!-- <option selected="selected" value="3">REF NO</option> --> <!-- <option selected="selected" value="3">REF NO</option> -->
<option selected="selected" value="5">TOTAL TKT FARE</option> <option selected="selected" value="5">TOTAL TKT</option>
<option selected="selected" value="6">INV NUM</option> <option selected="selected" value="6">INV NUM</option>
<option selected="selected" value="7">INV AMT</option> <option selected="selected" value="7">INV AMT</option>
<option selected="selected" value="8">INV DATE</option> <option selected="selected" value="8">INV DATE</option>
<option selected="selected" value="9">TMC INV NUM</option> <option selected="selected" value="9">TMC INV NUM</option>
<option selected="selected"value="10">BILLING ENTITY</option> <option value="10">BILLING ENTITY</option>
<option selected="selected" value="11">CARRIER</option> <option selected="selected" value="11">CARRIER</option>
<option selected="selected" value="12">SECTOR</option> <option selected="selected" value="12">SECTOR</option>
<option selected="selected" value="13">CABIN CLASS</option> <option selected="selected" value="13">CABIN CLASS</option>
@ -312,12 +373,12 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
</form> </form>
</div> </div>
<div class="table-container"> <div class="table-container">
<table id="scroll-horizontal-datatable" class="table w-100 nowrap"> <table id="scroll-horizontal-datatable" class="table table-striped nowrap w-100">
<button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal" style=" <!-- <button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal" style="
margin-top: -106px; margin-top: -106px;
margin-left: 10px;; margin-left: 10px;;
"> ">
<i class="fa fa-eye"></i> </button> <i class="fa fa-eye"></i> </button> -->
<!-- <!--
<table id="scroll-horizontal-datatable" class="table w-100 nowrap"> --> <table id="scroll-horizontal-datatable" class="table w-100 nowrap"> -->
<thead> <thead>
@ -326,18 +387,18 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<!-- <button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal"> <!-- <button id="toggle-column-modal-button" class="btn btn-link" data-toggle="modal" data-target="#columnModal">
<i class="fa fa-eye"></i> </button> --> <i class="fa fa-eye"></i> </button> -->
<th>TICKET NO</th> <th>TICKET NO</th>
<th>DOC TYPE</th> <th>DOC</th>
<th>PASSENGER NAME</th> <th>PASSENGER NAME</th>
<th>AIRLINE CODE</th> <th>AIRLINE</th>
<th>TOTAL TKT FARE</th> <th>TOT TKT</th>
<th>INV Num</th> <th>INV NUM</th>
<th>Inv Amt </th> <th>INV AMT </th>
<th>INV DATE</th> <th>INV DATE</th>
<th>TMC INVOICE NO</th> <th>TMC INV NO</th>
<th>BILLING ENTITY</th> <th>BILLING ENTITY</th>
<th>CARRIER</th> <th>CARRIER</th>
<th>SECTOR</th> <th>SECTOR</th>
<th>CABINCLASS</th> <th>CLASS</th>
<th>NET FARE</th> <th>NET FARE</th>
<th>REMARKS</th> <th>REMARKS</th>
<th>ACTION</th> <th>ACTION</th>
@ -433,15 +494,22 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
<div class="col-md-10"> <div class="col-md-10">
</div> </div>
<div class="col-md-2 mb25"> <div class="col-md-2 mb25">
<a id="addfields" onclick="addfields()" class="btn btn-primary" style="margin-top: 10px;margin-left: 18px;" ><i class="fa fa-plus"></i></a> <a id="addfields" onclick="addfields()" class="btn btn-primary" ><i class="fa fa-plus"></i></a>
</div> </div>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<!-- <div class="row">
<div class="col-md-6 justify-content-end">
<button class="btn btn-primary" type="submit" id="formsubmit" style="margin-top: 10px;margin-right: -32px;">Submit </div>
<div class="col-md-6 justify-content-end">
</div>
</div> -->
<button class="btn btn-primary" type="submit" id="formsubmit">Submit
</button> </button>
<button type="button" id="addclose" class="btn btn-default" style="margin-top: 10px; margin-right: -18px;"data-dismiss="modal">Close</button> <button type="button" id="addclose" class="btn btn-default" data-dismiss="modal">Close</button>
</div> </div>
@ -500,6 +568,7 @@ div.dataTables_wrapper div.dataTables_paginate ul.pagination {
//******************************************************** ***************************/ //******************************************************** ***************************/
! function(n) { ! function(n) {
"use strict"; "use strict";
function t() {} function t() {}
t.prototype.init = function() { t.prototype.init = function() {
n("#basic-colorpicker").colorpicker(), n("#hexa-colorpicker").colorpicker({ n("#basic-colorpicker").colorpicker(), n("#hexa-colorpicker").colorpicker({
@ -598,7 +667,6 @@ function() {
</script> </script>
<script> <script>
$('#usrforma').on('submit', function(e) { $('#usrforma').on('submit', function(e) {
e.preventDefault(); e.preventDefault();
var formData = new FormData($("#usrforma")[0]); var formData = new FormData($("#usrforma")[0]);
@ -654,7 +722,9 @@ function() {
$.ajax({ $.ajax({
url: '<?php echo base_url('corporate/getgstamt'); ?>', url: '<?php echo base_url('corporate/getgstamt'); ?>',
type: 'POST', type: 'POST',
data:{refid:$('#gstno_'+refid).val()}, data: {
refid: $('#gstno_' + refid).val()
},
success: function(data) { success: function(data) {
var pdata = JSON.parse(data); var pdata = JSON.parse(data);
if (pdata.status == 1) { if (pdata.status == 1) {
@ -666,14 +736,12 @@ function() {
$('#airline_invoice_' + refid).html('<a href="javascript:void(0)" onclick="tmcinvdownload(\'' + pdata.ti_file_name + '\')"/><i class="fa fa-download"></i></a>'); $('#airline_invoice_' + refid).html('<a href="javascript:void(0)" onclick="tmcinvdownload(\'' + pdata.ti_file_name + '\')"/><i class="fa fa-download"></i></a>');
$('#fileid_' + refid).prop('required', false); $('#fileid_' + refid).prop('required', false);
$('#fileidspan_' + refid).hide(); $('#fileidspan_' + refid).hide();
} } else {
else{
$('#airline_invoice_' + refid).html(''); $('#airline_invoice_' + refid).html('');
$('#fileid_' + refid).prop('required', true); $('#fileid_' + refid).prop('required', true);
$('#fileidspan_' + refid).show(); $('#fileidspan_' + refid).show();
} }
} } else {
else{
$('#manual_' + refid).val(1); $('#manual_' + refid).val(1);
$('#amtid_' + refid).val(''); $('#amtid_' + refid).val('');
$('#gdid_' + refid).val(''); $('#gdid_' + refid).val('');
@ -762,7 +830,9 @@ function() {
$.ajax({ $.ajax({
url: '<?php echo base_url('corporate/get_tmc_airline_invoice'); ?>', url: '<?php echo base_url('corporate/get_tmc_airline_invoice'); ?>',
type: 'POST', type: 'POST',
data:{tdid:tdid}, data: {
tdid: tdid
},
success: function(data) { success: function(data) {
var htmlData = ''; var htmlData = '';
var pdata1 = JSON.parse(data); var pdata1 = JSON.parse(data);
@ -831,23 +901,26 @@ function() {
oTable = $("#scroll-horizontal-datatable").DataTable({ oTable = $("#scroll-horizontal-datatable").DataTable({
scrollX: true,
"paging": true, "paging": true,
"lengthMenu": [10, 25, 50, 100],
"pageLength": 50, "pageLength": 50,
lengthChange: !1, lengthChange: true,
dom: 'Bfrtip', // dom: 'Bflrtip',
buttons: [ "dom": '<"row mb-3"<"col-md-4 d-flex justify-content-start align-items-center"l><"col-md-4 d-flex justify-content-end align-items-center"f><"col-md-4 d-flex justify-content-end align-self-start"B>>rtip',
{ buttons: [{
extend: "csvHtml5", extend: "csvHtml5",
exportOptions: { exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
} }
},
{
text: "Columns",
action: function (e, dt, node, config) {
$('#columnModal').modal('show');
}
} }
// 'copyHtml5',
// 'excelHtml5',
// 'csvHtml5'
// 'pdfHtml5'
], ],
// buttons: [{ // buttons: [{
@ -875,29 +948,87 @@ function() {
drawCallback: function() { drawCallback: function() {
$(".dataTables_paginate > .pagination").addClass("pagination-rounded") $(".dataTables_paginate > .pagination").addClass("pagination-rounded")
}, },
columns : [ columns: [{
{ data: null, defaultContent: '', orderable: false }, data: null,
{ data : "td_tkt"}, defaultContent: '',
{ data : "td_doc_type"}, orderable: false
{ data : "td_pax"}, },
{ data : "td_segment"}, {
{ data : "td_tkt_fare"}, data: "td_tkt"
{ data : "inv"}, },
{ data : "amt",defaultContent: ''}, {
{ data : "tdate", defaultContent: ''}, data: "td_doc_type"
{ data : "td_gst_inv"}, },
{ data : "td_billing_entity"}, {
{ data : "td_carrier"}, data: "td_pax"
{ data : "td_sector"}, },
{ data : "td_cabin_class"}, {
{ data : "td_net"}, data: "td_segment"
{ data : "d_remarks"}, },
{ data : "td_id"} {
data: "td_tkt_fare"
},
{
data: "inv"
},
{
data: "amt",
class: "text-end",
defaultContent: '',
render: function(data, type, row) {
if (data) {
// Convert the value to an integer (remove decimals)
return Math.floor(data); // or Math.round(data) if you want to round to the nearest integer
}
return '';
}
},
{
data: "tdate",
defaultContent: '',
render: function(data, type, row) {
if (data) {
// Parse the date using moment and format it as 'd-m-Y'
let formattedDate = moment(data).format('DD-MM-YYYY');
// Check if the date is valid
if (moment(data).isValid()) {
return formattedDate;
} else {
return ''; // Return an empty string if the date is invalid
}
}
return '';
}
},
{
data: "td_gst_inv"
},
{
data: "td_billing_entity"
},
{
data: "td_carrier"
},
{
data: "td_sector"
},
{
data: "td_cabin_class"
},
{
data: "td_net",
class: "text-end"
},
{
data: "d_remarks"
},
{
data: "td_id"
}
], ],
"columnDefs": [ "columnDefs": [{
{ "targets": [11, 0,10],
"targets":[11,0],
"visible": false "visible": false
}, },
{ {
@ -906,7 +1037,17 @@ function() {
"render": function(data, type, full, meta) { "render": function(data, type, full, meta) {
if (data == '') if (data == '')
data = ''; data = '';
return data;
// return ` ${data.length > 9 ? data.substring(0, 8) + ` <i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${data}"></i>` : data}`
return ` ${data.length > 10 ?
`<span title="${data}">${data.substring(0, 9)}...</span>` :
data}`;
// return data;
} }
}, },
// { // {
@ -918,35 +1059,132 @@ function() {
// return data; // return data;
// } // }
// }, // },
{
"targets":4,
"width":"100",
"render":function(data,type,full,meta){
// console.log("airline data : ",full['td_segment']);
const airline_type = full['td_segment'];
// return ` ${airline_type.length > 3 ? airline_type.substring(0, 3) + ` <i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${airline_type}"></i>` : airline_type}`
return ` ${airline_type.length > 3 ?
`<span title="${airline_type}">${airline_type.substring(0, 3)}...</span>` :
airline_type}`;
}
},
{
"targets":13,
"width":100,
"render":function(data,type,full,meta){
const cabin_class = full['td_cabin_class'] || '';
// return ` ${cabin_class.length > 3 ? cabin_class.substring(0, 3) + ` <i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${cabin_class}"></i>` : cabin_class}`
return ` ${cabin_class.length > 3 ?
`<span title="${cabin_class}">${cabin_class.substring(0, 3)}...</span>` :
cabin_class}`;
}
},
{
"targets":12,
"width":100,
"render":function(data,type,full,meta){
const sector = full['td_sector'] || '';
// return ` ${sector.length > 7 ? sector.substring(0, 6) + `<i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${sector}"></i>` : sector}`
return ` ${sector.length > 5 ?
`<span title="${sector}">${sector.substring(0, 5)}...</span>` :
sector}`;
}
},
{ {
"targets": 15, "targets": 15,
"width": 300, "width": 300,
"render": function(data, type, full, meta) { "render": function(data, type, full, meta) {
console.log(full['inv']); // console.log("Full invoice : ", full['inv']);
if (full['inv'] !== " ") { if (full['inv'] !== " ") {
return 'Invoice Received'; var status = 'Invoice Received';
// return ` ${status.length > 10 ? status.substring(0, 10) + ` <i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${status}"></i>` : status}`
return `<span title="${status}" class="cell-tooltip">${
status.length > 10 ? status.substring(0, 10) + '...' : status
}</span>`;
} else { } else {
// Show d_remarks here // Show d_remarks here
return full['d_remarks']; const remarks = full['d_remarks'] || '';
// return ` ${remarks.length > 10 ? remarks.substring(0, 10) + ` <i class="fe-alert-circle"
// style="color: #000;"
// aria-hidden="true"
// data-toggle="tooltip"
// data-placement="top"
// title="${remarks}"></i>` : remarks}`
return `<span title="${remarks}" class="cell-tooltip">${
remarks.length > 10 ? remarks.substring(0, 10) + '...' : remarks
}</span>`;
} }
} }
}, },
{ {
"targets": 16, "targets": 16, // Automatically targets the last column
"width": 300, "width": 100,
"render": function(data, type, full, meta) { "render": function(data, type, full, meta) {
console.log(full['inv']); if (full['inv'] && full['inv'].trim() !== "") {
if (full['inv'] !== " ") { return `
return `<div style="display:flex;"><button type="text" style="border:none;" class="form-control" id="${full['td_id']}" data-refid="${full['td_tkt']}" value="${full['td_tkt']}" onclick="viewinvfn(this.value)"><i class="fa fa-eye" style="margin-right:51px;"</i></button></div>`; <div id = "viewOrDeleteDropdown" class="btn-group dropdown">
<a href="javascript:void(0);"
class="dropdown-toggle arrow-none btn btn-sm"
data-toggle="dropdown"
aria-expanded="false">
<i class="mdi mdi-dots-vertical"></i>
</a>
<div class="dropdown-menu dropdown-menu-right">
<a class="dropdown-item" href="#" onclick="viewinvfn('${full['td_tkt']}')">
<i class="fa fa-eye mr-2 text-muted font-12 vertical-middle"></i> View
</a>
</div>
</div>`;
} else { } else {
return `<div style="display:flex;"><button type="text" style="border:none;" class="form-control" data-refid="${data}" value="${data}" onclick="viewfn(${data},1)"><i class="fa fa-eye" style="margin-right: 4px;"></i></button><button type="text" style="border:none;" class="form-control" id="${data}" onclick="viewfn(${data},1)"><i class="fa fa-trash"></i></button></div>`; return `
<div id = "viewOrDeleteDropdown" class="btn-group dropdown">
<a href="javascript:void(0);"
class="dropdown-toggle arrow-none btn btn-sm"
data-toggle="dropdown"
aria-expanded="false">
<i class="mdi mdi-dots-vertical"></i>
</a>
<div class="dropdown-menu dropdown-menu-right">
<a class="dropdown-item" href="#" onclick="viewinvfn('${full['td_tkt']}')">
<i class="fa fa-eye mr-2 text-muted font-12 vertical-middle"></i> View
</a>
<a class="dropdown-item" href="#" onclick="viewfn(${full['data'] || 0}, 1)">
<i class="fa fa-trash mr-2 text-muted font-12 vertical-middle"></i> Delete
</a>
</div>
</div>`;
} }
} }
}, },
{ {
"targets": 6, "targets": 6,
"width": 300, "width": 300,
@ -986,7 +1224,23 @@ function() {
] ],
drawCallback: function() {
$('.dropdown-toggle', this.api().table().container()).dropdown({
popperConfig: {
placement: 'bottom-start', // Position below the button, aligned to the left
modifiers: {
preventOverflow: {
boundariesElement: 'viewport' // Ensure it stays within the viewport
},
flip: {
enabled: true // Allow flipping if it would overflow
}
},
container: 'body' // Append the dropdown to the <body>
}
});
}
}); });
@ -1002,20 +1256,33 @@ function() {
$('#column_name').change(function() { $('#column_name').change(function() {
var all_column = ["0", "1", "2", "3", "4", "5", "6","7","8","9","10","11","12","13","14"]; var all_column = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14","15","16"];
var remove_column = $('#column_name').val(); var remove_column = $('#column_name').val();
var remaining_column = all_column.filter(function(obj) { return remove_column.indexOf(obj) == -1; }); var remaining_column = all_column.filter(function(obj) {
return remove_column.indexOf(obj) == -1;
});
oTable.columns(remove_column).visible(true); oTable.columns(remove_column).visible(true);
oTable.columns(remaining_column).visible(false); oTable.columns(remaining_column).visible(false);
}); });
$(document).on("hidden.bs.dropdown", ".btn-group", function() {
var $menu = $(this).find(".dropdown-menu");
if (!$menu.parent().is(".btn-group")) {
$(this).append($menu.detach());
$menu.css({
"position": "",
"top": "",
"left": "",
"z-index": ""
});
}
});
function capitalize(s) function capitalize(s) {
{
str1 = s.replace(/\_/g, " "); str1 = s.replace(/\_/g, " ");
str1 = str1[0].toUpperCase() + str1.slice(1); str1 = str1[0].toUpperCase() + str1.slice(1);
str1 = str1.replace(/\Pnr/g, "PNR "); str1 = str1.replace(/\Pnr/g, "PNR ");
@ -1031,7 +1298,9 @@ function() {
function viewinvfn(tkt_no) { function viewinvfn(tkt_no) {
$.ajax({ $.ajax({
url: '<?php echo base_url('corporate/get_tic_gst1/') ?>', url: '<?php echo base_url('corporate/get_tic_gst1/') ?>',
data:{inv_no:tkt_no}, data: {
inv_no: tkt_no
},
type: 'POST', type: 'POST',
success: function(data) { success: function(data) {
var Pdata = JSON.parse(data); var Pdata = JSON.parse(data);
@ -1069,25 +1338,24 @@ function() {
}) })
}); });
function deletetmcrecon(data) function deletetmcrecon(data) {
{
var r = confirm("Are you sure you want to delete this"); var r = confirm("Are you sure you want to delete this");
if (r==true) if (r == true) {
{
//User Pressed okay. Delete //User Pressed okay. Delete
$.ajax({ $.ajax({
url: '<?php echo base_url('Tmc/delete_tmc_recon') ?>', url: '<?php echo base_url('Tmc/delete_tmc_recon') ?>',
type: 'POST', type: 'POST',
data: { id : data }, data: {
id: data
},
success: function(data) { success: function(data) {
if (data == 1) { if (data == 1) {
alert("Deleted") alert("Deleted")
// location.reload(); // location.reload();
$("#formid").submit() $("#formid").submit()
} } else {
else{
alert("Request failed. Kindly try after sometime") alert("Request failed. Kindly try after sometime")
} }
}, },
@ -1095,18 +1363,14 @@ function() {
alert('Request failed. Kindly try after sometime.'); alert('Request failed. Kindly try after sometime.');
} }
}); });
} } else {
else
{
//user pressed cancel. Do nothing //user pressed cancel. Do nothing
console.log("done"); console.log("done");
} }
} }
</script> </script>
<script> <script>
var oTable; var oTable;
$(document).ready(function() { $(document).ready(function() {
@ -1142,7 +1406,7 @@ $(document).ready(function() {
} }
}); });
</script> </script>
<script> <!-- <script>
// Set the default value to today // Set the default value to today
var today = new Date(); var today = new Date();
var dd = String(today.getDate()).padStart(2, '0'); var dd = String(today.getDate()).padStart(2, '0');
@ -1152,8 +1416,49 @@ var yyyy = today.getFullYear();
var todayFormatted = yyyy + '-' + mm + '-' + dd; var todayFormatted = yyyy + '-' + mm + '-' + dd;
document.getElementById('TO').value = todayFormatted; document.getElementById('TO').value = todayFormatted;
</script> </script> -->
<script>
$(document).ready(function() {
var $select_data = '<?php echo $selected_data; ?>';
var dateRangeFilter = $('input.input-daterange-datepicker')
.daterangepicker({
locale: {
format: 'DD/MM/YYYY',
cancelLabel: 'Clear'
},
startDate: $select_data ? moment($select_data.split(' - ')[0], 'DD/MM/YYYY') : moment(),
endDate: $select_data ? moment($select_data.split(' - ')[1], 'DD/MM/YYYY') : moment(),
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'This Month': [moment().startOf('month'), moment().endOf('month')]
}
})
.on('apply.daterangepicker', function(ev, picker) {
var formattedStartDate = picker.startDate.format('DD/MM/YYYY');
var formattedEndDate = picker.endDate.format('DD/MM/YYYY');
var selectedDateRange = formattedStartDate + ' - ' + formattedEndDate;
$(this).val(selectedDateRange);
})
.on('cancel.daterangepicker', function() {
$(this).val('');
});
$('.today-btn').on('click', function() {
var today = moment();
dateRangeFilter.data('daterangepicker').setStartDate(today);
dateRangeFilter.data('daterangepicker').setEndDate(today);
dateRangeFilter.val(today.format('DD/MM/YYYY') + ' - ' + today.format('DD/MM/YYYY'));
dateRangeFilter.trigger('apply.daterangepicker');
});
// Trigger "Today" button click to set it as default if $select_data is empty
if ($select_data === '') {
$('.today-btn').trigger('click');
}
});
</script>
<!-- Long Content Scroll Modal --> <!-- Long Content Scroll Modal -->
@ -1171,7 +1476,7 @@ document.getElementById('TO').value = todayFormatted;
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> <button id="closeModal" type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<!-- <button type="button" class="btn btn-primary">Save changes</button> --> <!-- <button type="button" class="btn btn-primary">Save changes</button> -->
</div> </div>
</div><!-- /.modal-content --> </div><!-- /.modal-content -->
@ -1179,9 +1484,5 @@ document.getElementById('TO').value = todayFormatted;
</div><!-- /.modal --> </div><!-- /.modal -->
</body> </body>
</html> </html>