updating of work days

updating of work days
pull/13/head
paulcortez 7 months ago
parent a2ab91048f
commit aea6b29985

@ -0,0 +1,41 @@
<?php
namespace App\ClassLib;
class PayrollComputation
{
public function __construct()
{
}
public function computeIncomeTax($grossTaxableIncome)
{
$tax = 0;
if($grossTaxableIncome <= 10417)
{
$tax = 0;
}
else if($grossTaxableIncome <= 16666)
{
$tax = ($grossTaxableIncome - 10417) * 0.2;
}
else if($grossTaxableIncome <= 33332)
{
$tax = (($grossTaxableIncome - 16667) * 0.25) + 1250;
}
else if($grossTaxableIncome <= 83332)
{
$tax = (($grossTaxableIncome - 33333) * 0.3) + 5416.67;
}
else if($grossTaxableIncome <= 333332)
{
$tax = (($grossTaxableIncome - 83333) * 0.32) + 20416.67;
}
else
{
$tax = (($grossTaxableIncome - 333333) * 0.35) + 100416.67;
}
return $tax;
}
}

@ -56,6 +56,11 @@ $routes->post('payroll/addpaytrans', 'PayrollController::addPayrollTransactions'
$routes->get('payroll/emppaytrans/(:num)', 'PayrollController::employeePayrollTransactions/$1');
$routes->get('payroll/emppaytransinit/(:num)/(:num)/(:num)', 'PayrollController::empPayTransInitializePayroll/$1/$2/$3');
$routes->post('payroll/emppaytransupdateworkdays', 'PayrollController::employeePayrollTransactionsEditDaysWorked');
//$routes->get('t/(:num)/(:num)', 'PayrollController::computeEmployeePayroll/$1/$2');
// Administrator Routes
$routes->get('adminuser', 'AdministratorController::index');

@ -34,6 +34,7 @@ use App\Entities\EmpPayTransIncomeDeduction;
// Class Library
use App\ClassLib\MiscLib;
use App\ClassLib\PayrollComputation;
class PayrollController extends BaseController
{
@ -42,6 +43,57 @@ class PayrollController extends BaseController
return redirect()->to(base_url('/login'));
}
// Internally used functions
private function computeEmployeePayroll($emppaytransid, $save = false, $instanceOfEmpPayTransModel = null, $instanceOfEmpPayTransInDedModel = null)
{
if($instanceOfEmpPayTransModel == null)
$empPayTransModel = new EmployeePayTransactionModel();
else
$empPayTransModel = $instanceOfEmpPayTransModel;
if($instanceOfEmpPayTransInDedModel == null)
$empPayTransInDedModel = new EmpPayTransIncomeDeductionModel();
else
$empPayTransInDedModel = $instanceOfEmpPayTransInDedModel;
$empPayTrans = $empPayTransModel->find($emppaytransid);
// Compute basic pay first
$empPayTrans->basic_pay = $empPayTrans->actual_work_days * $empPayTrans->basic_daily_pay;
$empPayTrans->taxable_income = $empPayTransInDedModel->getTotalIncomeDeduction($emppaytransid, 1, 1) + $empPayTrans->basic_pay;
$empPayTrans->nontaxable_income = $empPayTransInDedModel->getTotalIncomeDeduction($emppaytransid, 1, 0);
$empPayTrans->taxable_deduction = $empPayTransInDedModel->getTotalIncomeDeduction($emppaytransid, 0, 1);
$empPayTrans->nontaxable_deduction = $empPayTransInDedModel->getTotalIncomeDeduction($emppaytransid, 0, 0);
// Compute gross first before getting taxable income to avoid misscalculation of net income
$empPayTrans->gross_income = $empPayTrans->taxable_income + $empPayTrans->nontaxable_income;
// Deduct SSS, Philhealth, Pagibig and Union Dues
$empPayTrans->taxable_income -= $empPayTrans->nontaxable_deduction;
// Compute Income Tax after getting taxable income
$payCompute = new PayrollComputation();
$empPayTrans->income_tax = $payCompute->computeIncomeTax($empPayTrans->taxable_income);
// Deduction and net pay
$empPayTrans->total_deduction = $empPayTrans->taxable_deduction + $empPayTrans->nontaxable_deduction + $empPayTrans->income_tax;
$empPayTrans->net_pay = $empPayTrans->gross_income - $empPayTrans->total_deduction;
if($save) $empPayTransModel->save($empPayTrans);
}
private function printRaw($label, $data)
{
echo $label.": ";
print_r($empPayTrans->net_pay);
echo "<br><br>";
}
// --end-- Internally used functions
public function payrollGroup()
{
@ -54,7 +106,7 @@ class PayrollController extends BaseController
$data['tblPayGroup'] = '<p>No groups found.</p>';
else
{
$payGroupHTMLTable->setHeading('ID', 'Group Name', 'Action');
$payGroupHTMLTable->setHeading('ID', 'Group Code', 'Group Name', 'Action');
foreach($payGroups as $group)
{
@ -397,7 +449,6 @@ class PayrollController extends BaseController
public function employeePayrollTransactions($paytransid)
{
$data['paygroupid'] = $this->request->getGet('grpid');
$data['showInitBtn'] = false;
@ -429,13 +480,54 @@ class PayrollController extends BaseController
}
else
{
$empPayTransHTMLTable->setHeading('ID', 'Name', 'Branch', 'Monthly Basic', 'Action');
$empPayTransHTMLTable->setHeading('ID', 'Name', 'Branch', 'Basic Salary', 'Days Work', 'Gross', 'Deduction', 'Net', 'Action');
/* `emppaytrans_id`, `paytrans_id`, `company_id`, `branch_code`, `dept_id`, `job_title_id`,
`pay_group_id`, `emp_status_id`, `employee_id`, `company_issued_id`, `last_name`, `first_name`,
`middle_name`, `suffix`, `email_address`, `is_ATM`, `savings_account`, `basic_monthly_pay`, `basic_daily_pay`,
`basic_hourly_pay`, `has_cola`, `has_philhealth`, `has_hdmf`, `has_sss`, `has_gsis`, `actual_work_days`, `basic_pay`,
`gross_income`, `taxable_income`, `nontaxable_income`, `income_tax`, `total_deduction`, `taxable_deduction`, `nontaxable_deduction`,
`net_pay`, `created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `paytrans_id`, `paytype_id`, `payschedule_id`, `payroll_from`,
`payroll_to`, `no_of_days`, `total_emp`, `total_gross`, `remarks`, `is_open`, `created_at`, `created_by`, `updated_at`,
`updated_by`, `deleted_at`, `branch_code`, `company_id`, `branch_name`, `address`, `contact_number`, `email_address`,
`created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `dept_id`, `company_id`, `parent_dept_id`,
`department_code`, `department_name`, `created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `job_title_id`,
`job_title_name`, `created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `pay_group_id`, `pay_group_code`,
`pay_group_name`, `created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `emp_status_id`, `status_name`,
`created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`, `employee_id`, `company_id`, `branch_code`, `dept_id`,
`job_title_id`, `emp_status_id`, `pay_group_id`, `company_issued_id`, `last_name`, `first_name`, `middle_name`, `suffix`, `email_address`,
`contact_number`, `created_at`, `created_by`, `updated_at`, `updated_by`, `deleted_at`
[emppaytrans_id] => 30 [paytrans_id] => 1 [company_id] => 1 [branch_code] => KWSMB [dept_id] => 1 [job_title_id] => 1 [pay_group_id] => 1
[emp_status_id] => 1 [employee_id] => 1 [company_issued_id] => 1900 [last_name] => bel [first_name] => paul [middle_name] => b [suffix] =>
[email_address] => user1@yahoo.com [is_ATM] => 1 [savings_account] => 0000 [basic_monthly_pay] => 20000.0000 [basic_daily_pay] => 766.7732
[basic_hourly_pay] => 95.8466 [has_cola] => 0 [has_philhealth] => 1 [has_hdmf] => 1 [has_sss] => 1 [has_gsis] => 0 [actual_work_days] => 8.0000
[basic_pay] => 6134.1856 [gross_income] => 12268.3712 [taxable_income] => 12268.3712 [nontaxable_income] => 0.0000 [income_tax] => 370.2742
[total_deduction] => 400.0000 [taxable_deduction] => 0.0000 [nontaxable_deduction] => 400.0000 [net_pay] => 0.0000
[created_at] => 2024-09-06 06:36:22 [created_by] => 11-E128-70 [updated_at] => 2024-10-05 04:21:57 [updated_by] => 11-E128-70 [deleted_at] =>
[paytype_id] => 1 [payschedule_id] => 1 [payroll_from] => 2024-10-03 [payroll_to] => 2024-10-10 [no_of_days] => 8 [total_emp] => 0 [total_gross] => 0.0000
[remarks] => [is_open] => 1 [branch_name] => Karat World SM City Bacolod [address] => Bacolod City [contact_number] => 000 [parent_dept_id] => 0
[department_code] => HR [department_name] => Human Resources [job_title_name] => HR Personnel [pay_group_code] => VIS [pay_group_name] => Visayas Group
[status_name] => AWOL
[emppaytransinded_id] => 16 [emppaytrans_id] => 30 [inded_id] => 1 [payslip_display] => SSS Contribution [inded_name] => SSS
[coa_code] => [is_income] => 0 [is_taxable] => 0 [include_in_gross] => 0 [is_fixed_amt] => 1 [is_percent_amt] => 0
[amount] => 300.0000 [base_amount] => 300.0000 [is_override] => 0 [created_at] => 2024-09-13 09:34:54 [created_by] => 11-E128-70
[updated_at] => [updated_by] => [deleted_at] => */
foreach($empPayTrans as $trans)
{
$iconView = '<a href="#" class="ml-3" data-toggle="tooltip" title="View Information"><i class="fas fa-eye "></i></a>';
//$iconView = '<a href="#" class="ml-3" data-toggle="tooltip" title="View Information" onclick="showEmpPayTransDetails('.$trans->emppaytrans_id.')"><i class="fas fa-eye "></i></a>';
$iconEdit = '<a href="#" class="ml-3" data-toggle="tooltip" title="Edit Information" onclick="showEmpPayTransDetails('.$trans->emppaytrans_id.')"><i class="fas fa-edit "></i></a>';
$empPayTransHTMLTable->addRow($trans->employee_id, $trans->last_name . ', ' . $trans->first_name, $trans->branch_code, $trans->basic_pay, $trans->actual_work_days, $trans->gross_income, $trans->total_deduction, $trans->net_pay, $iconEdit);
$empPayTransHTMLTable->addRow($trans->employee_id, $trans->last_name . ', ' . $trans->first_name, $trans->branch_code, $trans->basic_monthly_pay, $iconView);
// Get Emp Trans In Ded
$empPayTransInDedModel = new EmpPayTransIncomeDeductionModel();
$data['emppaytrans'][] = ["empPayTrans"=>$trans,
"empPayTransInDed"=>$empPayTransInDedModel->getEmpPayTransInDedxInDedByEmpTransId($trans->emppaytrans_id)];
}
$data['tblEmpPayTrans'] = $empPayTransHTMLTable->generate();
@ -448,11 +540,12 @@ class PayrollController extends BaseController
{
$empPayInfos = (new EmployeePayrollInfoModel())->getEmpPayInfoXEmpPayTypeByPayGrpId($paygroupid, $transtypid);
$payTrans = (new PayrollTransactionModel())->where('paytrans_id', $paytransid)->first();
$empPayTransactionModel = new EmployeePayTransactionModel();
foreach($empPayInfos as $empPayInfo)
{
$empPayTransaction = new EmployeePayTransaction();
$empPayTransactionModel = new EmployeePayTransactionModel();
$empPayTransaction->fill(
['paytrans_id' => $paytransid,
'company_id' => $empPayInfo->company_id,
@ -485,11 +578,13 @@ class PayrollController extends BaseController
'nontaxable_income' => 0,
'income_tax' => 0,
'total_deduction' => 0,
'taxable_deduction' => 0,
'nontaxable_deduction' => 0,
'net_pay' => 0]
);
$empPayTransactionModel->save($empPayTransaction);
$empPayTransId = $empPayTransactionModel->getInsertID();
$empPayTransaction = $empPayTransactionModel->find($empPayTransactionModel->getInsertID());
$empPayInDeds = (new EmpPayIncomeDeductionModel())->getEmpPayInDedByEmpPayIdSchedId($empPayInfo->emppay_id, $payTrans->payschedule_id);
@ -498,8 +593,10 @@ class PayrollController extends BaseController
$empPayTransInDed = new EmpPayTransIncomeDeduction();
$empPayTransInDedModel = new EmpPayTransIncomeDeductionModel();
$amount = $empPayInDed->is_fixed_amt ? $empPayInDed->amount : ($empPayInDed->amount / 100) * $empPayTransaction->basic_pay;
$empPayTransInDed->fill(
['emppaytrans_id' => $empPayTransId,
['emppaytrans_id' => $empPayTransaction->emppaytrans_id,
'inded_id' => $empPayInDed->inded_id,
'payslip_display' => $empPayInDed->payslip_display,
'inded_name' => $empPayInDed->inded_name,
@ -509,15 +606,54 @@ class PayrollController extends BaseController
'include_in_gross' => $empPayInDed->include_in_gross,
'is_fixed_amt' => $empPayInDed->is_fixed_amt,
'is_percent_amt' => $empPayInDed->is_percent_amt,
'amount' => $empPayInDed->is_fixed_amt ? $empPayInDed->amount : ($empPayInDed->amount / 100) * ($payTrans->no_of_days * $empPayInfo->basic_daily_pay),
'amount' => $amount,
'base_amount' => $empPayInDed->amount,
'is_override' => $empPayInDed->is_override]
);
$empPayTransInDedModel->save($empPayTransInDed);
// Updating EmpPayTransaction
if($empPayInDed->is_income)
{
$empPayTransaction->gross_income += $amount;
$empPayTransaction->{$empPayInDed->is_taxable ? 'taxable_income' : 'nontaxable_income'} += $amount;
}
else
{
$empPayTransaction->total_deduction += $amount;
$empPayTransaction->{$empPayInDed->is_taxable ? 'taxable_deduction' : 'nontaxable_deduction'} += $amount;
}
// Less nontaxable deduction to taxable income
$empPayTransaction->taxable_income -= $empPayTransaction->nontaxable_income;
// Compute Income Tax
$payCompute = new PayrollComputation();
$empPayTransaction->income_tax = $payCompute->computeIncomeTax($empPayTransaction->taxable_income);
}
$empPayTransaction->gross_income += $empPayTransaction->basic_pay;
$empPayTransaction->taxable_income += $empPayTransaction->basic_pay;
$empPayTransaction->total_deduction += $empPayTransaction->income_tax;
$empPayTransaction->net_pay = $empPayTransaction->gross_income - $empPayTransaction->total_deduction;
$empPayTransactionModel->save($empPayTransaction);
}
return redirect()->back()->withInput()->with('message', 'Payroll processed. Please verify the entries.');
}
public function employeePayrollTransactionsEditDaysWorked()
{
$empPayTransModel = new EmployeePayTransactionModel();
$rawData = $this->request->getPost();
$empPayTransModel->changeActualDaysWorked($rawData['emppaytrans_id'], $rawData['actual_work_days']);
$this->computeEmployeePayroll($rawData['emppaytrans_id'], true, $empPayTransModel);
return redirect()->back()->withInput()->with('message', 'Days worked updated.');
}
}

@ -0,0 +1,37 @@
<?php
namespace App\Database\Migrations;
use CodeIgniter\Database\Migration;
class AddTaxNonTaxDeductionOnEmpPayTrans extends Migration
{
public function up()
{
$fields = [
'taxable_deduction' => [
'type' => 'DECIMAL',
'constraint' => '12,4',
'null' => false,
'after' => 'total_deduction',
],
'nontaxable_deduction' => [
'type' => 'DECIMAL',
'constraint' => '12,4',
'null' => false,
'after' => 'taxable_deduction',
],
];
$this->forge->addColumn('emp_pay_trans', $fields);
}
public function down()
{
$fields = [
'taxable_deduction',
'nontaxable_deduction',
];
$this->forge->dropColumn('emp_pay_trans', $fields);
}
}

@ -39,6 +39,8 @@ class EmployeePayTransaction extends Entity
'nontaxable_income' => null,
'income_tax' => null,
'total_deduction' => null,
'taxable_deduction' => null,
'nontaxable_deduction' => null,
'net_pay' => null,
];
protected $datamap = [];

@ -57,4 +57,26 @@ class EmpPayTransIncomeDeductionModel extends Model
$data['data']['updated_by'] = auth()->user()->employee_id;
return $data;
}
public function getEmpPayTransInDedxInDedByEmpTransId($emptransid)
{
$builder = $this->db->table('emp_pay_trans_inded');
$builder->select('*');
$builder->join('pay_income_deduction', 'pay_income_deduction.inded_id = emp_pay_trans_inded.inded_id');
$builder->where('emp_pay_trans_inded.emppaytrans_id', $emptransid);
return $builder->get()->getResult();
}
public function getTotalIncomeDeduction($emppaytransid, $isincome, $istaxable)
{
$builder = $this->db->table('emp_pay_trans_inded');
$builder->selectSum('amount');
$builder->where(['emppaytrans_id'=>$emppaytransid,
'is_income'=>$isincome,
'is_taxable'=>$istaxable]);
$result = $builder->get()->getRow();
if($result->amount == null) return 0;
else return $result->amount;
}
}

@ -43,6 +43,8 @@ class EmployeePayTransactionModel extends Model
'nontaxable_income',
'income_tax',
'total_deduction',
'taxable_deduction',
'nontaxable_deduction',
'net_pay'];
protected bool $allowEmptyInserts = false;
@ -97,4 +99,12 @@ class EmployeePayTransactionModel extends Model
$builder->where('emp_pay_trans.pay_group_id', $paygroupid);
return $builder->get()->getResult();
}
public function changeActualDaysWorked($emppaytransid, $actualworkdays)
{
$builder = $this->db->table('emp_pay_trans');
$builder->set('actual_work_days', $actualworkdays);
$builder->where('emppaytrans_id', $emppaytransid);
return $builder->update();
}
}

