CHANGE_ in loan module : GWM

This commit is contained in:
bitbucket 2024-09-03 16:34:58 +05:30
parent 05de1cecc7
commit af6d672733
8 changed files with 306 additions and 454 deletions

View File

@ -61,12 +61,84 @@ class Payslip extends BaseController
public function callsp()
{
$payon = $this->request->getPost('payon');
$employee = $this->request->getPost('employee');
$result = $this->payroll_model->model_sp($payon, $employee);
// $result = $this->db->last_query();
return $result;
//$this->db->call_function('model_sp');
// $result = $this->payroll_model->model_sp($this->request->getPost('payon'), $this->request->getPost('employee'));
// return $result;
// die;
$PayOn = $this->request->getPost('payon');
$EmpId = $this->request->getPost('employee');
$res = $this->payroll_model->getMonthlyPayDetails($EmpId, $PayOn);
$result = $res[0];
$loan = [];
$loanHistory = [];
$loan_id = 0;
if(is_null($result->Loan_ID)){
}else{
if($result->Loan_Recovered > 0)
{
$loan_id = $result->Loan_ID;
$loan = [
'Paid_Due' => $result->Paid_Due + 1,
'Remaining_Due' => $result->Remaining_Due - 1,
'Paid_Amount' => $result->Paid_Amount + $result->Loan_Recovered,
];
$loanHistory = [
'Loan_ID' => $loan_id,
'Due_Amount' => $result->Loan_Recovered,
'Balance_Amount' => $result->Loan_Amount - ($result->Paid_Amount + $result->Loan_Recovered),
'Due_Date' => $PayOn,
];
}
}
// print_r($data);die;
$data = [
'PayOn' => $result->Month_Year,
'EmpID' => $result->EmpID,
'TotalCalDays' => $result->TotalCalDays,
'NoofDaysWorked' => $result->Days_worked,
'LOP' => $result->LOP_Days,
'Paid_Leave' => $result->Paid_leave,
'ActualSalary' => $result->ActualSalary,
'PerDaySalary' => $result->PerDaySalary,
'WorkedSalary' => $result->WorkedSalary,
'Basic' => $result->Basic,
'HRA' => $result->HRA,
'OT_Hrs_Worked' => $result->OT_Hrs_Worked,
'OTSalary' => $result->OTSalary,
'ESI' => $result->ESI,
'PF' => $result->PF,
'OtherDeductions' => $result->Other_Deductions,
'Festival_Bonus' => $result->Festival_Bonus,
'TotalSalary' => $result->Estimate,
'Advance' => $result->Loan_Recovered,
'BalanceAdvance' => 0,
'LessAdvance' => 0,
'BankAccountNumber' => $result->BankAccountNo,
'PFNumber' => $result->PFNO,
'ESINumber' => $result->ESINO,
'UANNO' => $result->PFNO,
];
$insert = $this->payroll_model->insertPayroll($data);
if($insert){
if(count($loan)){
$this->payroll_model->updateLoan($loan_id,$result->EmpID,$loan);
}
if(count($loanHistory)){
$this->payroll_model->insertLoanHistory($loanHistory);
}
}
return $insert;
}
@ -615,9 +687,9 @@ class Payslip extends BaseController
// die;
$employeeSalary[] = round($salaryInCurrentday);
$esi[] = number_format($esiAmount,2);
$pf[] = number_format($pfAmount,2);
$ot[] = number_format($totSalayOT,2);
$esi[] = number_format($esiAmount,2, '.', '');
$pf[] = number_format($pfAmount,2, '.', '');
$ot[] = number_format($totSalayOT,2, '.', '');
}
$data['empSalary'] = $employeeSalary;
$data['esi'] = $esi;
@ -638,7 +710,7 @@ class Payslip extends BaseController
$data['month'] = $this->monthlypay_model->monthlyListing($current);
$data['dropdownvalue'] = $current;
$data['fresh'] = $this->monthlypay_model->getEmpPayDetailsforMonthInputs($current);
//dd($data['fresh']);
// dd($data['fresh']);
$employeeSalary = [];
@ -750,9 +822,9 @@ class Payslip extends BaseController
// die;
$employeeSalary[] = round($salaryInCurrentday);
$esi[] = number_format($esiAmount,2);
$pf[] = number_format($pfAmount,2);
$ot[] = number_format($totSalayOT,2);
$esi[] = number_format($esiAmount,2, '.', '');
$pf[] = number_format($pfAmount,2, '.', '');
$ot[] = number_format($totSalayOT,2, '.', '');
}
$data['empSalary'] = $employeeSalary;
$data['esi'] = $esi;
@ -863,11 +935,7 @@ class Payslip extends BaseController
}
}
// $Incentives_first = explode(".", $Incentives);
// if (!is_numeric($Incentives) || (strlen((string)$Incentives)) > 8 || (strlen((string)$Incentives_first[0])) > 5) {
// //echo $EmpID . "-Loan Recoverd Invalid Data!";
// $ErrorFlag++;
// }
$Festivalbonus_first = explode(".", $Festival_Bonus);
if (!is_numeric($Festival_Bonus) || (strlen((string)$Festival_Bonus)) > 8 || (strlen((string)$Festivalbonus_first[0])) > 5) {
@ -905,26 +973,53 @@ class Payslip extends BaseController
$EmpID = $j['Emp ID'];
$DaysWorked = $j['Days Worked'];
$TotalCalDays = isset($j['Total Days']) ? $j['Total Days'] : 0.00 ;
$ActualSalary = isset($j['Basic Salary']) ? $j['Basic Salary'] : 0.00 ;
$WorkedSalary = isset($j['Worked Salary']) ? $j['Worked Salary'] : 0.00 ;
$PerDaySalary = isset($j['Pre Day Salary']) ? $j['Pre Day Salary'] : 0.00 ;
$Basic = isset($j['Basic Salary(0.7)']) ? $j['Basic Salary(0.7)'] : 0.00 ;
$HRA = isset($j['HRA Salary(0.3)']) ? $j['HRA Salary(0.3)'] : 0.00 ;
$OTSalary = isset($j['Over Time']) ? $j['Over Time'] : 0.00 ;
$ESI = isset($j['ESI']) ? $j['ESI'] : 0.00 ;
$PF = isset($j['PF']) ? $j['PF'] : 0.00 ;
$LOP_Days = isset($j['LOP Days']) ? $j['LOP Days'] : 0.00;
$Paid_leave = isset($j['Paid Leave']) ? $j['Paid Leave'] : 0.00;
$OT_Hrs_Worked = isset($j['OT Hrs']) ? $j['OT Hrs'] : 0.00;
$Loan_Recovered = isset($j['Auto Loan Due ₹']) ? $j['Auto Loan Due ₹'] : 0.00;
// if (is_string($Loan_Recovered)) {
// $Loan_Recovered = strtoupper($Loan_Recovered);
// }
// $Incentives = isset($j['Incentives in ₹']) ? $j['Incentives in ₹'] : 0.00 ;
$Festival_Bonus = isset($j['Festival Bonus in ₹']) ? $j['Festival Bonus in ₹'] : 0.00;
$tds_Deductions = isset($j['TDS Deductions in ₹']) ? $j['TDS Deductions in ₹'] : 0.00;
$Estimate = isset($j['Estimate in ₹']) ? $j['Estimate in ₹'] : 0.00;
$Created_By = $this->session->get('userId');
$monthlypaydata = array('Month_Year' => $month, 'EmpID' => $EmpID, 'Days_worked' => $DaysWorked, 'LOP_Days' => $LOP_Days, 'Paid_leave' => $Paid_leave, 'OT_Hrs_Worked' => $OT_Hrs_Worked, 'Festival_Bonus' => $Festival_Bonus, 'Other_Deductions' => $tds_Deductions, 'Estimate' => $Estimate, 'Created_By' => $Created_By ,'Loan_Recovered'=>$Loan_Recovered);
$monthlypaydata = array(
'Month_Year' => $month,
'EmpID' => $EmpID,
'Days_worked' => $DaysWorked,
'LOP_Days' => $LOP_Days,
'Paid_leave' => $Paid_leave,
'OT_Hrs_Worked' => $OT_Hrs_Worked,
'Festival_Bonus' => $Festival_Bonus,
'Other_Deductions' => $tds_Deductions,
'Estimate' => $Estimate,
'Created_By' => $Created_By,
'Loan_Recovered' => $Loan_Recovered,
'TotalCalDays' => $TotalCalDays,
'ActualSalary' => $ActualSalary,
'WorkedSalary' => $WorkedSalary,
'PerDaySalary' => $PerDaySalary,
'Basic' => $Basic,
'HRA' => $HRA,
'OTSalary' => $OTSalary,
'ESI' => $ESI,
'PF' => $PF,
);
// print_r($monthlypaydata); die;
$result = $this->monthlypay_model->saveMonthlyData_model($monthlypaydata);
$total = $total + $result;
}
}
$total = $total - 1;
//echo "<script> alert($ErrorEmpId + '- are have Invalid Data!'); </script>";
if (!empty($ErrorEmpId)) {
echo $ErrorEmpId . "- are have Invalid Data!";
@ -1018,63 +1113,55 @@ class Payslip extends BaseController
public function PrintPdf()
{
// $EmpID = 'RIPL056';
// $Payon = '08-2024';
// $m = date("M", mktime(0, 0, 0, (int)$Payon, 10));
// $y = substr((string)$Payon, 3);
// //echo "EmpID" . $EmpID;
// $Data['PayDetails'] = $this->payroll_model->GetPayslipdata($Payon, $EmpID);
// $fname = $Data['PayDetails'][0]->FName;
// $filename = 'PayslipFor-' . $EmpID . ' ' . $fname . ' ' . $m . ' ' . $y;
// $totalsalary = $Data['PayDetails'][0]->TotalSalary;
// $totalsalaryinwords = $this->convertNumber(round($totalsalary));
// $Data['amtinwords'] = $totalsalaryinwords;
// // dd ($Data);
// echo view("payslipgenerateprint", $Data);
// die;
$filename = " ";
$html = "";
$All = $this->request->getPost('All');
// if ($All == '') {
// $this->validator->setRules([
// 'Employee' => [
// 'label' => 'Employee',
// 'rules' => 'trim|callback_Employee_validate',
// ]
// ]);
// }
// $this->validator->setRules([
// 'PayOn' => [
// 'label' => 'PayOn',
// 'rules' => 'trim|callback_PayOn_validate',
// ]
// ]);
// if ($this->validator->run() == FALSE) {
// $this->viewGenerator();
// } else {
$Payon = $this->request->getPost('PayOn');
$m = date("M", mktime(0, 0, 0, (int)$Payon, 10));
//$y =date("Y",mktime(0, 0, 0, $Payon, 10));
//$m=date("M-Y",mktime(0,0,0,$month,1,$year));
$y = substr((string)$Payon, 3);
//echo "Payon" . $Payon;
if ($All != '') {
$filename = 'PayslipFor-' . $m . '-' . $y;
$result = $this->payroll_model->getEmpAll($Payon);
// print_r($result);
// die();
if ($result > 0) {
for ($i = 0; $i < count($result); $i++) {
$EmpID = $result[$i]['EmpId'];
//print_r(
//$EmpID );
// die();
$Data['PayDetails'] = $this->payroll_model->GetPayslipdata($Payon, $EmpID);
//
$totalsalary = $Data['PayDetails'][0]->LessAdvance;
$totalsalaryinwords = $this->convertNumber(round($totalsalary));
$Data['amtinwords'] = $totalsalaryinwords;
// print_r ($Data);
// exit();
//$Data['Count'] = $i;
$html .= view("payslipgenerateprint", $Data);
// print_r ($Data);
// exit();
}
}
} else {
@ -1088,45 +1175,12 @@ class Payslip extends BaseController
$totalsalary = $Data['PayDetails'][0]->LessAdvance;
$totalsalaryinwords = $this->convertNumber(round($totalsalary));
$Data['amtinwords'] = $totalsalaryinwords;
//print_r ($Data);
//exit();
// print_r ($Data);
// exit();
$html = view("payslipgenerateprint", $Data);
}
// $php = $this->output->get_output();
// // Load library
// $this->load->library('dompdf_gen');
// if($All != '')
// {
// $filename = 'Payslip-'.$Payon.'.pdf' ;
// }
// else
// {
// $filename = 'Payslip-'.$EmpID . '-' .$Payon.'.pdf' ;
// }
// require_once(APPPATH .'third_party/dompdf/dompdf_config.inc.php');
// $dompdf = new DOMPDF();
// $dompdf->set_paper('A4', 'portrait');
// $dompdf->load_html($php);
// $dompdf->render();
// // add the header
// $canvas = $dompdf->get_canvas();
// $font = Font_Metrics::get_font("helvetica", "bold");
// // the same call as in my previous example
// $canvas->page_text(72, 18, "Page: {PAGE_NUM} of {PAGE_COUNT}",
// $font, 6, array(0,0,0));
// $dompdf->stream($filename);
// }
// $mpdf = new mPDF('utf-8', 'A4-P', 10, 10, 10, 10, 10, 24, 4, 6);
$mpdf = new Mpdf([
'mode' => 'utf-8',
'format' => 'A4-P',
@ -1147,7 +1201,7 @@ class Payslip extends BaseController
$mpdf->SetTitle('Resico:Payslip');
$mpdf->Output("Payslip-" . $filename . ".pdf", 'D');
// }
}
function updatePayslip()

View File

@ -84,7 +84,7 @@ class Monthlypay_model extends Model
$month = '0' . $month;
}
//echo $month;
$current = '01-' . $current;
//echo $current;
@ -100,7 +100,7 @@ class Monthlypay_model extends Model
//echo $lastdate;
//left join t_payroll on t_employee_details.EmpID = t_payroll.EmpID and month(t_payroll.PayOn) = month(?) and year(t_payroll.PayOn) = year(?)
$sql = "select t_emp_pay_data.EmpID,t_emp_pay_data.*,t_employee_details.FirstName,t_employee_details.DateofJoining,t_employee_details.Designation,t_employee_details.esi_applicable,t_employee_details.pf_applicable,t_employee_details.is_management_team,t_attendance.Days_Worked as Days_worked,t_attendance.Absent as LOP_Days,t_attendance.Paid_Leave as Paid_leave,t_attendance.Total_OTHrs as OT_Hrs_Worked,t_attendance.NoofDays,t_attendance.sunday_count,t_loan_master.Loan_ID,t_loan_master.Monthly_Due,t_loan_master.Due_Start_Date as DueDate,t_loan_master.Loan_Amount,t_loan_master.Paid_Amount,t_payroll.Key,t_monthly_pay_inputs.Incentives as MonthlyIncentives,t_monthly_pay_inputs.Loan_Recovered,t_monthly_pay_inputs.Estimate,t_monthly_pay_inputs.Festival_Bonus,t_monthly_pay_inputs.Other_Deductions,t_loan_history .Balance_Amount
$sql = "select t_emp_pay_data.EmpID,t_emp_pay_data.*,t_employee_details.FirstName,t_employee_details.DateofJoining,t_employee_details.Designation,t_employee_details.esi_applicable,t_employee_details.pf_applicable,t_employee_details.is_management_team,t_attendance.Days_Worked as Days_worked,t_attendance.Absent as LOP_Days,t_attendance.Paid_Leave as Paid_leave,t_attendance.Total_OTHrs as OT_Hrs_Worked,t_attendance.NoofDays,t_attendance.sunday_count,t_loan_master.Loan_ID,t_loan_master.Monthly_Due,t_loan_master.Due_Start_Date as DueDate,t_loan_master.Loan_Amount,t_loan_master.Paid_Amount,t_payroll.Key,t_monthly_pay_inputs.Loan_Recovered,t_monthly_pay_inputs.Estimate,t_monthly_pay_inputs.Festival_Bonus,t_monthly_pay_inputs.Other_Deductions,t_loan_history .Balance_Amount
from t_emp_pay_data
left join t_employee_details on t_employee_details.EmpID = t_emp_pay_data.EmpID
left join t_payroll on t_employee_details.EmpID = t_payroll.EmpID and t_payroll.PayOn = ?
@ -113,6 +113,9 @@ class Monthlypay_model extends Model
order by t_employee_details.EmpID";
$query = $this->db->query($sql, array($month, $month, $lastdate, $current, $current));
// Get the last executed query
// $last_query = $this->db->getLastQuery();
// echo $last_query;
return $query->getResult();
}
@ -371,7 +374,7 @@ join t_departmentdetails as Dep on Dep.DEPCode=Emp.Departmentcode where Emp.IsA
$pre_year = $curr_split[0];
$curr_year = $curr_split[1];
$sql = "select t_monthly_pay_inputs.EmpID,t_employee_details.FirstName,t_employee_details.LastName,sum(Incentives) as Incentives,sum(Festival_Bonus) as Bonus
$sql = "select t_monthly_pay_inputs.EmpID,t_employee_details.FirstName,t_employee_details.LastName,sum(Festival_Bonus) as Bonus
from t_monthly_pay_inputs
join t_employee_details on t_monthly_pay_inputs.EmpID = t_employee_details.EmpID
where
@ -393,7 +396,7 @@ join t_departmentdetails as Dep on Dep.DEPCode=Emp.Departmentcode where Emp.IsA
$pre_year = $curr_split[0];
$curr_year = $curr_split[1];
$sql = "select t_monthly_pay_inputs.EmpID,t_monthly_pay_inputs.Month_Year,t_employee_details.FirstName,t_employee_details.LastName,sum(Incentives) as Incentives,sum(Festival_Bonus) as Bonus
$sql = "select t_monthly_pay_inputs.EmpID,t_monthly_pay_inputs.Month_Year,t_employee_details.FirstName,t_employee_details.LastName,sum(Festival_Bonus) as Bonus
from t_monthly_pay_inputs
join t_employee_details on t_monthly_pay_inputs.EmpID = t_employee_details.EmpID
and t_monthly_pay_inputs.EmpID = ?

View File

@ -376,8 +376,10 @@ class Payroll_model extends Model
function getEmpID()
{
$builder = $this->db->table('t_employee_details')
->select('EmpID,FirstName,LastName');
$builder = $this->db->table('t_employee_details E')
->select('E.EmpID, E.FirstName, E.LastName')
->join('t_loan_master LM', 'LM.EmpID = E.EmpID', 'left')
->where('LM.Loan_ID IS NULL');
$query = $builder->get();
return $query->getResult();
@ -487,4 +489,42 @@ class Payroll_model extends Model
//return $query_count;
return $query->getResult();
}
function getMonthlyPayDetails($EmpId, $PayOn)
{
$builder = $this->db->table('t_monthly_pay_inputs MonthlyPay ')
->select('MonthlyPay.*, E.BankAccountNo , E.PFNO , E.ESI as ESINO , L.*')
->join('t_employee_details as E', 'MonthlyPay.EmpID = E.EmpID', 'left')
->join('t_loan_master as L', 'MonthlyPay.EmpID = L.EmpID and L.is_Active = 1', 'left')
->where('MonthlyPay.EmpID', $EmpId)
->where('MonthlyPay.Month_Year', $PayOn);
$query = $builder->get();
return $query->getResult();
}
function insertPayroll($data)
{
$builder = $this->db->table('t_payroll');
$builder->insert($data);
$count = $this->db->affectedRows();
return $count;
}
function insertLoanHistory($data)
{
$builder = $this->db->table('t_loan_history');
$builder->insert($data);
$count = $this->db->affectedRows();
return $count;
}
function updateLoan($LoanID,$EmpID,$data)
{
$builder = $this->db->table('t_loan_master')
->where('Loan_ID', $LoanID)
->where('EmpID', $EmpID)
->update($data);
$count = $this->db->affectedRows();
return $count;
}
}

