golf_backend/app/Views/credit_points_list.php
2023-09-01 13:10:52 +05:30

360 lines
12 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<style>
.dataTables_filter{
margin-top: -35px;
}
.buttons-csv{
background-color: white;
color: #002B60;
border-color: #000;
}
.test {
box-shadow: 0 2px 6px 0 rgba(0,86,193,.5);
cursor: pointer;
color: #fff;
font-size: 15px;
padding: 10px;
width: 55px;
height: 25px;
line-height: 8px;
background: #00B4D5;
border-radius: 5px;
font-weight: 500;
display: block;
}
/* th{
text-align: center;
} */
</style>
<!-- start page title -->
<input id="empName" type="hidden" value="<?php echo $fname." ".$lname; ?> "><input id="empId" type="hidden" value=" <?php echo $id; ?>">
<div class="row">
<div class="col-12">
<div class="page-title-box page-title-box-alt">
<a href="<?php echo base_url().'members_list'; ?>" title="Back" ><i class="mdi mdi-keyboard-backspace" style="font-size: 35px;"></i></a>
<h4 class="page-title">Member Name : <?php echo $fname." ".$lname; ?> , Balance : <?php echo $avaiable_credit; ?></h4>
<div class="page-title-right">
<ol class="breadcrumb m-0">
<li class="breadcrumb-item manage-credits" >
<button type="button" class="btn btn-primary waves-effect waves-light">Manage Credits</button>
</li>
<!-- <li class="breadcrumb-item"><a href="javascript: void(0);">Tables</a></li>
<li class="breadcrumb-item active">Datatables</li> -->
</ol>
</div>
</div>
</div>
</div>
<!-- end page title -->
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-body">
<!-- <h4 class="header-title">Buttons example</h4>
<p class="text-muted font-13 mb-4">
</p> -->
<table id="datatable-buttons" class="table table-striped dt-responsive nowrap w-100">
<thead>
<tr>
<th hidden>id</th>
<th style="text-align: center;">Order Id</th>
<th style="text-align: center;">Order Date</th>
<th style="text-align: center;">Expiry Date</th>
<th style="text-align: center;">Credit Transactions</th>
<th style="text-align: center;">Credit Balance</th>
</tr>
</thead>
<tbody>
<?php foreach ($credit_data as $row)
{ ?>
<tr>
<td hidden><?php echo $row['id'];?></td>
<td style="text-align: center;"><?php echo $row['order_id'];?></td>
<td style="text-align: center;"><?php $date = new DateTime($row['created_at']); echo $date->format('M d , Y'); ?></td>
<td style="text-align: center;"><?php $expirydate = new DateTime($row['expiring_date']); echo $expirydate->format('M d , Y'); ?></td>
<td style="text-align: center;">
<?php
if($row['running_balance'] + $row['used_points'] == 0)
{
$balance = "- ".$row['credit_points'];
}else{
$balance = "+ ".$row['credit_points'];
}
echo $balance;
?>
</td>
<td style="text-align: center;"> <?php echo $row['avaiable_credit'];?> </td>
</tr>
<?php } ?>
</tbody>
</table>
</div> <!-- end card body-->
</div> <!-- end card -->
</div><!-- end col-->
</div>
<!-- end row-->
<!-- Modal content for the Large example -->
<!-- <div class="modal fade" id="bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" id="modalname">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myLargeModalLabel"></h4>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div>
<div id="plus" class="plus-ico" style="font-size:25px;text-align: end;padding-right: 40px;"></div>
<div class="modal-body" id="model-table" ></div>
</div>
</div>
</div>
</div> -->
<!-- Modal content for the Large example -->
<div class="modal fade" id="bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" id="modalname">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myLargeModalLabel"></h4>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div>
<div class="modal-body" id="model-table" ></div>
</div>
</div>
</div>
</div>
<script>
$(document).on('click','.manage-credits',function(){
var rule_key = '14';
$.ajax({
url:"<?= base_url(); ?>get_pack_list",
method: 'GET',
success: function(response) {
pack=[];
res = JSON.parse(response);
res.data.forEach((val,index) => {
pack[index] = `<option value="${val.id}">${val.package_name}</option>`;
});
addForm = `<div class="myform">
<form id="myform" method="POST" action="<?= base_url(); ?>add_creditsModel">
<input id="member_id" type="hidden" name="member_id" value="${ $('#empId').val() }">
<div class="row" style="width:80%;margin:auto;">
<div class="mb-1 mt-2 col-md-4 ">
<label >Add Credit points</label>
<input type="radio" class="add_or_sub" id="add" name="add_or_sub" value="add" checked>
</div>
<div class="mb-1 mt-2 col-md-4 ">
<label >Reduce Credit Points</label>
<input type="radio" class="add_or_sub" id="sub" name="add_or_sub" value="sub">
</div>
<div class="mb-1 mt-2 col-md-12 changeClass">
<label class="form-label">Pack</label>
<select name="package_name" id="packs" class="form-control">
<option value="CreditPoints">Custom credit points</option>
${pack}
</select>
</div>
<div id="count_hide_show" class="mb-1 mt-2"></div>
<div class="mb-1 mt-2 col-md-4">
<label class="form-label">Credit<span style="color: red;margin-left: 4px;">*</label>
<input type="number" class="form-control" min="1" name="credit_points" id="credit" required value="1" onkeypress = "return matchnum(event)">
</div>
<div class="mb-1 mt-2 col-md-4">
<label class="form-label">Cost($)<span style="color: red;margin-left: 4px;">*</label>
<input type="text" class="form-control" name="cost" id="cost" readonly required value="${res.OnePackValue[0]['value']}">
</div>
<div class="mb-1 mt-2 col-md-4">
<label class="form-label">Method<span style="color: red;margin-left: 4px;">*</label>
<select name="method" id="method" class="form-control" required>
<option value="">SELECT</option>
<option value="card">Card</option>
<option value="cash">Cash</option>
<option value="cash">Others</option>
</select>
</div>
<div class="mb-1 mt-2 col-md-12">
<label class="form-label">Remarks</label>
<input type="text" class="form-control" name="remarks" maxlength="30">
<span style="color: red;margin-left: 4px;"><i>Remarks must be 30 characters</i></span>
</div>
</div>
<div style="text-align:center;margin-top:30px;"><button type="submit" class="btn btn-primary waves-effect waves-light" id="button">Add</button></div>
</form>
</div>`
$('#myLargeModalLabel').html("Add Credits For "+$('#empName').val()+" ")
$('#model-table').html(addForm);
$('#bs-example-modal-lg').modal('show');
$('#credit').on('keyup', function(){
var CrieditCount = $(this).val();
var cost = res.OnePackValue[0]['value'];
var costcount = cost * CrieditCount;
$('#cost').val(costcount);
if (CrieditCount == 0)
{
$('#button').prop('disabled', true);
}
else
{
$('#button').prop('disabled', false);
}
});
$('#credit').on('click', function(){
if($('#packs').val() == 'CreditPoints')
{
var CrieditCount = $(this).val();
var cost = res.OnePackValue[0]['value'];
var costcount = cost * CrieditCount;
$('#cost').val(costcount);
if (CrieditCount == 0 || CrieditCount == "")
{
$('#button').prop('disabled', true);
}
else
{
$('#button').prop('disabled', false);
}
}
});
if ($('#credit').val() == 0)
{
$('#button').hide();
}
else
{
$('#button').show();
}
},
error: function(xhr, status, error) {
// Handle the error here
console.error(error);
}
});
});
</script>
<script>
$(document).on('change','#packs',function(){
id = $(this).val();
$.ajax({
url:"<?= base_url(); ?>get_pack_list",
method: 'POST',
data: { 'id' : id },
success: function(response) {
res = JSON.parse(response);
console.log(res)
if( res.data.length > 0)
{
$('.changeClass').removeClass('col-md-12').addClass('col-md-8');
count_hide_show = `<label class="form-label">Count</label><input type="number" class="form-control" name="count" min="1" value="1" onKeyDown="return false" id="count">`;
$("#count_hide_show").addClass("col-md-4");
$('#count_hide_show').html(count_hide_show);
$('#credit').val(res.data[0]['credit']);
$('#credit').attr('readonly', true);
$('#cost').val(Number(res.data[0]['cost']).toFixed(2));
$('#cost').attr('readonly', true);
$('#count').on('input', function() {
var countValue = $(this).val();
var calculatedCredit = res.data[0]['credit'] * countValue;
$('#credit').val(calculatedCredit);
var calculatedCost = Number(res.data[0]['cost']).toFixed(2) * countValue
$('#cost').val(calculatedCost);
});
}
else
{
$('.changeClass').removeClass('col-md-8').addClass('col-md-12');
$('#count_hide_show').removeClass('col-md-4');
$('#count_hide_show').html('');
$('#credit').removeAttr('readonly');
$('#credit').val('1');
$('#cost').val(res.OnePackValue[0]['value']);
$('#cost').removeAttr('readonly');
}
},
error: function(xhr, status, error) {
// Handle the error here
console.error(error);
}
});
});
</script>
<script>
$(document).ready(function() {
$('#datatable-buttons').DataTable({
"order": [[0, 'desc']], // Set initial sorting to descending on the first column
"dom": 'Bfrtip', // Show export buttons
// "buttons": ['copy', 'csv', 'excel', 'pdf'], // Enable export options
// "language": {
// "search": "Search: " // Customize search label
// }
});
});
function matchnum(event)
{
var charcode;
charcode = event.which || event.keyCode;
if(charcode>= 48 && charcode <= 57)return true; //only numbers
return false;
}
$(document).on('change','.add_or_sub',function(){
if($(this).val() == 'sub')
{
$('#button').html('Reduse');
}else{
$('#button').html('Add');
}
});
</script>