File: /home/cafsindia/.trash/application/views/muster_roll_wizard/generate_excel.php
<ul class="nav nav-tabs" data-tabs="tabs">
<li class="active" role="presentation">
<a data-toggle="tab" href="#setting_info">Excel Download</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane fade in active" id="setting_info">
<div id="holder" class="form-inline" style="margin-top:20px;">
<div class="row" style='margin-bottom:0px;'>
<div class="col-md-12">
<div class="form-group">
<?php
echo form_input( array('name'=>'prime_muster_transaction_id', 'id'=>'prime_muster_transaction_id', 'type'=>'Hidden','value'=> $muster_transaction_info[0]->prime_muster_transaction_id));
$report_period_list = array(""=>"---- Select Type ----",1=>"Month Wise",2=>"Date Wise");
echo form_label('Report Period', 'report_period', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'report_period', 'id' => 'report_period', 'class' => 'form-control input-sm select2'), $report_period_list);
?>
</div>
<div class="form-group" style="display: none;">
<?php
echo form_label('Process Month', 'process_month', array('class' => 'required'));
echo form_input(array( 'name' => 'process_month', 'id' => 'process_month', 'class' => 'form-control input-sm', 'placeholder' => 'Select Month'));
?>
</div>
<div class="form-group" style="display: none;">
<?php
echo form_label('Start Date', 'start_date', array('class' => 'required'));
echo form_input(array( 'name' => 'start_date', 'id' => 'start_date', 'class' => 'form-control input-sm datepicker', 'placeholder' => 'Select Date'));
?>
</div>
<div class="form-group" style="display: none;">
<?php
echo form_label('End Date', 'end_date', array('class' => 'required'));
echo form_input(array( 'name' => 'end_date', 'id' => 'end_date', 'class' => 'form-control input-sm datepicker', 'placeholder' => 'Select Date'));
?>
</div>
<div class="form-group">
<?php
$employee_type_list = array(""=>"---- Select Type ----",1=>"Single",2=>"All");
echo form_label('Employee Type', 'employee_type', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'employee_type', 'id' => 'employee_type', 'class' => 'form-control input-sm select2'), $employee_type_list);
?>
</div>
<div class="form-group" style="display: none;">
<?php
echo form_label('Employee Code', 'employee_code', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'employee_code', 'id' => 'employee_code', 'class' => 'form-control input-sm select2'));
?>
</div>
<div class="form-group" id = "filter_comp" style="display:none;">
<a class="btn btn-sm btn-edit" id="search_filter">
<i class="fa fa-filter" aria-hidden="true"></i> Search filter
<span class="caret"></span>
</a>
<div id="search_filter_div" class='search_filter'>
<div style="max-height:250px;overflow: auto;">
<?php
$filter_cond_array = array('' => '--- Select ---','=' => '=','>' => '>','<' => '<','LIKE' => 'LIKE');
$tr_line = "";
foreach($fliter_list as $fliter){
$label_id = $fliter['label_id'];
$field_isdefault = $fliter['field_isdefault'];
$array_list = $fliter['array_list'];
$field_type = $fliter['field_type'];
$label_name = ucwords(strtolower(str_replace("_"," ",$label_id)));
$fliter_label = form_input(array('type'=>'hidden','name' => 'fliter_label[]', 'class' => 'form-control input-sm','value' => $label_id));
$fliter_type = form_input(array('type'=>'hidden','name' => 'fliter_type[]', 'class' => 'form-control input-sm','value' => $field_isdefault));
$filter_cond = form_dropdown(array('name' => 'filter_cond[]','class' => 'form-control input-sm'), $filter_cond_array);
if($field_type === 4){
$fliter_val = form_input(array( 'name' => 'fliter_val[]', 'class' => 'form-control input-sm datepicker', 'placeholder'=>'Search value','value' => ''));
}else
if(((int)$field_type === 5) || ((int)$field_type === 7)){
$fliter_val = form_dropdown(array('name' => 'fliter_val[]','class' => 'form-control input-sm'), $array_list);
}else{
$fliter_val = form_input(array( 'name' => 'fliter_val[]', 'class' => 'form-control input-sm', 'placeholder'=>'Search value','value' => ''));
}
$tr_line .= "<tr>
<td class='search_td'> $label_name $fliter_label $fliter_type</td>
<td> $filter_cond</td>
<td> $fliter_val </td>
</tr>";
}
echo "<table style='width:100%;'>$tr_line</table>";
?>
</div>
<div style="margin-top:8px;">
<div class="row">
<div class="col-md-6" style='text-align:left;'>
<a class="btn btn-xs btn-danger" id="clear_search"> Clear / Close</a>
</div>
<div class="col-md-6" style='text-align:right;'>
<a class="btn btn-xs btn-primary" id="search_submit"> Done </a>
</div>
</div>
</div>
</div>
</div>
<div class="form-group">
<!-- <a id="link" style="display: none;" class="btn btn-info btn-sm" href="#" title='Export All Data'><span class="fa fa-user-exit"> </span>Export Mapping Format</a> -->
<button class='btn btn-primary btn-sm' id="submit" style="display: none;">Submit</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style='margin:0px;overflow:auto;'>
<div id='table_structure' class='col-md-12' style='padding:8px;min-height: 160px;'>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$("#filter_comp").hide();
// select_call();
$("#search_submit").click(function(){
$("#search_filter_div").toggle()
});
$("#search_filter_div").hide();
$("#search_filter").click(function(){
$("#search_filter_div").toggle();
});
$("#clear_search").click(function(){
$('#search_filter_div').find('input').val('');
$('option').attr('selected', false);
$("#search_filter_div").toggle();
});
$(function () {
$(".datepicker").datetimepicker({
format: 'DD-MM-YYYY',
//debug: true
});
$("#process_month").datetimepicker({
format: 'MM-YYYY',
//debug: true
});
$(".datepicker_time").datetimepicker({
format: 'DD-MM-YYYY HH:mm:ss',
//debug: true
});
});
$('textarea').on('keyup keypress', function(e) {
if(e.keyCode === 13) {
e.stopPropagation();
}else
if(e.shiftKey){
e.stopPropagation();
}
});
$(".number").bind('keyup', function(e) {
this.value = this.value.replace(/[^0-9_.]/g,'');
});
$('.alpha').bind('keypress', function (event) {
var regex = new RegExp("^[a-zA-Z0-9\-_.@\/\\s]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
});
var report_period = parseInt($('#report_period').val());
if(report_period){
report_wise_hide(report_period)
}
$('#report_period').on("change",function(e) {
var report_period = parseInt($('#report_period').val());
if(report_period){
report_wise_hide(report_period);
}
});
var employee_type = parseInt($('#employee_type').val());
if(employee_type){
emp_type_wise_hide(employee_type);
}
$('#employee_type').change(function(){
var muster_transaction_id = $('#prime_muster_transaction_id').val();
var report_period = parseInt($('#report_period').val());
var employee_type = parseInt($('#employee_type').val());
var process_month = $('#process_month').val();
var start_date = $('#start_date').val();
var end_date = $('#end_date').val();
if(!report_period){
toastr.error('Report Period Should not Empty..!!');
$('#employee_type').val('');
return false;
}else
if(report_period === 1){
if(!process_month){
toastr.error('Process Month Should not Empty..!!');
$('#employee_type').val('');
return false;
}
}else
if(report_period === 2){
if(!start_date){
toastr.error('Start Date Should not Empty..!!');
$('#employee_type').val('');
return false;
}else
if(!end_date){
toastr.error('End Date Should not Empty..!!');
$('#employee_type').val('');
return false;
}
}
if(employee_type === 1){
emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
}
if(employee_type){
emp_type_wise_hide(employee_type);
}
});
//CREATING HREF ATTRIBUTE
$('#report_period,#employee_type,#employee_code').change(function(){
var change_id = $(this).attr('id');
var muster_transaction_id = $('#prime_muster_transaction_id').val();
var report_period = parseInt($('#report_period').val());
var employee_type = parseInt($('#employee_type').val());
var process_month = $('#process_month').val();
var start_date = $('#start_date').val();
var end_date = $('#end_date').val();
var employee_code = $('#employee_code').val();
if(change_id === "report_period"){
$('#employee_type,#employee_code').val('');
$('#employee_code').parent().hide();
$('#submit').hide();
}
if(change_id !== "employee_code" && change_id !== "employee_type"){
if(report_period && (process_month || (start_date && end_date))){
emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
}
}
if(report_period && employee_type){
// $('#submit').show();
if(employee_type === 2 || (employee_type === 1 && employee_code)){
if(report_period === 1 && process_month){
$('#submit').show();
}else
if(report_period === 2 && start_date && end_date){
start_check_date = moment(start_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
end_check_date = moment(end_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
var check_date = moment(start_date, 'DD-MM-YYYY').add(+30, 'days').format('YYYY-MM-DD');
if(end_check_date < start_check_date){
toastr.error('Start Date Should not be Greater Than End Date?');
$('#end_date').val('');
}else
if(check_date < end_check_date){
toastr.error('Your date Difference Should be Maximum 30 Days Period..!!');
$('#end_date').val('');
}else{
// $('#link').attr("href","index.php/<?php echo $controller_name; ?>/generate_excel_sheets/"+muster_transaction_id+"/"+report_period+"/"+employee_type+"/"+employee_code+"/"+process_month+"/"+start_date+"/"+end_date);
$('#submit').show();
}
}
}
}else{
// $('#link').hide();
$('#submit').hide();
}
select_call();
});
//CREATING HREF ATTRIBUTE
$('#process_month,#start_date,#end_date').on("dp.hide",function (e) {
var muster_transaction_id = $('#prime_muster_transaction_id').val();
var report_period = parseInt($('#report_period').val());
var employee_type = parseInt($('#employee_type').val());
var process_month = $('#process_month').val();
var start_date = $('#start_date').val();
var end_date = $('#end_date').val();
var employee_code = $('#employee_code').val();
if(report_period && employee_type === 1 && (process_month || (start_date && end_date))){
emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
}
if(report_period && employee_type){
// $('#submit').show();
if(employee_type === 2 || (employee_type === 1 && employee_code)){
if(report_period === 1 && process_month){
$('#submit').show();
}else
if(report_period === 2 && start_date && end_date){
start_check_date = moment(start_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
end_check_date = moment(end_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
var check_date = moment(start_date, 'DD-MM-YYYY').add(+30, 'days').format('YYYY-MM-DD');
if(end_check_date < start_check_date){
toastr.error('Start Date Should not be Greater Than End Date?');
$('#end_date').val('');
return false;
}else
if(check_date < end_check_date){
toastr.error('Your date Difference Should be Maximum 30 Days Period..!!');
$('#end_date').val('');
return false;
}else{
// $('#link').attr("href","index.php/<?php echo $controller_name; ?>/generate_excel_sheets/"+muster_transaction_id+"/"+report_period+"/"+employee_type+"/"+employee_code+"/"+process_month+"/"+start_date+"/"+end_date);
$('#submit').show();
}
}
}
select_call();
}else{
// $('#link').hide();
$('#submit').hide();
}
});
//GENERATING EXCEL
$('#submit').on('click',function(){
var muster_transaction_id = $('#prime_muster_transaction_id').val();
var report_period = parseInt($('#report_period').val());
var employee_type = parseInt($('#employee_type').val());
var process_month = $('#process_month').val();
var start_date = $('#start_date').val();
var end_date = $('#end_date').val();
var employee_code = $('#employee_code').val();
var send_url = '<?php echo site_url("$controller_name/get_muster_report");?>'
if(muster_transaction_id){
var fliter_label = $("input[name='fliter_label[]']").map(function(){return $(this).val();}).get();
var fliter_type = $("input[name='fliter_type[]']").map(function(){return $(this).val();}).get();
var input_field_type = $("input[name='input_field_type[]']").map(function(){return $(this).val();}).get();
var filter_cond = $("select[name='filter_cond[]']").map(function(){return $(this).val();}).get();
var fliter_val = $("input[name='fliter_val[]'],select[name='fliter_val[]']").map(function(){return $(this).val();}).get();
var group_by = $("select[name='group_by[]']").map(function(){return $(this).val();}).get();
$("#submit").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#submit').attr('disabled','disabled');
$.ajax({
type: 'POST',
url: send_url,
data: {muster_transaction_id:muster_transaction_id,report_period:report_period,employee_type:employee_type,employee_code:employee_code,process_month:process_month,start_date:start_date,end_date:end_date,fliter_label:fliter_label,fliter_type:fliter_type,input_field_type:input_field_type,filter_cond:filter_cond,fliter_val:fliter_val,group_by:group_by},
success: function(response){
$('#submit').attr('disabled',false);
$("#submit").html("Submit");
var result = JSON.parse(response);
if(result.success){
toastr.success(result.message);
// var href = $('#link').attr('href');
// window.location.href = href;
$('#table_structure').html(result.muster_report);
$table = $('#muster_report').DataTable({
processing: true,
lengthMenu: [[10,25,50,100,500,1000,-1],[10,25,50,100,500,1000,"All"]],
// fixedColumns:{leftColumns: 4},
scrollX: true,
scrollY:"360px",
'bSort': false,
// scrollCollapse: true,
language:{
lengthMenu:"<span style='margin-top:12px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:12px;'>Records</span>",
searchPlaceholder: "Search records",
search: "",
},
});
var table_option = "<div class='dataTables_length' id='muster_report_length'><table><tr><td id='export' style='padding:8px 2px;'></td></tr></table></div>";
$("#muster_report_wrapper").prepend(table_option);
var buttons = new $.fn.dataTable.Buttons($table, {
buttons: [{
extend: 'collection',
text: 'Export',
buttons: [
{extend:'copy',exportOptions:{modifier :{order:'index',page:'all',search:'none'},columns:':visible'}},
{extend:'csv',exportOptions:{modifier:{order:'index',page:'all',search:'none'},columns:':visible'}},
{extend:'excel',exportOptions:{modifier:{order :'index',page: 'all',search:'none'},columns:':visible'}},
{extend:'pdf',exportOptions:{modifier:{order :'index',page:'all',search:'none'},columns:':visible'}},
{extend:'print',exportOptions:{modifier:{order :'index',page:'all',search:'none'},columns:':visible',}},
]
}]
}).container().appendTo($('#export'));
$('input[type=search]').addClass('form-control input-sm');
$("select[name='table_length']" ).addClass('form-control input-sm');
}else{
toastr.error(result.message);
}
},
});
select_call();
}else{
toastr.error("First should be add a setting name..!!");
}
});
select_call();
});
function emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date){
var send_url = '<?php echo site_url("$controller_name/emp_code_list");?>';
$("#employee_code").html('');
$.ajax({
type: 'POST',
url: send_url,
data: {muster_transaction_id:muster_transaction_id,report_period:report_period,process_month:process_month,start_date:start_date,end_date:end_date},
beforeSend: function () {
$("#employee_code").next('span').attr('id', 'employee_code_span');
$('#employee_code_span').html('<span style="color:#CC3366;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</span>');
},
success: function(data){
// var result = JSON.parse(response);
if(data){
$('#employee_code_span').empty();
$('.select2').select2({
placeholder: '---- Select ----',
allowClear: true,
//dropdownParent: $('.modal-dialog')
});
$("#employee_code").html(data);
$('#submit').hide();
}else{
toastr.error(result.message);
}
},
});
select_call();
}
function report_wise_hide(report_period){
if(report_period === 1){
$('#process_month').parent().show();
$('#start_date,#end_date').parent().hide();
$('#start_date,#end_date').val('');
// $('#start_date,#end_date').addClass('ignore');
// $('#process_month').removeClass('ignore');
}else{
$('#start_date,#end_date').parent().show();
$('#process_month').parent().hide();
$('#process_month').val('');
// $('#process_month').addClass('ignore');
// $('#start_date,#end_date').removeClass('ignore');
}
select_call();
}
function emp_type_wise_hide(employee_type){
if(employee_type === 1){
$('#employee_code').parent().show();
$("#filter_comp").hide();
// $('.search_filter').hide();
// $('input').val('');
// $('option').attr('selected', false);
// $("#search_filter_div").toggle();
// $('#employee_code').removeClass('ignore');
}else{
$('#employee_code').val('');
$('#employee_code').parent().hide();
$("#filter_comp").show();
// $('.search_filter').show();
// $('#employee_code').addClass('ignore');
}
select_call();
}
//Select Call
function select_call(){
setTimeout(function(){
$(function(){
$('.select2').select2({
placeholder: '---- Select ----',
allowClear: true,
dropdownParent: $('.modal-dialog'),
maximumInputLength : 15
});
$('.select2-tags').select2({
tags: true,
allowClear: true,
tokenSeparators: [',']
});
});
}, 500);
}
</script>