File: /home/cafsindia/hrms_patroniss_com/application/views/monthly_input/manage_bk05oct2020.php
<?php
$this->load->view("partial/header");
$access_data = $this->session->userdata('access_data');
$access_update = (int)$access_data[$controller_name]['access_update'];
$access_delete = (int)$access_data[$controller_name]['access_delete'];
$access_search = (int)$access_data[$controller_name]['access_search'];
$access_export = (int)$access_data[$controller_name]['access_export'];
$access_import = (int)$access_data[$controller_name]['access_import'];
$page_name = ucwords(str_replace("_"," ",$controller_name));
$uniqueId = "prime_".$controller_name."_id";
?>
<script type="text/javascript">
$(document).ready(function (){
<?php $this->load->view('partial/daterangepicker'); ?>
<?php $this->load->view('partial/bootstrap_tables_locale'); ?>
table_support.init({
resource: '<?php echo site_url($controller_name); ?>',
headers: <?php echo $table_headers; ?>,
pageSize: <?php echo $this->config->item('lines_per_page'); ?>,
uniqueId: "<?php echo $uniqueId;?>",
queryParams: function () {
$('#search').attr('disabled',false);
$("#search").html("Submit");
return $.extend(arguments[0], {
search_month: $("#search_month").val(),
category: $("#category").val(),
process_mode: $("#process_mode").val(),
});
},
onLoadSuccess: function(response) {
if(!response.success){
if(response.status === "gratuity" || response.status === "locked" || response.status === "Monthday" || response.status === "category"){
toastr.error(response.message);
location.reload(true);
}else{
if(response.rows.prime_monthly_input_id == 0){
toastr.error('Payroll processed for this month not possible to delete?');
$('#process_mode').val(1);
$("#search").trigger('click');
}
}
}
}
});
//Datepicker
$(function () {
$(".datepicker").datetimepicker({
format: 'MM-YYYY'
})
});
$("#search").on('click', function(e){
$("#search").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#search').attr('disabled','disabled');
//table_support.refresh();
var category = $('#category').val();
var search_month = $('#search_month').val();
var process_mode = $('#process_mode').val();
if(category.length === 0){
toastr.error('Please choose category?');
return false;
}
if(search_month.length === 0){
toastr.error('Please choose month?');
return false;
}
if(process_mode.length === 0){
toastr.error('Please choose mode?');
return false;
}
if(parseInt(process_mode) === 1){
var send_url = '<?php echo site_url("$controller_name/check_supplymentry");?>'
if(category && search_month){
$.ajax({
type: 'POST',
url: send_url,
data:{category:category,search_month:search_month},
success: function(data) {
var rslt = JSON.parse(data);
if(rslt.success){
if(confirm(rslt.message)){
table_support.refresh();
return true;
}else{
location.reload(true);
}
}else{
table_support.refresh();
}
}
});
}
}else{
table_support.refresh();
return true;
}
});
$('#delete_month').click(function(){
var category = $('#category').val();
var search_month = $('#search_month').val();
var emp_code_list = [];
var month_id = [];
$('.selected').each(function() {
var unique = $(this).attr('data-uniqueid');
var emp_code = $('#hid_employee_code_'+unique).val();
emp_code_list.push(emp_code);
month_id.push(unique);
});
if(category && search_month && (emp_code_list.length > 0)){
if(confirm("Are you sure to delete this employee!")){
$.ajax({
type: 'POST',
url: '<?php echo site_url("$this->control_name/delete_month_input");?>',
data:{category:category,search_month:search_month,emp_code_list:emp_code_list,month_id:month_id},
success: function(data){
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
table_support.refresh();
}else{
toastr.error(rslt.message);
}
}
})
}
}
});
$("#month_btn").click(function(){
$('#monthly_modal').modal('show');
$("#save_import").trigger("reset");
$("#table_info").html('');
$('#notify_list_model').modal('hide');
});
$('#imp_loader').hide();
var send_url = '<?php echo base_url("upload_files/upload.php?send_from=$controller_name&send_for=import");?>'
$('#save_import').validate($.extend({
submitHandler: function (form){
$("#submit").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#submit').attr('disabled','disabled');
$('#imp_loader').show();
$(form).ajaxSubmit({
success: function (response){
$('#submit').attr('disabled',false);
$("#submit").html("Submit");
var error = response.error_info;
if(response.success){
if(error){
toastr.error(response.message);
var tr_line = "";
$.each(error, function( index, value ) {
tr_line += "<tr><td>"+index+"</td><td style='color:red'>"+value+"</td></tr>";
});
var table = "<table class='table table-bordered' style='text-align:center;'><thead><tr><th>Row</th><th>Error Info</th></tr></thead><tbody>"+tr_line+"</tbody></table>";
$("#table_info").html(table);
$("#save_import").trigger("reset");
}else{
toastr.success(response.message);
$("#table_info").html(response.table_info);
$("#save_import").trigger("reset");
}
}else{
toastr.error(response.message);
//$("#table_info").html(response.table_info);
$('.modal').modal('toggle');
$("#save_import").trigger("reset");
}
$('#imp_loader').hide();
},
dataType: 'json'
});
},
rules:{
category_id: "required",
process_month: "required",
excel_format: "required",
excel_select_file: "required",
excel_sheet_name: "required",
excel_start_row:{
required: true,
min:1,
number:true,
},
}
}));
$('#excel_format').change(function(){
var module_id = $('#module_id').val();
var excel_format = $('#excel_format').val();
var controller_name = '<?php echo $controller_name; ?>';
if(excel_format){
$('#link').show();
$('#link').attr("href","index.php/<?php echo $controller_name; ?>/excel/"+module_id+"/"+excel_format);
}else{
$('#link').hide();
}
});
$('#excel_select_file').change(function() {
$("#loader").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#submit').attr('disabled','disabled');
var file_data = $('#excel_select_file').prop('files')[0];
if(file_data){
var form_data = new FormData();
form_data.append('excel_select_file', file_data);
$.ajax({
url: send_url,
cache: false,
contentType: false,
processData: false,
data: form_data,
type: 'post',
success: function(result_data){
$("#loader").html("");
$('#submit').attr('disabled',false);
var rslt = JSON.parse(result_data);
if(rslt['success']){
$('#excel_file_path').val(rslt['path']);
get_excel();
}else{
toastr.error(rslt['msg']);
}
}
});
}else{
toastr.error('Please select file to upload');
$("#loader").html("");
$('#submit').attr('disabled',false);
}
});
$('#process_month').on("dp.hide",function (e){
check_payroll();
});
$('#category_id').change(function(){
check_payroll();
});
});
//DELETE COLUMN SVK EDIT 17-04-2020
function delete_column(label_name){
if(label_name){
$("#delete_btn_"+label_name).html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#delete_btn_'+label_name).attr('disabled','disabled');
var category = $('#category').val();
var search_month = $('#search_month').val();
var process_mode = $('#process_mode').val();
str = label_name.toLowerCase().replace(/\b[a-z]/g, function(letter) {
return letter.toUpperCase();
});
str = str.replace(/_/g, '');
var content = "Are you sure to delete whole column of "+str+" on process month of "+search_month;
$.confirm({
title: 'Confirm!',
content: content,
type: 'red',
typeAnimated: true,
buttons: {
tryAgain: {
text: 'Ok',
btnClass: 'btn-red',
action: function(){
$.ajax({
type: 'POST',
url: '<?php echo site_url("$this->control_name/delete_column");?>',
data:{category:category,search_month:search_month,label_name:label_name},
success: function(data){
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
table_support.refresh();
}else{
toastr.error(rslt.message);
}
$('#delete_btn_'+label_name).attr('disabled',false);
$('#delete_btn_'+label_name).html("Delete");
}
});
}
},
close: function () {
$('#delete_btn_'+label_name).attr('disabled',false);
$('#delete_btn_'+label_name).html("Delete");
}
}
});
}
}
function update_table(row_id){
var hid_doj = $('#hid_doj_'+row_id).val();
var hid_process_month = $('#hid_process_month_'+row_id).val();
var category = $('#category').val();
var label_name = [];
<?php
foreach($this->table_info as $table){
$label_name = $table->label_name;
if(($label_name !== "employee_code") && ($label_name !== "emp_name") && ($label_name !== "process_month") && ($label_name !== "date_of_joining")){
echo "label_name.push('$label_name');";
}
}
?>
var send_array = {};
var isValid = true;
var error = "";
$.each(label_name, function(key,value){
input_id = "#"+value+"_"+row_id;
if(value === "supplementary_status"){
if($(input_id).prop('checked') == true){
input_value = 1;
}else{
input_value = 0;
}
}else{
input_value = $(input_id).val();
}
if(input_value === ""){
isValid = false;
$(input_id).addClass('error');
}else
if($.isNumeric(input_value)){
$(input_id).removeClass('error');
send_array[value] = input_value;
}else{
isValid = false;
$(input_id).val("");
$(input_id).addClass('error');
}
});
if(search_month){
search_month = $('#search_month').val();
isValid = true;
}
if(isValid){
$.ajax({
type: 'POST',
url: '<?php echo site_url("$this->control_name/update_table");?>',
data:{send_data:send_array,prime_id:row_id,hid_doj:hid_doj,hid_process_month:hid_process_month,category:category},
success: function(data){
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
table_support.refresh();
}else{
if(rslt.status === "DOJ"){
$('#supplementary_status_'+row_id).prop( "checked", false);
toastr.error(rslt.message);
}else{
toastr.error(rslt.message);
}
}
}
});
}else{
toastr.clear();
toastr.error("Please fill all input values allow only numeric");
}
}
function get_excel(){
file_path = $('#excel_file_path').val();
var import_url = '<?php echo site_url("$controller_name/sheet_name");?>'
if(file_path){
$.ajax({
type: 'POST',
url: import_url,
data:{file_path:file_path},
success: function(data) {
var rslt = JSON.parse(data);
var option = "<option value=''>-- Select Sheet Name --</option>";
for(i = 0; i < rslt.sheet_name.length; i++) {
sheet_name = rslt.sheet_name[i];
option += "<option value='"+i+"'>"+sheet_name+"</option>";
}
$("#excel_sheet_name").html(option);
}
});
}
}
/*function check_supplymentry(category,search_month){
var send_url = '<?php echo site_url("$controller_name/check_supplymentry");?>'
if(category && search_month){
$.ajax({
type: 'POST',
url: send_url,
data:{category:category,search_month:search_month},
success: function(data) {
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
}
}
});
}
}*/
function check_payroll(){
var process_month = $('#process_month').val();
var category = $('#category_id').val();
if(process_month && category){
$.ajax({
type: 'POST',
url: '<?php echo site_url("$this->control_name/process_month_check");?>',
data:{process_month:process_month,category:category},
success: function(data){
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
}else{
toastr.error(rslt.message);
$('#process_month').val('');
}
}
})
}
}
</script>
<div class='row title_content'>
<div class='col-md-2 col-xs-4'>
<h1 class='page_txt'><?php echo $page_name;?></h1>
</div>
<div class='col-md-10 col-xs-8'>
<ol class="breadcrumb">
<?php
if($access_import === 1){
$import_url = site_url($controller_name."/import");
$submit = $this->lang->line('common_submit');
echo "<li>
<button id='month_btn' class='btn btn-xs btn-primary' data-btn-submit= '$submit' data-href='#monthly_modal'
title='Import $page_name'> <span class='fa fa-cloud-upload'> </span> Import $page_name
</button>
</li>";
}
?>
<li><a href="<?php echo site_url()?>#Home">Home</a></li>
<li><a href="<?php echo site_url($controller_name)?>#<?php echo "$controller_name";?>"><?php echo "$page_name";?></a></li>
<li class="active">List</li>
</ol>
</div>
</div>
<div id="toolbar" class="form-inline">
<button id="delete_month" class="btn btn-default btn-sm print_hide">
<span class="fa fa-trash-o"> </span><?php echo $this->lang->line("common_delete"); ?>
</button>
</div>
<div id="holder" class="form-inline" style="margin-top:20px;">
<div class="row" style='margin-bottom:0px;'>
<div class="col-md-9">
<div class="form-group" style="width: 25% !important;">
<?php
echo form_label($this->lang->line('category'), 'category', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'category', 'id' => 'category', 'class' => 'form-control input-sm'), $category_list);
?>
</div>
<div class="form-group">
<?php
echo form_label($this->lang->line('select_month'), 'select_month', array('class' => 'required'));
$today = date('m-Y');
echo form_input(array('name' => 'search_month', 'id' => 'search_month', 'class' => 'form-control input-sm datepicker', 'value'=>''));
?>
</div>
<div class="form-group">
<?php
$process_mode = array(""=>"---- Select Type ----","1"=>"Process","2"=>"Delete");
echo form_label("Process Mode", 'process_mode', array('class' => 'required'));
echo form_dropdown(array("name" =>'process_mode',"id" =>'process_mode',"class" =>'form-control input-sm'),$process_mode);
?>
</div>
<div class="form-group">
<button class='btn btn-primary btn-sm' id="search">Submit</button>
</div>
</div>
</div>
</div>
<div id="table_holder">
<div class="outer">
<div class="inner">
<table id="table"></table>
</div>
</div>
</div>
<div class="modal fade" id="monthly_modal">
<div class="modal-dialog modal-lg" style="width: 90%;" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Monthly Import</h4>
</div>
<div class="modal-body" id="monthly_modal_body">
<?php echo form_open("monthly_input/save_import/",array("id"=>'save_import',"class"=>"form-inline")); ?>
<fieldset id='FundBasicInfo' style='margin:0px;padding:8px;'>
<div class="form-group">
<?php
echo form_label($this->lang->line('category'), 'category_id', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'category_id', 'id' => 'category_id', 'class' => 'form-control input-sm'), $category_list);
?>
</div>
<div class="form-group">
<?php
echo form_input( array('name'=>'module_id', 'id'=>'module_id', 'type'=>'Hidden','value'=>$module_id));
echo form_label($this->lang->line('mod_excel_format'), 'excel_format', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'excel_format', 'id' => 'excel_format', 'class' => 'form-control input-sm'), $excel_format_drop);
?>
</div>
<div class="form-group">
<?php
echo form_label($this->lang->line('excel_select_file'), 'excel_select_file', array('class' => 'required'));
echo form_upload(array('name' => 'excel_select_file','id' => 'excel_select_file','class' => 'form-control input-sm','value' =>'','accept' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel,text/comma-separated-values, text/csv, application/csv' ));
?>
<a id="link" style="display: none;" href="#" title='Export All Data'><span class="fa fa-user-exit"> </span> Export Mapping Format </a>
<input type='hidden' id='excel_file_path' name='excel_file_path' value=''>
<span id='loader' style='color:#CC3366'></span>
</div>
<div class="form-group">
<?php
echo form_label("Excel Sheet Name", 'excel_sheet_name', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'excel_sheet_name', 'id' => 'excel_sheet_name', 'class' => 'form-control input-sm'), $excel_sheet_name);
?>
</div>
<div class="form-group">
<?php
echo form_label("Excel Start Row", 'excel_start_row', array('class' => 'required'));
echo form_input(array( 'name' => 'excel_start_row', 'id' => 'excel_start_row', 'class' => 'form-control input-sm number', 'value' => '1'));
?>
</div>
<div class="form-group">
<?php
echo form_label("Excel End Row", 'excel_end_row', array('class' => ''));
echo form_input(array( 'name' => 'excel_end_row', 'id' => 'excel_end_row', 'class' => 'form-control input-sm number', 'value' => ''));
?>
</div>
<div class="form-group">
<?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 datepicker', 'value'=> ''));
?>
</div>
<div class="form-group">
<button class='btn btn-primary btn-sm' id="save_btn">Submit</button>
</div>
</fieldset>
<?php echo form_close();?>
<div class="myProgress" style ="z-index: 10000; text-align: center;display:none;padding:50px;color:#4b6fa2;">
<i class="fa fa-spinner fa-spin fa-2x fa-fw" ></i>Please wait processing....
</div>
<div id='table_info' style='padding:8px;overflow: auto;'>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger" data-dismiss="modal" id="modal_close">Close</button>
</div>
</div>
</div>
</div>
<style type="text/css">
#table tbody td {
background-color: #FFFFFF;
color: #000;
white-space: nowrap;
}
#table thead tr th:nth-child(2) {
position:absolute !important;
left:0 !important;
width:118px !important;
background-color: #001630;
}
#table thead tr th:nth-child(3) {
position:absolute !important;
left:118px !important;
width: 120px !important;
background-color: #001630;
}
#table tbody tr td:nth-child(2) {
position:absolute !important;
left:0 !important;
width:118px !important;
}
#table tbody tr td:nth-child(3) {
position:absolute !important;
left:118px !important;
}
.outer {position:relative !important;}
.inner {
overflow-x:scroll !important;
overflow-y:visible !important;
margin-left:255px !important;
}
</style>
<?php $this->load->view("partial/footer"); ?>