Re Route
This commit is contained in:
@@ -10,14 +10,17 @@ class MemberBenefit extends Model
|
||||
use HasFactory;
|
||||
|
||||
protected $fillable = [
|
||||
'corporate_id',
|
||||
'service_code',
|
||||
'plan_code',
|
||||
'benefit_code',
|
||||
'code',
|
||||
'description',
|
||||
'budget',
|
||||
'budget_conditions',
|
||||
'budget_code',
|
||||
'primary_benefit_code',
|
||||
'benefit_mode',
|
||||
'room_class_coverage',
|
||||
'max_bed_coverage',
|
||||
'tolerance_parameter',
|
||||
@@ -25,6 +28,7 @@ class MemberBenefit extends Model
|
||||
'limit_amount',
|
||||
'area_limit',
|
||||
'shared_benefit',
|
||||
'shared_benefit_type',
|
||||
'msc',
|
||||
'genders',
|
||||
'min_age',
|
||||
@@ -33,6 +37,7 @@ class MemberBenefit extends Model
|
||||
'daily_frequency',
|
||||
'weekly_frequency',
|
||||
'monthly_frequency',
|
||||
'yearly_frequency',
|
||||
'custom_frequency_days',
|
||||
'custom_duration_value',
|
||||
'allowed_transaction_types',
|
||||
@@ -52,6 +57,7 @@ class MemberBenefit extends Model
|
||||
'co_share_c_percentage',
|
||||
'cashless_deductible',
|
||||
'reimbursement_deductible',
|
||||
'digital_deductible',
|
||||
'co_share_m_deductible',
|
||||
'co_share_s_deductible',
|
||||
'co_share_c_deductible',
|
||||
@@ -63,4 +69,96 @@ class MemberBenefit extends Model
|
||||
'show_benefit_item',
|
||||
'show_benefit_value',
|
||||
];
|
||||
|
||||
public static $doc_headers_to_field_map = [
|
||||
"Service" => 'service_code',
|
||||
"Plan" => 'plan_code',
|
||||
"Benefit Code" => 'benefit_code',
|
||||
"Customer Benefit Code" => 'code',
|
||||
"Detail Benefit" => 'description',
|
||||
"ASO/Budget" => 'budget',
|
||||
"Budget Condition" => 'budget_conditions',
|
||||
"Budget Code" => 'budget_code',
|
||||
"Primary benefit" => 'primary_benefit_code',
|
||||
"Benefit Mode" => 'benefit_mode',
|
||||
"Room Class" => 'room_class_coverage',
|
||||
"Max Bed" => 'max_bed_coverage',
|
||||
"Tolerance Paramater" => 'tolerance_parameter',
|
||||
"Max. Room Class" => 'max_room_class',
|
||||
"Limit Value" => 'limit_amount',
|
||||
"Area" => 'area_limit',
|
||||
"Shared Benefit With" => 'shared_benefit',
|
||||
"Shared Benefit Type" => 'shared_benefit_type',
|
||||
"MSC" => 'msc',
|
||||
"Gender" => 'genders',
|
||||
"Min Age" => 'min_age',
|
||||
"Max Age" => 'max_age',
|
||||
"Freq. Period" => 'max_frequency_period',
|
||||
"Daily Frequency" => 'daily_frequency',
|
||||
"Weekly Frequency" => 'weekly_frequency',
|
||||
"Monthly Frequency" => 'monthly_frequency',
|
||||
"Yearly Frequency" => 'yearly_frequency',
|
||||
"Custom Duration" => 'custom_frequency_days',
|
||||
"Custom Duration Value" => 'custom_duration_value',
|
||||
"Cashless, Reimbursement" => 'allowed_transaction_types',
|
||||
"High Plan Factor" => 'high_plan_factor',
|
||||
"Pre Post Treatment" => 'pre_post_treatment',
|
||||
"Pre Treatment" => 'pre_treatment_days',
|
||||
"Post Treatment" => 'post_treatment_days',
|
||||
"Layer Type 1" => 'layer_type_1',
|
||||
"Layer Value 1" => 'layer_value_1',
|
||||
"Layer Type 2" => 'layer_type_2',
|
||||
"Layer Value 2" => 'layer_value_2',
|
||||
"Cashless (%)" => 'cashless_percentage',
|
||||
"Reimburse (%)" => 'reimbursement_percentage',
|
||||
"Digital (%)" => 'digital_percentage',
|
||||
"CoShareM (%)" => 'co_share_m_percentage',
|
||||
"CoShareS (%)" => 'co_share_s_percentage',
|
||||
"CoShareC (%)" => 'co_share_c_percentage',
|
||||
"Cashless Deductible" => 'cashless_deductible',
|
||||
"Reimbursement Deductible" => 'reimbursement_deductible',
|
||||
"Digital Deductible" => 'digital_deductible',
|
||||
"DeductibleM" => 'co_share_m_deductible',
|
||||
"DeductibleS" => 'co_share_s_deductible',
|
||||
"DeductibleC" => 'co_share_c_deductible',
|
||||
"Prorate Type" => 'prorate_type',
|
||||
"Prorate Lookup" => 'prorate_lookup',
|
||||
"Max Days for Disability" => 'max_days_for_disability',
|
||||
"Max Periode of Disability" => 'max_period_for_disability',
|
||||
"Currency" => 'currency',
|
||||
"Show Benefit Item" => 'show_benefit_item',
|
||||
"Show Benefit Value" => 'show_benefit_value',
|
||||
];
|
||||
|
||||
public function setPrePostTreatmentAttribute($value)
|
||||
{
|
||||
return empty($value) ? null : ($value == 'Y');
|
||||
}
|
||||
|
||||
public function getPrePostTreatmentAttribute($value)
|
||||
{
|
||||
return empty($value) ? null : ($value ? 'Y' : 'N');
|
||||
}
|
||||
|
||||
public function scopeFilter($query, array $filters)
|
||||
{
|
||||
$query->when($filters['search'] ?? false, function ($query, $search) {
|
||||
return $query
|
||||
->where('service_code', 'like', "%" . $search . "%")
|
||||
->orWhere('code', 'like', "%" . $search . "%")
|
||||
->orWhereHas('plan', function ($query) use ($search) {
|
||||
$query->where('code', 'like', "%" . $search . "%");
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
public function benefit()
|
||||
{
|
||||
return $this->belongsTo(Benefit::class, 'benefit_code', 'code');
|
||||
}
|
||||
|
||||
public function plan()
|
||||
{
|
||||
return $this->belongsTo(Plan::class, 'plan_code', 'code');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user