ria/app/Views/Report_openorder.php
2025-04-23 19:12:08 +05:30

424 lines
13 KiB
PHP
Executable File

<script>
$(document).ready(function() {
$("#client_name").select2();
$("#item_name").select2();
$("#purchaseorder_number").select2();
});
</script>
<link rel="stylesheet" href="https://cdn.datatables.net/buttons/1.4.2/css/buttons.dataTables.min.css">
<style>
table{
width:auto;
}
.dataTables_filter input {
padding: 4px;
}
.dataTables_filter {
/* width: 50%; */
float: right;
text-align: right;
}
.dataTables_paginate {
width: 50%;
float: right;
text-align: right;
}
div.dt-buttons {
position: relative;
/* float: right; */
}
</style>
<div class="content-page">
<div class="content">
<!-- Start Content-->
<div class="container-fluid">
<!-- start page title -->
<div>
<div class="row">
<div class="col-12">
<div class="page-title-box page-title-box-alt">
<div class="page-title-right">
<ol class="breadcrumb m-0">
<li class="breadcrumb-item"><a href="javascript: void(0);">Reports</a></li>
<li class="breadcrumb-item"><a href="javascript: void(0);">Requisation</a></li>
<li class="breadcrumb-item active">
<h4 class="page-title"><b> Open Orders - Pending </b></h4>
</li>
</ol>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="card">
<!-- <form class="Date-filter-form" id="DateRangeFilter" style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;"> -->
<div class="card-body">
<form method="post" action="<?php echo base_url('openOrder') ?>">
<div class="form-group has-feedback">
<div class="row">
<div class="col-md-3">
<label for="to_date">
<?php echo 'Year'; ?>
</label>
<div class="input-group">
<select class="form-control" id="financialyear" name="financialyear">
<option value="">Select Year</option>
<?php
foreach($finyear as $item):
{?>
<option value="<?php echo $item->financial_year;?>"><?php echo $item->financial_year ; ?></option>
<?php } endforeach; ?>
</select>
</div>
</div>
<div class="col-md-3">
<label for="to_date">
<?php echo 'Month'; ?>
</label>
<div class="input-group">
<select class="form-control" id="month" name="month">
<option value="">Select Month</option>
<option value="January">January</option>
<option value="February">February</option>
<option value="March">March</option>
<option value="April">April</option>
<option value="May">May</option>
<option value="June">June</option>
<option value="July">July</option>
<option value="August">August</option>
<option value="September">September</option>
<option value="October">October</option>
<option value="November">November</option>
<option value="December">December</option>
</select>
</div>
</div>
<div class="col-md-3">
<label for="total_order_value_From">
<?php echo 'Total Order Value From'; ?>
</label>
<div class="input-group">
<input class="form-control" name="total_order_value_From" id="total_order_value_From" style="padding:4px;">
</span>
</div>
</div>
<div class="col-md-3">
<label for="total_order_value_To">
<?php echo 'Total Order Value To'; ?>
</label>
<div class="input-group">
<input class="form-control" name="total_order_value_To" id="total_order_value_To" style="padding:4px;">
</span>
</div>
</div>
</div>
<br>
<div class="row">
<div class="col-md-3">
<label for="from_date">
<?php echo 'From Date'; ?>
</label>
<div class="input-group">
<input name="from_date" id="max-date" class="form-control datepicker">
</div>
</div>
<div class="col-md-3">
<label for="to_date">
<?php echo 'To Date'; ?>
</label>
<div class="input-group">
<input name="to_date" id="min-date" class="form-control datepicker">
</div>
</div>
<div class="col-md-6 text-right"><br>
<input type="button" class="btn btn-danger m-2" value="Reset" onclick="window.location.href='<?= base_url('openOrder') ?>';">
<input type="submit" class="btn btn-success" name="btn_submit"
value="View Report">
</div>
</div>
</div>
</form>
<table id="cc" class="table table-bordered table-hover wrap" style="background-color:#fff;width: 100% !important;">
<!-- <table class="table table-bordered table-hover" id="asset_list_table" style="background-color:#fff;font-size:12px;"> -->
<thead>
<tr>
<th>PO No</th>
<th>PO Type</th>
<th>PO Date</th>
<th>Approved Date</th>
<th>Requested Department</th>
<th>Total Order Value &nbsp;(&#8377;)</th>
</tr>
</thead>
<tbody>
<?php
$tot=0.00;
if(!empty($open_po)){
foreach($open_po as $rel)
{
?>
<tr>
<td><span><?php echo $rel->PONO?></span></td>
<td><span><?php echo $rel->POType?></span></td>
<td><span><?php echo $rel->PODate?></span></td>
<td><span><?php echo $rel->ApprovedDate?></span></td>
<td><span><?php echo $rel->Dept_Name?></span></td>
<td align="right"><span><?php
$tot= $tot + number_format($rel->TotalOrderValue,2,'.','');
echo number_format($rel->TotalOrderValue,2,'.','')?></span></td>
</tr>
<?php
}
}
?>
</tbody>
<tfoot>
<td style="text-align:center"><?php
$t='Total';
echo $t;?></td>
<td><?php echo '';?></td>
<td><?php echo '';?></td>
<td><?php echo '';?></td>
<td><?php echo '';?></td>
<td style="text-align:right"><?php echo number_format($tot,2,'.','');?></td>
</tfoot>
</table>
</div> <!-- end card body-->
</div> <!-- end card -->
</div><!-- end col-->
</div>
</div>
</div> <!-- container -->
</div> <!-- content -->
</div>
<script src="https://cdn.datatables.net/buttons/1.4.2/js/dataTables.buttons.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/pdfmake.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/vfs_fonts.js"></script>
<script src="https://cdn.datatables.net/buttons/1.4.2/js/buttons.html5.min.js"></script>
<script src="https://cdn.datatables.net/buttons/1.4.2/js/buttons.colVis.min.js"></script>
<script src="https://cdn.datatables.net/plug-ins/1.10.16/sorting/datetime-moment.js"></script>
<script>
// Bootstrap datepicker
// Set up your table
$(document).ready(function() {
// Initialize the DataTable with only pagination enabled
var table = $('#cc').DataTable({
dom: 'Blfrtip',
buttons: [
{
extend: 'excel',
text: 'Excel',
}
],
paging: true, // Enable pagination
searching: true, // Disable search
ordering: false, // Disable column sorting
info: false, // Disable table information
lengthChange: false, // Disable page length options
pageLength: 10, // Default rows per page
responsive: true, // Keep responsive design
language: {
paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon
previous: '<i class="fas fa-angle-left"></i>' // Previous button icon
}
}
});
});
$(document).ready(function() {
$.fn.dataTable.moment( 'DD-MM-YYYY' );
table = $('#req').DataTable( {
"language": {
"emptyTable": "<center> Data Not Found ! </center>"
},
"aaSorting": [[ 2, "desc" ]],
"autoWidth": false,
orderCellsTop: true,
"dom": "<'row'<'col-md-6'l><'col-md-6'Bf>>" +
"<'row'<'col-md-6'><'col-md-6'>>" +
"<'row'<'col-md-12't>><'row'<'col-md-4'i><'col-md-8'p>>",
buttons: [
{
extend: 'excelHtml5',
footer: 'true',
//messageTop: $('h3').text(),
title: $('h3').text(),
exportOptions: {
columns: ':visible'
}
},
'colvis'
],
"footerCallback": function ( row, data, start, end, display ) {
var api = this.api(), data;
// Remove the formatting to get integer data for summation
var intVal = function ( i ) {
return typeof i === 'string' ?
parseFloat(i.replace(/[^0.00-9.00]+/g,"")*1) :
typeof i === 'number' ?
parseFloat(i) : 0;
};
TotalOrderValue = api
.column( 5, { search:'applied' } )
.data()
.reduce( function (a, b) {
return intVal(a) + intVal(b);
}, 0 );
$( api.column( 5 ).footer() ).html( TotalOrderValue.toFixed(2) );
}
} );
} );
$( function() {
//var dateFormat = "mm-dd-yy",
from = $( "#min-date" )
.datepicker({
dateFormat: "dd-mm-yy",
defaultDate: "+0d",
changeMonth: true,
numberOfMonths: 1
})
.on( "change", function() {
to.datepicker( "option", "minDate", getDate( this ) );
}),
to = $( "#max-date" ).datepicker({
dateFormat: "dd-mm-yy",
defaultDate: "+0d",
changeMonth: true,
numberOfMonths: 1
})
.on( "change", function() {
from.datepicker( "option", "maxDate", getDate( this ) );
});
function getDate( element ) {
var date;
try {
date = $.datepicker.parseDate( dateFormat, element.value );
} catch( error ) {
date = null;
}
return date;
}
} );
// Extend dataTables search
$.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) {
var min = (moment($('#min-date').val(), "DD/MM/YYYY").isValid()) ? ~~moment($('#min-date').val(), "DD/MM/YYYY").format("X") : null;
var max = (moment($('#max-date').val(), "DD/MM/YYYY").isValid()) ? ~~moment($('#max-date').val(), "DD/MM/YYYY").format("X") : null;
var CreatedDate = ~~moment(data[2], "DD/MM/YYYY").format("X"); // Our date column in the table
// alert(min);
if (min == null && max == null) {
return true;
}
if (min == null && CreatedDate <= max) {
return true;
}
if (max == null && CreatedDate >= min) {
return true;
}
if (CreatedDate <= max && CreatedDate >= min) {
return true;
}
return false;
}
);
// Re-draw the table when the a date range filter changes
$('.filter1').change(function() {
table.draw();
});
$('#my-table_filter').hide();
//total order value range
$.fn.dataTable.ext.search.push(
function( settings, data, dataIndex ) {
var min = parseInt( $('#min').val(), 10 );
var max = parseInt( $('#max').val(), 10 );
var TotalOrderValue = parseFloat( data[5] ) || 0;
if ( ( isNaN( min ) && isNaN( max ) ) ||
( isNaN( min ) && TotalOrderValue <= max ) ||
( min <= TotalOrderValue && isNaN( max ) ) ||
( min <= TotalOrderValue && TotalOrderValue <= max ) )
{
return true;
}
return false;
}
);
$(document).ready(function() {
//var table = $('#qdetails').DataTable();
// Event listener to the two range filtering inputs to redraw on input
$('#min, #max').keyup( function() {
table.draw();
} );
} );
//for clear button
function Reset()
{
$('#min').val('');
$('#max').val('');
$('#min-date').val('');
$('#max-date').val('');
}
</script>