View File

@ -36,7 +36,7 @@
<div class="row" style="margin-bottom: 10px;">
<div class="col-6">
<div class="page-title-box page-title-box-alt">
<h4 class="page-title">Add Employee Pay</h4>
<h4 class="page-title">Create Loan</h4>
</div>
</div>
<div class="col-6 text-right">

View File

@ -3,58 +3,13 @@
<!-- ============================================================== -->
<!-- Footer Start -->
<footer class="footer">
<div class="container-fluid">
<div class="row">
<div class="col-md-5">
<b><a href="<?php echo base_url(); ?>">RESICO </a></b> Version 2.0 | <?php echo generateCopyrightNotice(); ?>.
</div>
<div class="col-md-7">
<div class="text-md-right footer-links d-none d-sm-block">
<!-- Vendor js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/vendor.min.js"></script>
<!-- third party js -->
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive/js/dataTables.responsive.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive-bs4/js/responsive.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/dataTables.buttons.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons-bs4/js/buttons.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.html5.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.flash.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.print.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-keytable/js/dataTables.keyTable.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-select/js/dataTables.select.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/pdfmake.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/vfs_fonts.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/table-to-json/1.0.0/jquery.tabletojson.js"></script>
<!-- third party js ends -->
<!-- Datatables init -->
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/datatables.init.js"></script>
<!-- App js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/app.min.js"></script>
<!--Morris Chart-->
<script src="<?php echo base_url(); ?>public/new_assets/libs/morris.js06/morris.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/raphael/raphael.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/morris.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/c3/c3.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/c3.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/select2/js/select2.min.js"></script>
<!-- <script src="<?php echo base_url(); ?>public/new_assets/js/validation.js" type="text/javascript"></script> -->
</div>
<div class="text-md-right footer-links d-none d-sm-block"></div>
</div>
</div>
</div>
@ -63,12 +18,43 @@
</div>
<!-- END wrapper -->
<!-- Vendor js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/vendor.min.js"></script>
<!-- third party js -->
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive/js/dataTables.responsive.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive-bs4/js/responsive.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/dataTables.buttons.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons-bs4/js/buttons.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.html5.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.flash.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.print.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-keytable/js/dataTables.keyTable.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-select/js/dataTables.select.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/pdfmake.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/vfs_fonts.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/table-to-json/1.0.0/jquery.tabletojson.js"></script>
<!-- Datatables init -->
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/datatables.init.js"></script>
<!-- App js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/app.min.js"></script>
<!-- Morris Chart -->
<script src="<?php echo base_url(); ?>public/new_assets/libs/morris.js06/morris.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/raphael/raphael.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/morris.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/c3/c3.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/c3.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/select2/js/select2.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/bootstrap-datepicker/js/bootstrap-datepicker.min.js"></script>
<script>
$(document).ready(function() {
var table = $('.ria_data_table').DataTable({
dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination
buttons: [
@ -93,51 +79,5 @@
$('#hname').addClass('form-control');
});
</script>
<!-- Vendor js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/vendor.min.js"></script>
<!-- third party js -->
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive/js/dataTables.responsive.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-responsive-bs4/js/responsive.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/dataTables.buttons.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons-bs4/js/buttons.bootstrap4.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.html5.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.flash.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-buttons/js/buttons.print.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-keytable/js/dataTables.keyTable.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/datatables.net-select/js/dataTables.select.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/pdfmake.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/pdfmake/build/vfs_fonts.js"></script>
<!-- third party js ends -->
<!-- Datatables init -->
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/datatables.init.js"></script>
<!-- App js -->
<script src="<?php echo base_url(); ?>public/new_assets/js/app.min.js"></script>
<!--Morris Chart-->
<script src="<?php echo base_url(); ?>public/new_assets/libs/morris.js06/morris.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/raphael/raphael.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/morris.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/c3/c3.min.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/js/pages/c3.init.js"></script>
<script src="<?php echo base_url(); ?>public/new_assets/libs/select2/js/select2.min.js"></script>
<!-- <script src="<?php echo base_url(); ?>public/new_assets/js/validation.js" type="text/javascript"></script> -->
<script src="<?php echo base_url(); ?>public/new_assets/libs/bootstrap-datepicker/js/bootstrap-datepicker.min.js"></script>
<script>
</script>
</body>
</html>

View File

@ -481,8 +481,8 @@
<div class="dropdown-menu" aria-labelledby="topnav-payslip">
<a href="<?php echo base_url(); ?>monthlypay" class="dropdown-item">Monthly Pay Information </a>
<a href="<?php echo base_url(); ?>ViewPay" class="dropdown-item">PaySlip Generator</a>
<a href="<?php echo base_url(); ?>PaysilpListing" class="dropdown-item">Edit Payslip</a>
<a href="<?php echo base_url(); ?>emppayListings" class="dropdown-item">Employee Salary Details</a>
<!-- <a href="<?php echo base_url(); ?>PaysilpListing" class="dropdown-item">Edit Payslip</a> -->
<a href="<?php echo base_url(); ?>emppayListings" class="dropdown-item">Employee Loan Details</a>
<a href="<?php echo base_url(); ?>publicholidays" class="dropdown-item">Public Holidays</a>
<a href="<?php echo base_url(); ?>leavereports" class="dropdown-item">Leave Reports</a>

View File

@ -296,27 +296,27 @@
<td style="max-width:80px"><?php echo $record->TotalSalary; ?></td>
<td style="max-width:80px">
<?php $perDaySalary = $record->TotalSalary / $record->NoofDays;
echo number_format($perDaySalary, 2); ?>
echo number_format($perDaySalary, 2, '.', ''); ?>
</td>
<td style="max-width:80px">
<?php $workedSalary = $perDaySalary * ($record->Days_worked + $record->sunday_count);
echo number_format($workedSalary, 2); ?>
echo number_format($workedSalary, 2, '.', ''); ?>
</td>
<td style="max-width:80px">
<?php $perHrSalary = $perDaySalary / 8;
echo number_format($perHrSalary, 2); ?>
</td>
<td style="max-width:80px"><?php echo number_format($workedSalary, 2); ?></td>
<td style="max-width:80px"><?php echo number_format($workedSalary, 2, '.', ''); ?></td>
<td style="max-width:80px">
<?php $basicWorked = $workedSalary * 70 / 100;
echo number_format($basicWorked, 2); ?>
echo number_format($basicWorked, 2, '.', ''); ?>
</td>
<td style="max-width:80px">
<?php $hraWorked = $workedSalary * 30 / 100;
echo number_format($hraWorked, 2); ?>
echo number_format($hraWorked, 2, '.', ''); ?>
</td>
<td style="max-width:80px">
<?php echo number_format($basicWorked + $hraWorked, 2); ?></td>
<?php echo number_format($basicWorked + $hraWorked, 2, '.', ''); ?></td>
<td id="esiAmt<?php echo $index ?>" style="max-width:80px"> <?php echo $esi[$i]; ?> </td>
<td id="pfAmt<?php echo $index ?>" style="max-width:80px"> <?php echo $pf[$i]; ?> </td>
<td style="max-width:80px"> <?php echo $over_time[$i]; ?> </td>
@ -584,10 +584,19 @@
function getAllData() {
console.log("enter");
var alldata = $("#monthlylistings").tableToJSON();
//alert(JSON.stringify(alldata));
alldata = JSON.stringify(alldata)
var alldata = $("#monthlylistings").tableToJSON();
alldata = JSON.stringify(alldata)
// Parse the JSON string back into an array of objects
alldata = JSON.parse(alldata);
// Filter out objects where "Emp ID" is empty
alldata = alldata.filter(function(item) {
return item["Emp ID"].trim() !== "";
});
// Convert the filtered array back to a JSON string if needed
alldata = JSON.stringify(alldata);
var month = $('#monthyear').val();
// $('.content').loader('show');
$.ajax({

View File

@ -1,196 +1,6 @@
<?php
$PayOn = '';
$EmpID = '';
$FirstName = '';
$LastName = '';
$DateofBirth = '';
$DateofJoining = '';
$Designation = '';
$Departmentcode = '';
$PANNo = '';
$AadharNo='';
$BankAccountNo = '';
$IFSCCode ='';
$BankBranchName = '';
$PFnumber = '';
$ESInumber = '';
$TotalNoofDays = '';
$NoOfWorkingdays ='';
$paidleave = 0.00;
$LOP='';
$ActualSalary = '';
$PerDaySalary = '';
$WorkedSalary = '';
$BasicAndDA = '';
$HRA = '';
$OTWages = '';
$OTPerHours ='';
$OTSalary = '';
$GrosssSalary = '';
$ESI = '';
$PF = '';
$ESIAndPF = '';
$SalaryAsPerPF = '';
$FoodAllowance ='';
$Incentive = '';
$Festival_bonus = '';
$TotalSalary = '';
$Advance = '';
$BalanceAdvance = '';
$LessAdvance = '';
$DeptName = '';
$LossofPay = '0.00';
$RecCount = '';
$OtherDeductions='0.00';
$LoanAdvance='0.00';
$Otherallowances='0.00';
$TotalAmountInWords='';
$TotalComapanyContribution = 0.00;
<!-- <div style= "page-break-before:always;"></div > -->
if(!empty($Count))
{
$RecCount = $Count;
}
//echo $RecCount;
if(!empty($PayDetails))
{
foreach ($PayDetails as $Pay)
{
$Paydt = $Pay->PayOn;
$dt = '01-'.$Paydt;
$PayOn = date('M-Y',strtotime($dt));
$EmpID = $Pay->EmpID;
$FirstName = $Pay->FName;
$LastName = $Pay->Lname;
$DoB = $Pay->Dob;
$DoJ = $Pay->DOJ;
$from = new DateTime($DoB);
$dt = new DateTime($DoJ);
$DateofBirth = $from ->format('d-m-Y');
$DateofJoining = $dt ->format('d-m-Y');
$Designation = $Pay->Designation;
$PANNo =$Pay->Pan;
$AadharNo=$Pay->AadharNo;
$BankAccountNo = $Pay->BankAccountNumber;
$IFSCCode =$Pay->IFSCCode;
$BankBranchName = $Pay->BankName;
$PFnumber = $Pay->PFNumber;
$ESInumber = $Pay->ESINumber;
$TotalNoofDays = $Pay->TotalCalDays;
$NoOfWorkingdays =$Pay->NoofDaysWorked;
$paidleave = $Pay->Paid_Leave;
$NoOfWorkingdays = $NoOfWorkingdays + $paidleave;
$ActualSalary = $Pay->ActualSalary;
$LOP=$Pay->LOP;
$PerDaySalary = $Pay->PerDaySalary;
$WorkedSalary = $Pay->WorkedSalary;
$BasicAndDA = $Pay->BasicPlusDA;
$HRA = $Pay->HRA;
$OTWage = $Pay->OTWages;
$OtherDeductions=$Pay->OtherDeductions;
$LoanAdvance=$Pay->Advance;
$TotalComapanyContribution=$Pay->TotalCompCon;
if($OTWage == '')
{
$OTWages = '0.00';
}
else
{
$OTWages = $OTWage;
}
$OTPerHours =$Pay->OTperHours;
$OTSal = $Pay->OTSalary;
if($OTSal == '')
{
$OTSalary = '0.00';
}
else
{
$OTSalary = $OTSal;
}
$GrosssSalary = $Pay->ESIGrossSalary;
$ESI = $Pay->EmployeeESI;
$PF = $Pay->PF;
$ESIAndPF = $PF+$ESI+$OtherDeductions+$LoanAdvance;
$SalaryAsPerPF = $Pay->SalaryAsPerPF;
$Food =$Pay->FoodAllowance;
$Otherallowances=$Pay->Other_allowances;
if($Food == '')
{
$FoodAllowance = '0.00';
}
else
{
$FoodAllowance = $Food;
}
$IncenAmt = $Pay->Incentive;
if($IncenAmt == '')
{
$Incentive = '0.00';
}
else
{
$Incentive = $IncenAmt;
}
$festbonus = $Pay->Festival_Bonus;
if($festbonus == '')
{
$Festival_bonus = '0.00';
}
else
{
$Festival_bonus = $festbonus;
}
$TotalSalary = $WorkedSalary+$HRA+$Food+$IncenAmt+$OTSal+$Otherallowances+$Festival_bonus;
$Adv = $Pay->Advance;
if($Adv == '')
{
$Advance = '0.00';
}
else
{
$Advance = $Adv;
}
$BalanceAdv = $Pay->BalanceAdvance;
if($BalanceAdv == '')
{
$BalanceAdvance = '0.00';
}
else
{
$BalanceAdvance = $BalanceAdv;
}
$LessAdv = $Pay->LessAdvance;
if($LessAdv == '')
{
$LessAdvance = '0.00';
}
else
{
$LessAdvance = $LessAdv;
}
$DeptName = $Pay->DeptName;
}
}
if($RecCount > 0)
{
?>
<div style= "page-break-before:always;"></div >
<?php
}
?>
@ -200,7 +10,7 @@ if($RecCount > 0)
</td>
<td colspan="10">
<center><b>RESICO</b><br/> Survey No: 168/1C3,Pennalur Pet Road,Goonipalyam village, <br/>Uthukottai Taluk,Tiruvallur Dist, Chennai,Tamilnadu,Pin code : 602026. <br/> PaySlip for the Month of <?php echo $PayOn ?></center>
<center><b>RESICO</b><br/> Survey No: 168/1C3,Pennalur Pet Road,Goonipalyam village, <br/>Uthukottai Taluk,Tiruvallur Dist, Chennai,Tamilnadu,Pin code : 602026. <br/> PaySlip for the Month of <?php echo $PayDetails[0]->PayOn ?></center>
</td>
</tr>
<tr>
@ -209,58 +19,58 @@ if($RecCount > 0)
<tbody>
<tr >
<td width="160px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Name </td>
<td width="200px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$FirstName.'&nbsp;'.$LastName; ?></td>
<td width="200px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->FName; ?></td>
<td width="160px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Employee ID </td>
<td width="152px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$EmpID ?></td>
<td width="152px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->EmpID ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Designation </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" > <?php echo ':&nbsp;'.$Designation ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" > <?php echo ':&nbsp;'.$PayDetails[0]->Designation ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Department </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$DeptName ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->DeptName ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Date Of Joining </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$DateofJoining ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.date('d-m-Y', strtotime($PayDetails[0]->DOJ)) ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Available Calender Days </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$TotalNoofDays ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$PayDetails[0]->TotalCalDays ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Date Of Birth </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$DateofBirth ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.date('d-m-Y', strtotime($PayDetails[0]->Dob)) ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Loss Of Pay Days </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'. number_format((double)$LOP,2,'.',''); ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'. number_format((double)$PayDetails[0]->LOP,2,'.',''); ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">PF Account Number </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" ><?php echo ':&nbsp;'.$PFnumber ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" ><?php echo ':&nbsp;'.$PayDetails[0]->PFNumber ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Paid Days </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.number_format($NoOfWorkingdays,2,'.',''); ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.number_format($PayDetails[0]->NoofDaysWorked,2,'.',''); ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Bank Name </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$BankBranchName ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->BankName ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Loan Balance </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" ><?php echo ':&nbsp;Rs&nbsp;'.$BalanceAdvance ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;" ><?php echo ':&nbsp;Rs&nbsp;'.$PayDetails[0]->BalanceAdvance ?></td>
</tr>
<tr>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Bank Account Number </td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$BankAccountNo ?></td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$PayDetails[0]->BankAccountNumber ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">OT In Hours </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$OTPerHours ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->OT_Hrs_Worked ?></td>
</tr>
<tr>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Bank IFSC </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$IFSCCode ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->IFSCCode ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">ESI Account Number </td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$ESInumber ?></td>
<td style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"> <?php echo ':&nbsp;'.$PayDetails[0]->ESINumber ?></td>
</tr>
<tr>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">PAN Number </td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PANNo;?> </td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$PayDetails[0]->Pan;?> </td>
<td width="50px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;">Aadhar Number </td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.$AadharNo;?></td>
<td width="100px;" style="border-left: 0px ;border-bottom: 0px; border-right: 0px ;border-top: 0px ;"><?php echo ':&nbsp;'.str_replace(' ', '', $PayDetails[0]->AadharNo);?></td>
</tr>
</tbody>
</table>
@ -270,59 +80,55 @@ if($RecCount > 0)
<table style="border-collapse: collapse;border-top:#fff;" cellpadding="0" cellspacing="0" border="1" width="100%" >
<tr><th>Earnings</th><th>Amount <span style="font-family: DejaVu Sans; sans-serif;">&#8377;</span></th><th>Deductions</th><th>Amount <span style="font-family: DejaVu Sans; sans-serif;">&#8377;</span></th></tr>
<tr>
<td width="25%;">&nbsp;Basic Plus DA</td>
<td width="20%;" style="text-align: right;" ><?php echo $WorkedSalary ?>&nbsp;</td>
<td width="25%;">&nbsp;Basic </td>
<td width="20%;" style="text-align: right;" ><?php echo $PayDetails[0]->Basic; ?>&nbsp;</td>
<td width="25%;">&nbsp;Provident Fund</td>
<td width="30%;" style="text-align: right;" ><?php echo $PF ?>&nbsp;</td>
<td width="30%;" style="text-align: right;" ><?php echo $PayDetails[0]->PF; ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;House Rent Allowance</td>
<td style="text-align: right;"><?php echo $HRA ?>&nbsp;</td>
<td style="text-align: right;"><?php echo $PayDetails[0]->HRA; ?>&nbsp;</td>
<td>&nbsp;Employee State Insurance</td>
<td style="text-align: right;"> <?php echo $ESI ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;Food Allowance</td>
<td style="text-align: right;"> <?php echo $FoodAllowance ?>&nbsp;</td>
<td>&nbsp;Loan Recovery</td>
<td style="text-align: right;"> <?php echo $LoanAdvance ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;Other Allowance</td>
<td style="text-align: right;"> <?php echo $Otherallowances ?>&nbsp;</td>
<td>&nbsp;Other Deduction</td>
<td style="text-align: right;"> <?php echo $OtherDeductions ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;Incentive</td>
<td style="text-align: right;"> <?php echo $Incentive ?>&nbsp;</td>
<td></td>
<td style="text-align: right;"></td>
<td style="text-align: right;"> <?php echo $PayDetails[0]->ESI; ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;OT Salary</td>
<td style="text-align: right;"> <?php echo $OTSalary ?>&nbsp;</td>
<td></td>
<td style="text-align: right;"></td>
<td style="text-align: right;"> <?php echo $PayDetails[0]->OTSalary ?>&nbsp;</td>
<td>&nbsp;Loan Recovery</td>
<td style="text-align: right;"> <?php echo $PayDetails[0]->Advance ?>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;Festival Bonus</td>
<td style="text-align: right;"><?php echo $Festival_bonus ?>&nbsp;</td>
<td></td>
<td style="text-align: right;"></td>
<td style="text-align: right;"><?php echo $PayDetails[0]->Festival_Bonus ?>&nbsp;</td>
<td>&nbsp;TDS Deduction</td>
<td style="text-align: right;"> <?php echo $PayDetails[0]->OtherDeductions ?>&nbsp;</td>
</tr>
<tr><th nowrap>&nbsp;Total Earning (Rounded) (TE)</th>
<td style="text-align: right;"> <?php echo number_format(round($TotalSalary),2,'.','')?>&nbsp;</td>
<th nowrap>&nbsp;Total Deduction (Rounded)(TD)</th>
<td style="text-align: right;"> <?php echo number_format(round($ESIAndPF),2,'.','') ?>&nbsp;</td>
<tr><th nowrap>&nbsp;Total Earning (Rounded)</th>
<td style="text-align: right;">
<?php
$totEarning = $PayDetails[0]->Basic + $PayDetails[0]->HRA + $PayDetails[0]->OTSalary + $PayDetails[0]->Festival_Bonus;
echo number_format(round($totEarning),2)
?>
&nbsp;</td>
<th nowrap>&nbsp;Total Deduction (Rounded)</th>
<td style="text-align: right;">
<?php
$totDeduction = $PayDetails[0]->PF + $PayDetails[0]->ESI + $PayDetails[0]->Advance + $PayDetails[0]->OtherDeductions;
echo number_format(round($totDeduction),2)
?>
&nbsp;</td>
</tr>
<tr><th style="text-align: right;" colspan="3">Net Pay (TE - TD)(Rounded) &nbsp;</th>
<td style="text-align: right;" colspan="1"><?php echo number_format(round($LessAdvance),2,'.','') ?>&nbsp;</td>
</tr>
<tr><th style="text-align: right;" colspan="3">Company Contribution(Rounded) &nbsp;</th>
<td style="text-align: right;" colspan="1"><?php echo number_format(round($TotalComapanyContribution),2,'.','') ?>&nbsp;</td>
<tr><th style="text-align: right;" colspan="3">Net Pay(Rounded) &nbsp;</th>
<td style="text-align: right;" colspan="1"><?php echo number_format(round($PayDetails[0]->TotalSalary),2,'.','') ?>&nbsp;</td>
</tr>
<!-- <tr><th style="text-align: right;" colspan="3">Company Contribution(Rounded) &nbsp;</th>
<td style="text-align: right;" colspan="1"><?php ?>&nbsp;</td>
</tr> -->
<tr><th style="text-align: right;" colspan="1">Total Amount In Words &nbsp;</th>
<td style="text-align: right;" colspan="3"><?php if(!empty($amtinwords)){ print_r($amtinwords);} ?></td>
</tr>