From 712c82ea929c9706f28f9a90bb898cb47e88a8fb Mon Sep 17 00:00:00 2001 From: paulcortez Date: Sat, 2 Nov 2024 01:34:03 +0800 Subject: [PATCH] added att work days on init added att work days on init --- app/Controllers/PayrollController.php | 16 ++++++++++------ app/Models/EmployeePayTransactionModel.php | 5 +++-- app/Models/EmployeePayrollInfoModel.php | 4 +++- app/Views/templates/adminlte/generalcontent.php | 4 ++-- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/app/Controllers/PayrollController.php b/app/Controllers/PayrollController.php index 1a64a21..f0684ad 100644 --- a/app/Controllers/PayrollController.php +++ b/app/Controllers/PayrollController.php @@ -517,22 +517,22 @@ class PayrollController extends BaseController $data['incomeList'] = $incomeDeductionModel->where("is_income", 1)->findAll(); $data['deductionList'] = $incomeDeductionModel->where("is_income", 0)->findAll(); - $empPayTrans = (new EmployeePayTransactionModel())->getEmpPayTransByPayGroupId($data['paygroupid']); + $empPayTrans = (new EmployeePayTransactionModel())->getEmpPayTransByPayTransIdGroupId($paytransid, $data['paygroupid']); $empPayTransHTMLTable = new \CodeIgniter\View\Table(); $empPayTransHTMLTable->setTemplate(MiscLib::adminLTETableTemplate()); if($empPayTrans == null) { - $empPayTrans = (new EmployeePayrollInfoModel())->getEmpPayInfoXEmpPayTypeByPayGrpId($data['paygroupid'], $payTrans->paytype_id); + $empPayTrans = (new EmployeePayrollInfoModel())->getEmpPayInfoXEmpPayTypeByPayGrpId($paytransid, $data['paygroupid'], $payTrans->paytype_id); $data['showInitBtn'] = true; - $empPayTransHTMLTable->setHeading('ID', 'Company ID', 'Name', 'Branch', 'Daily Basic'); + $empPayTransHTMLTable->setHeading('ID', 'Company ID', 'Name', 'Branch', 'Daily Basic', 'Work Days'); foreach($empPayTrans as $trans) { - $empPayTransHTMLTable->addRow($trans->employee_id, $trans->company_issued_id, $trans->last_name . ', ' . $trans->first_name, $trans->branch_code, $trans->basic_monthly_pay); + $empPayTransHTMLTable->addRow($trans->employee_id, $trans->company_issued_id, $trans->last_name . ', ' . $trans->first_name, $trans->branch_code, $trans->basic_monthly_pay, $trans->att_work_days); } $data['tblEmpPayTrans'] = $empPayTransHTMLTable->generate(); @@ -563,7 +563,7 @@ class PayrollController extends BaseController public function empPayTransInitializePayroll($paytransid, $paygroupid, $transtypid) { - $empPayInfos = (new EmployeePayrollInfoModel())->getEmpPayInfoXEmpPayTypeByPayGrpId($paygroupid, $transtypid); + $empPayInfos = (new EmployeePayrollInfoModel())->getEmpPayInfoXEmpPayTypeByPayGrpId($paytransid, $paygroupid, $transtypid); $payTrans = (new PayrollTransactionModel())->where('paytrans_id', $paytransid)->first(); $empPayTransactionModel = new EmployeePayTransactionModel(); @@ -598,7 +598,7 @@ class PayrollController extends BaseController 'has_hdmf' => $empPayInfo->has_hdmf, 'has_sss' => $empPayInfo->has_sss, 'has_gsis' => $empPayInfo->has_gsis, - 'actual_work_days' => $payTrans->no_of_days, + 'actual_work_days' => $empPayInfo->att_work_days, 'basic_pay' => 0, 'gross_income' => 0, 'taxable_income' => 0, @@ -621,6 +621,10 @@ class PayrollController extends BaseController $empPayTransInDedModel = new EmpPayTransIncomeDeductionModel(); $payCompute = new PayrollComputation(); + $rawData = ['amount'=>$empPayInDed->amount, + 'is_fixed_amt'=>$empPayInDed->is_fixed_amt, + 'is_percent_amt'=>$empPayInDed->is_percent_amt, + 'worked_days_based'=>$empPayInDed->worked_days_based]; $amount = $payCompute->computeIncomeDeductionByComputationType($rawData, $empPayTransaction); $empPayTransInDed->fill( diff --git a/app/Models/EmployeePayTransactionModel.php b/app/Models/EmployeePayTransactionModel.php index f324e64..cbcd76b 100644 --- a/app/Models/EmployeePayTransactionModel.php +++ b/app/Models/EmployeePayTransactionModel.php @@ -87,7 +87,7 @@ class EmployeePayTransactionModel extends Model return $data; } - public function getEmpPayTransByPayGroupId($paygroupid) + public function getEmpPayTransByPayTransIdGroupId($paytransid, $paygroupid) { $builder = $this->db->table('emp_pay_trans'); $builder->select('*'); @@ -98,7 +98,8 @@ class EmployeePayTransactionModel extends Model $builder->join('pay_group', 'pay_group.pay_group_id = emp_pay_trans.pay_group_id'); $builder->join('emp_status', 'emp_status.emp_status_id = emp_pay_trans.emp_status_id'); $builder->join('employee', 'employee.employee_id = emp_pay_trans.employee_id'); - $builder->where(['emp_pay_trans.pay_group_id' => $paygroupid, + $builder->where(['emp_pay_trans.paytrans_id' => $paytransid, + 'emp_pay_trans.pay_group_id' => $paygroupid, 'emp_pay_trans.deleted_at' => null]); return $builder->get()->getResult(); } diff --git a/app/Models/EmployeePayrollInfoModel.php b/app/Models/EmployeePayrollInfoModel.php index 1c0ac7d..798ab19 100644 --- a/app/Models/EmployeePayrollInfoModel.php +++ b/app/Models/EmployeePayrollInfoModel.php @@ -88,14 +88,16 @@ class EmployeePayrollInfoModel extends Model return $builder->get()->getRow(); } - public function getEmpPayInfoXEmpPayTypeByPayGrpId($payGroupId, $payTypeId) + public function getEmpPayInfoXEmpPayTypeByPayGrpId($paytransid, $payGroupId, $payTypeId) { $builder = $this->db->table('emp_pay_info'); $builder->select('*'); $builder->join('employee', 'employee.employee_id = emp_pay_info.employee_id'); $builder->join('pay_type', 'pay_type.paytype_id = emp_pay_info.paytype_id'); + $builder->join('att_log_summary', 'att_log_summary.employee_id = emp_pay_info.employee_id'); $builder->where(['employee.pay_group_id' => $payGroupId, 'emp_pay_info.paytype_id' => $payTypeId, + 'att_log_summary.paytrans_id' => $paytransid, 'emp_pay_info.deleted_at' => null]); return $builder->get()->getResult(); } diff --git a/app/Views/templates/adminlte/generalcontent.php b/app/Views/templates/adminlte/generalcontent.php index 50e5169..150dd68 100644 --- a/app/Views/templates/adminlte/generalcontent.php +++ b/app/Views/templates/adminlte/generalcontent.php @@ -315,7 +315,7 @@