This commit is contained in:
Server D3 Linksehat
2024-10-14 10:35:21 +07:00
parent 611689235b
commit 013c57d00a
86 changed files with 9199 additions and 729 deletions

View File

@@ -9,6 +9,7 @@ use App\Models\CorporateService;
use App\Models\RequestLogBenefit;
use App\Models\RequestLogMedicine;
use App\Models\Organization;
use App\Models\Benefit;
use App\Models\Exclusion;
use App\Models\ClaimRequest;
use App\Models\Icd;
@@ -33,7 +34,7 @@ class RequestLogShowResource extends JsonResource
$planMember = MemberPlan::where('member_id', $member_id)->get('plan_id');
$planId = Plan::whereIn('id', $planMember)->where('service_code', $requestLog['service_code'])->first();
$benefit = CorporateBenefit::with('benefit')->where('plan_id', $planId->id)->get()->toArray();
$benefit = CorporateBenefit::with(['benefit', 'plan'])->where('plan_id', $planId->id)->get()->toArray();
$benefitDetailLog = RequestLogBenefit::with('benefit')->where('request_log_id', $requestLog['id'])->get()->toArray();
$medicineDetailLog = RequestLogMedicine::where('request_log_id', $requestLog['id'])->get()->toArray();
$provider = Organization::where('id', $requestLog['organization_id'])->first();
@@ -61,14 +62,19 @@ class RequestLogShowResource extends JsonResource
$providerName = '-';
}
// Benefit Data
$benefitData = [];
if (count($benefit)){
foreach($benefit as $data){
$data['benefit']['plan_id'] = $data['plan_id'];
$data['benefit']['limit_amount'] = $data['limit_amount'];
$data['benefit']['family_plan'] = $planId->family_plan;
$data['benefit']['max_frequency_period'] = $data['max_frequency_period'];
$data['benefit']['limit_amount_plan'] = $data['plan']['limit_rules'];
$data['benefit']['family_plan_plans'] = $data['plan']['family_plan'];
array_push($benefitData, $data['benefit']);
}
}
// Medicine
$medicineData = [];
if (count($medicineDetailLog)){
@@ -106,10 +112,12 @@ class RequestLogShowResource extends JsonResource
$diagnosis = explode(',', $requestLog['diagnosis']);
$icd = Icd::query()
->whereIn('code', $diagnosis)
->select('code', 'name')
->select('code as value', 'name as label')
->get();
}
$memberUsage = Helper::getUsageMember($corporateId, $requestLog['member']['id'], $benefitData);
// dd($memberLimitUsage);
$data = [
'id' => $requestLog['id'],
'code' => $requestLog['code'],
@@ -125,6 +133,7 @@ class RequestLogShowResource extends JsonResource
'gender' => $requestLog['member']['gender'],
'marital_status' => $requestLog['member']['status_marital'],
'member_type' => Helper::memberType($requestLog['member']['record_type']),
'member_usage_benefit' => json_decode($memberUsage),
'principal_id' => $requestLog['member']['principal_id'] ? $requestLog['member']['principal_id'] : '-',
'principal_name' => $requestLog['member']['principal_id'] ? Helper::principalName($requestLog['member']['principal_id']) : '-',
'relation_with_principal' => Helper::relationWithPrincipal($requestLog['member']['relation_with_principal']),
@@ -151,6 +160,7 @@ class RequestLogShowResource extends JsonResource
'reason' => $requestLog['reason'],
'diagnosis' => $icd,
'is_reversal' => $isReversal, // untuk penjagaan, jika true tidak bisa di edit/hapus lagi
];