add price start & end doctor show

This commit is contained in:
Muhammad Fajar
2022-11-04 10:16:38 +07:00
parent fed80465a7
commit e8400bddb5
2 changed files with 15 additions and 4 deletions

View File

@@ -4,6 +4,7 @@ namespace Modules\Linksehat\Http\Controllers\Api;
use App\Helpers\Helper;
use App\Models\Organization;
use App\Models\Practice;
use App\Models\Practitioner;
use App\Models\PractitionerRole;
use Illuminate\Contracts\Support\Renderable;
@@ -100,7 +101,7 @@ class DoctorController extends Controller
$q->where('addresses.addressable_type', Organization::class);
});
},
'practitionerRoles.practices',
'practitionerRoles.practices.prices',
'practitionerRoles.availabilities',
'person',
'metas',

View File

@@ -2,6 +2,7 @@
namespace Modules\Linksehat\Transformers;
use App\Helpers\Helper;
use Illuminate\Http\Resources\Json\JsonResource;
use Modules\Linksehat\Transformers\Speciality\SpecialityResource;
@@ -40,6 +41,15 @@ class DoctorResource extends JsonResource
$isWalkinAvailable = false;
$isInstantChatAvailable = false;
// Get Price Range
foreach ($this->practitionerRoles as $practitionerRole) {
foreach ($practitionerRole->practices as $practice) {
foreach ($practice->prices as $price) {
$price_nets[] = $price->price_net;
}
}
}
foreach ($this->practitionerRoles as $practitionerRole) {
$specialities[$practitionerRole->speciality_id]['id'] = $practitionerRole->speciality_id;
$specialities[$practitionerRole->speciality_id]['code'] = $practitionerRole->speciality->code;
@@ -111,9 +121,9 @@ class DoctorResource extends JsonResource
'gender' => $this->person->gender ?? null,
'is_online' => false,
'is_insurance_covered' => rand(0, 1) == 1,
'price_range' => 'Rp 100.000 - Rp 350.000',
'price_start' => '100000', // min
'price_end' => '350000', // max
'price_range' => Helper::currencyIdrFormat(min($price_nets)) . ' - ' . Helper::currencyIdrFormat(max($price_nets)),
'price_start' => Helper::currencyIdrFormat(min($price_nets)), // min
'price_end' => Helper::currencyIdrFormat(max($price_nets)), // max
'currency' => 'IDR',
'avatar_url' => asset('images/default-doctor-avatar.png'),
'education' => $this->meta->education ?? '',