@ -122,6 +122,178 @@
</div>
</div>
<!-- Employee Income And Transaction Adjustment -->
<div class="row">
<div class="col-12">
<?php if(isset($emppaytrans)): foreach($emppaytrans as $empPayTransaction): ?>
<div id="payrollTabInfo<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" class="card card-primary card-outline card-tabs" style="display:none;">
<div class="card-header p-0 pt-1 border-bottom-0">
<ul class="nav nav-tabs" id="payroll-tab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="payroll-tab-PayInfo-tab<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" data-toggle="pill"
href="#payroll-tab-PayInfo<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" role="tab" aria-controls="custom-tabs-three-home" aria-selected="true">Payroll Information of <strong><?= $empPayTransaction['empPayTrans']->last_name.', '.$empPayTransaction['empPayTrans']->first_name ?></strong></a>
</li>
<li class="nav-item">
<a class="nav-link" id="payroll-tab-PayInDed-tab<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" data-toggle="pill"
href="#payroll-tab-PayInDed<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" role="tab" aria-controls="custom-tabs-three-profile" aria-selected="false">Income and Deduction</a>
</li>
</ul>
</div>
<div class="card-body">
<div class="tab-content" id="payroll-tabContent">
<div class="tab-pane fade show active" id="payroll-tab-PayInfo<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" role="tabpanel"
aria-labelledby="payroll-tab-PayInfo-tab<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>">
<form action="/payroll/emppaytransupdateworkdays" method="post">
<div class="card">
<div class="card-body">
<div class="row">
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Daily Rate</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->basic_daily_pay, 2) ?>" readonly>
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Work Days</label>
<input type="number" step="0.05" class="form-control" name="actual_work_days" value="<?= number_format($empPayTransaction['empPayTrans']->actual_work_days, 2) ?>">
<input type="hidden" name="emppaytrans_id" value="<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>">
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Salary</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->basic_pay, 2) ?>" readonly>
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Taxable Income</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->taxable_income, 2) ?>" readonly>
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Nontaxable Income</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->nontaxable_income, 2) ?>" readonly>
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Gross Salary</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->gross_income, 2) ?>" readonly>
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Taxable Deductions</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->taxable_deduction, 2) ?>" readonly>
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Nontaxable Deductions</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->nontaxable_deduction, 2) ?>" readonly>
<p><i class="small">(this will be deducted to taxable income)</i></p>
</div>
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label>Gross Salary</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->total_deduction, 2) ?>" readonly>
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-sm-6">
<div class="form-group">
<label>Income Tax</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->income_tax, 2) ?>" readonly>
</div>
</div>
<div class="col-12 col-sm-6">
<div class="form-group">
<label>Net Income</label>
<input type="text" class="form-control" value="<?= number_format($empPayTransaction['empPayTrans']->net_pay, 2) ?>" readonly>
</div>
</div>
</div>
</div>
<div class="card-footer">
<button type="submit" class="btn btn-primary">Save Changes</button>
<button type="button" class="btn btn-secondary" onclick="$('#payrollTabInfo<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>').toggle()">Close</button>
</div>
</div>
</form>
</div>
<div class="tab-pane fade" id="payroll-tab-PayInDed<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>" role="tabpanel"
aria-labelledby="payroll-tab-PayInDed-tab<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>">
<form action="" method="post">
<div class="car">
<div class="card-body">
<table class="table table-bordered">
<thead>
<th>
Description
</th>
<th>
Taxable
</th>
<th>
Nontaxable
</th>
</thead>
<tr>
<td>
Basic Pay
</td>
<td>
&nbsp;
</td>
<td>
<?= number_format($empPayTransaction['empPayTrans']->basic_pay, 2, ".", ",") ?>
</td>
</tr>
<?php foreach($empPayTransaction['empPayTransInDed'] as $empPayTransInDed): ?>
<tr>
<td>
<?= $empPayTransInDed->inded_name ?>
</td>
<td>
<?php if(!$empPayTransInDed->is_income) echo "-".number_format($empPayTransInDed->amount, 2, ".", ","); else echo "&nbsp;"; ?>
</td>
<td>
<?php if($empPayTransInDed->is_income) echo number_format($empPayTransInDed->amount, 2, ".", ","); else echo "&nbsp;"; ?>
</td>
</tr>
<?php endforeach; ?>
</table>
</div>
<div class="card-footer">
<button type="button" class="btn btn-primary">Generate Payslip</button>
<button type="button" class="btn btn-secondary" onclick="$('#payrollTabInfo<?= $empPayTransaction['empPayTrans']->emppaytrans_id ?>').toggle()">Close</button>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.card -->
</div>
<?php endforeach; endif; ?>
</div>
</div>
<!-- List of Employee for Payroll -->
<div class="row">
<div class="col-12">
<div class="card">
@ -136,7 +308,7 @@
<?php if($showInitBtn): ?>
<p>You may change the working days for this payroll cutoff. Deduct days off or absences on <strong>working days</strong> field.</p>
<?php else: ?>
<p>Adjust entry of each employee by clicking on <strong>Adjust</strong> button</p>
<p>Adjust entry of each employee by clicking on <strong>Edit</strong> icon</p>
<?php endif; ?>
<?= $tblEmpPayTrans ?>
@ -175,6 +347,12 @@ $(document).ready(function() {
});
function showEmpPayTransDetails(emptransid)
{
$("div[id^='payrollTabInfo']" ).hide();
$("#payrollTabInfo"+emptransid).toggle();
}
</script>
<?= $this->endSection() ?>

Loading…
Cancel
Save