nhance/app/Models/EmployeePolicyModel.php
2024-03-26 15:10:11 +05:30

57 lines
2.4 KiB
PHP

<?php
namespace App\Models;
use CodeIgniter\Model;
class EmployeePolicyModel extends Model
{
protected $table = 'employee_polices';
protected $primaryKey = 'id';
protected $allowedFields = [
"id",
"employee_id",
"client_policy_id",
"tpa_id",
"uhid",
"status",
"pre_existing_alignments",
"basic_cover_si",
"date_coverage",
"policy_end_date",
"days",
"premium",
"rata_premimum",
"gst",
"created_by",
"updated_by",
"is_active",
];
public function getEmployeePolicy($client_id,$policy_id)
{
$result = $this->select(['employee_polices.*','pm.name as policy_name','im.short_name as insurer_short_name','ib.branch_name as insurer_branch_name','ib.branch_code as insurer_branch_code','tpam.name as tpa_name','tpam.short_name as tpa_short_name','tpab.branch_code as tpa_branch_code','cm.client_name','cm.short_name as client_short_name','emp.relationship','emp.relationship_code','emp.change_event','emp.emp_code','emp.name','emp.email_corporate','emp.dob','emp.gender','emp.emp_status','emp.is_active as emp_is_active'])
->join('employees emp', 'employee_polices.employee_id = emp.id')
->join('client_policy cp', 'employee_polices.client_policy_id = cp.id') //cp - client policy
->join('policies pm', 'cp.policy_id = pm.id') //pm - policy master
->join('insurers im', 'cp.insurer_id = im.id') //im - insurar master
->join('insurer_branch ib', 'cp.insurer_branch_id = ib.id') //ib - insurar branch
->join('tpa tpam', 'cp.tpa_id = tpam.id') //tpam - tpa master
->join('tpa_branch tpab', 'cp.tpa_branch_id = tpab.id') //tpab - tpa brach
->join('clients cm', 'cp.client_id = cm.id') //cm - client master
->where('emp.client_id',$client_id)
->where('employee_polices.client_policy_id',$policy_id)
->findAll();
return ($result);
}
//for emp onboard do not change
public function checkExistingEmpPolicy($arr)
{
return $this->where('employee_id',$arr['employee_id'])
->where('client_policy_id',$arr['client_policy_id'])
->find();
}
}