Slicing service dan benefit
This commit is contained in:
@@ -41,38 +41,97 @@ class CorporateServiceConfigResource extends JsonResource
|
||||
];
|
||||
|
||||
$list_msc = $this->corporateServiceSpecialities->map(function ($speciality) {
|
||||
return explode(',', $speciality->exclusions->first()->rules->where('name', 'msc')->first()->values ?? '');
|
||||
})->map(function ($item) {
|
||||
$exclusions = $speciality->exclusions->first();
|
||||
|
||||
if ($exclusions) {
|
||||
$rules = $exclusions->rules->where('name', 'msc')->first();
|
||||
|
||||
if ($rules) {
|
||||
$values = $rules->values ?? '';
|
||||
$item = explode(',', $values);
|
||||
} else {
|
||||
// Handle case where 'rules' with name 'msc' is not found
|
||||
$item = [];
|
||||
}
|
||||
} else {
|
||||
// Handle case where 'exclusions' is not found
|
||||
$item = [];
|
||||
}
|
||||
|
||||
return [
|
||||
'm' => in_array('m', $item),
|
||||
's' => in_array('s', $item),
|
||||
'c' => in_array('c', $item),
|
||||
];
|
||||
});
|
||||
|
||||
|
||||
$list_gender = $this->corporateServiceSpecialities->map(function ($speciality) {
|
||||
// dd($speciality->exclusions->first()->rules);
|
||||
return explode(',', $speciality->exclusions->first()->rules->where('name', 'gender')->first()->values ?? '');
|
||||
})->map(function ($item) {
|
||||
|
||||
$exclusions = $speciality->exclusions->first();
|
||||
|
||||
if ($exclusions) {
|
||||
$rules = $exclusions->rules->where('name', 'gender')->first();
|
||||
|
||||
if ($rules) {
|
||||
$values = $rules->values ?? '';
|
||||
$item = explode(',', $values);
|
||||
} else {
|
||||
// Handle case where 'rules' with name 'gender' is not found
|
||||
$item = [];
|
||||
}
|
||||
} else {
|
||||
// Handle case where 'exclusions' is not found
|
||||
$item = [];
|
||||
}
|
||||
|
||||
return [
|
||||
'male' => in_array('male', $item),
|
||||
'female' => in_array('female', $item),
|
||||
];
|
||||
});
|
||||
|
||||
|
||||
$min_age = $this->corporateServiceSpecialities->map(function ($speciality) {
|
||||
return $speciality->exclusions->first()->rules->where('name', 'min_age')->first()->values ?? '';
|
||||
$exclusions = $speciality->exclusions->first();
|
||||
|
||||
if ($exclusions) {
|
||||
$rules = $exclusions->rules->where('name', 'min_age')->first();
|
||||
|
||||
if ($rules) {
|
||||
return $rules->values ?? '';
|
||||
}
|
||||
}
|
||||
|
||||
return '';
|
||||
});
|
||||
|
||||
|
||||
$max_age = $this->corporateServiceSpecialities->map(function ($speciality) {
|
||||
return $speciality->exclusions->first()->rules->where('name', 'max_age')->first()->values ?? '';
|
||||
$exclusions = $speciality->exclusions->first();
|
||||
|
||||
if ($exclusions) {
|
||||
$rules = $exclusions->rules->where('name', 'max_age')->first();
|
||||
|
||||
if ($rules) {
|
||||
return $rules->values ?? '';
|
||||
}
|
||||
}
|
||||
|
||||
return '';
|
||||
});
|
||||
|
||||
|
||||
$plan = $this->corporateServiceSpecialities->map(function ($speciality) {
|
||||
return $speciality->exclusions->first()->rules->where('name', 'plan')->first()->values ?? null;
|
||||
$exclusions = $speciality->exclusions->first();
|
||||
|
||||
if ($exclusions) {
|
||||
$rules = $exclusions->rules->where('name', 'plan')->first();
|
||||
|
||||
if ($rules) {
|
||||
return $rules->values ?? null;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
});
|
||||
|
||||
|
||||
$data['exclusions'] = $data['exclusions']->map(function ($item, $key) use (
|
||||
$list_msc,
|
||||
$list_gender,
|
||||
|
||||
Reference in New Issue
Block a user