nhance/app/Views/ticket_search.php

325 lines
14 KiB
PHP

<style>
.col-12 {
max-width: 98% !important;
}
</style>
<div class="row">
<div class="col-12" style="margin-top: -12px;">
<div id="accordion" class="mb-3">
<div class="card mb-1">
<h5 class="m-1">
<div class="row">
<div class="col-md-6">
<h4 style="text-align: left;">Claim Filter</h4>
</div>
<div class="col-md-6">
<a style="text-align: right;" id="toggleIcon" class="text-dark float-right" data-toggle="collapse" href="#collapseOne"
aria-expanded="true">
<i id="icon" class="mdi mdi-chevron-down mr-1 text-primary" style="font-size: 28px;"></i>
</a></div>
</div>
</h5>
<div id="collapseOne" class="collapse hide" aria-labelledby="headingOne" data-parent="#accordion">
<div class="card-body">
<div class="form-group">
<div class="form-row">
<div class="form-group col-md-3">
<label for="ticket_type"> Claim Type <span class="text-danger"></span></label>
<select class="form-control" id="ticket_type" name="ticket_type">
<option value="0">Select claim Type</option>
<?php
if (isset($ticket_type) && count($ticket_type)) {
foreach ($ticket_type as $key => $value) {
echo "<option value='" . $key . "'>" . $value . "</option>";
}
}
?>
</select>
</div>
<!-- <div class="form-group col-md-3">
<label for="pod_no">POD No<span class="text-danger"></span></label>
<input type="text" class="form-control" id="pod_no" name="pod_no">
</div> -->
<div class="form-group col-md-3">
<label for="insurer_id">Insurer<span class="text-danger"></span></label>
<select class="form-control" id="insurer_id" name="insurer_id">
<option value="0">Select Insurer</option>
<?php
if (isset($insurer_list) && count($insurer_list)) {
foreach ($insurer_list as $key => $value) {
echo "<option value='" . $value['id'] . "'>" . $value['name'] . "</option>";
}
}
?>
</select>
</div>
<div class="form-group col-md-3">
<label for="tpa_id">TPA<span class="text-danger"></span></label>
<select class="form-control" id="tpa_id" name="tpa_id">
<option value="0">Select TPA</option>
<?php
if (isset($tpa_list) && count($tpa_list)) {
foreach ($tpa_list as $key => $value) {
echo "<option value='" . $value['id'] . "'>" . $value['name'] . "</option>";
}
}
?>
</select>
</div>
<div class="form-group col-md-3">
<label for="claim_no">Claim No<span class="text-danger"></span></label>
<input type="text" class="form-control" id="claim_no" name="claim_no">
</div>
<div class="form-group col-md-3">
<label for="client_id"> Corporate Name <span class="text-danger"></span></label>
<select class="form-control" id="client_id" name="client_id">
<option value="0">Select Corporate</option>
<?php
if (isset($client_list) && count($client_list)) {
foreach ($client_list as $key => $value) {
echo "<option value='" . $value['id'] . "'>" . $value['client_name'] . "</option>";
}
}
?>
</select>
</div>
<div class="form-group col-md-3">
<label for="emp_code">Employee ID<span class="text-danger"></span></label>
<input type="text" class="form-control" id="emp_code" name="emp_code">
</div>
<!-- <div class="form-group col-md-3">
<label for="tpa_id">TPA ID<span class="text-danger"></span></label>
<input type="text" class="form-control" id="tpa_id" name="tpa_id">
</div> -->
<div class="form-group col-md-3">
<label for="emp_mobile_no">Employee Mobile No<span
class="text-danger"></span></label>
<input type="text" class="form-control" id="emp_mobile_no" name="emp_mobile_no">
</div>
<div class="form-group col-md-3">
<label for="claim_status">Status<span class="text-danger"></span></label>
<select class="form-control" id="claim_status" name="claim_status">
<option value="0">Select status</option>
<?php /*
if (isset($claim_status) && count($claim_status)) {
foreach ($claim_status as $key => $value) {
echo "<option value=" . $value['id'] . ">" . $value['status'] . "</option>";
}
}
*/ ?>
</select>
</div>
<div class="form-group col-md-12 text-right m-b-0" style="margin-bottom: -15px;">
<a href="#" class="btn btn-secondary" id="clear-filters">Clear</a>
<a class="btn btn-primary" id="get-emp-list" onclick="fetchTicketListData();">Submit</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- end page title -->
<div class="row" id="ticket_list_div">
<?php include('ticket_list.php'); ?>
</div>
<script>
$(document).ready(function() {
// Initialize select2
$('#client_id').select2();
$('#claim_status').select2();
$('#insurer_id').select2();
$('#tpa_id').select2();
});
$('#ticket_type').on('change',function(){
var ticket_type = $('#ticket_type').val();
var claim_status = <?= json_encode($claim_status) ?>;
$('#claim_status').empty();
$('#claim_status').append($('<option>', {
value: '',
text: 'Select Claim Status'
}));
// console.log('Claim Status:', claim_status);
for (var i = 0;i<claim_status.length;i++){
if(claim_status[i]['ticket_type'] == ticket_type){
$('#claim_status').append($('<option>', {
value: claim_status[i]['id'], // Use 'id' as the value
text: claim_status[i]['claim_status'] // Use 'claim_status' as the text
}));
}
}
})
function fetchTicketListData() {
var ticket_type = $('#ticket_type').val();
var pod_no = $('#pod_no').val();
var claim_no = $('#claim_no').val();
var emp_code = $('#emp_code').val();
var claim_status = $('#claim_status').val();
var emp_mobile_no = $('#emp_mobile_no').val();
var tpa_id = $('#tpa_id').val();
var client_id = $('#client_id').val();
var insurer_id = $('#insurer_id').val();
var tpa_id = $('#tpa_id').val();
var requestData = {
ticket_type_id: ticket_type,
pod_no: pod_no,
claim_number: claim_no,
emp_code: emp_code,
claim_status_id: claim_status,
emp_mobile: emp_mobile_no,
tpa_id: tpa_id,
client_id: client_id,
insurer_id: insurer_id,
tpa_id: tpa_id,
};
let filterData = requestData;
localStorage.setItem('filterData', JSON.stringify(filterData));
console.log("requestData", requestData);
var url = '<?= base_url('/ticket/list') ?>';
$('.loader').fadeIn();
$('.loader-mask').fadeIn();
sendAjaxRequestForGlobal(url, 'POST', requestData, function(response) {
console.log('Filter Responce', response);
if (response.status == true) {
$('#ticket_list_div').empty();
$('#ticket_list_div').html(response.html);
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
} else {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
let message = response.message;
toastr.error(message, 'ERROR');
}
}, function(xhr, status, error) {
console.error('Error fetching data:', error);
console.error(xhr.responseText);
toastr.error('An error occurred while fetching the data.', 'ERROR');
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
});
}
</script>
<script>
$(document).ready(function(){
let filterData = localStorage.getItem('filterData');
filterData = filterData ? JSON.parse(filterData) : null;
console.log('Filter Data', filterData);
if(filterData){
var url = '<?= base_url('/ticket/list') ?>';
$('.loader').fadeIn();
$('.loader-mask').fadeIn();
sendAjaxRequestForGlobal(url, 'POST', filterData, function(response) {
console.log('Filter Responce', response);
if (response.status == true) {
$('#ticket_list_div').empty();
$('#ticket_list_div').html(response.html);
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
} else {
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
let message = response.message;
toastr.error(message, 'ERROR');
}
}, function(xhr, status, error) {
console.error('Error fetching data:', error);
console.error(xhr.responseText);
toastr.error('An error occurred while fetching the data.', 'ERROR');
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
});
$('#ticket_type').val(filterData.ticket_type_id);
$('#pod_no').val(filterData.pod_no);
$('#claim_no').val(filterData.claim_number);
$('#emp_code').val(filterData.emp_code);
$('#claim_status').val(filterData.claim_status_id);
$('#emp_mobile_no').val(filterData.emp_mobile);
$('#tpa_id').val(filterData.tpa_id);
$('#client_id').val(filterData.client_id);
$('#insurer_id').val(filterData.insurer_id);
$('#tpa_id').val(filterData.tpa_id);
}
})
</script>
<script>
$(document).on('click', '#clear-filters', function (e) {
e.preventDefault(); // Stops the browser from following the link
console.log('Clear Filters Area');
localStorage.removeItem('filterData');
$('#ticket_type').val('0');
$('#pod_no').val('');
$('#claim_no').val('');
$('#emp_code').val('');
$('#claim_status').val('0');
$('#emp_mobile_no').val('');
$('#tpa_id').val('0');
$('#client_id').val('0');
$('#insurer_id').val('0');
window.location.href = "<?= base_url("/ticket/list")?>";
});
</script>