This commit is contained in:
ivan-sim
2024-06-18 16:38:06 +07:00
parent 605fc72e89
commit 4ab48219ab
6 changed files with 253 additions and 85 deletions

View File

@@ -277,4 +277,50 @@ class CorporateMemberController extends Controller
return response()->json($deposit);
}
public function getLimits($corporate_id, $member_id)
{
$deposit = DB::table('corporate_policies')
->select('total_premi')
->where('corporate_id','=', $corporate_id)
->first();
$usage = DB::table('corporate_employees')
->join('request_logs', 'request_logs.member_id', '=', 'corporate_employees.member_id')
->join('request_log_benefits', 'request_log_benefits.request_log_id', '=', 'request_logs.id')
->where('corporate_employees.corporate_id', '=', $corporate_id)
->where('request_logs.member_id', '=', $member_id)
->sum('request_log_benefits.amount_approved');
$services = DB::table('member_plans')
->leftJoin('plans', 'plans.id', '=', 'member_plans.plan_id')
->leftJoin('services', 'services.code', '=', 'plans.service_code')
->where('member_plans.member_id', '=', $member_id)
->whereNull('member_plans.deleted_at')
->select(
'plans.service_code',
'services.name as title',
'plans.limit_rules as total',
DB::raw("
(
SELECT SUM(request_log_benefits.amount_approved)
FROM request_logs
INNER JOIN request_log_benefits
ON request_log_benefits.request_log_id = request_logs.id
WHERE request_logs.member_id = $member_id
AND request_logs.service_code = plans.service_code
) as current
")
)
->get();
// Ganti dengan logika Anda untuk mendapatkan data deposit
$deposit = [
'deposit' => $deposit->total_premi,
'usage' => $usage,
'services' => $services
];
return response()->json($deposit);
}
}

View File

@@ -72,6 +72,8 @@ Route::prefix('client')->group(function () {
Route::get('corporate', [CorporateCurrentController::class, 'index']);
Route::put('corporate-update', [CorporateCurrentController::class, 'update']);
Route::get('get-deposits', [CorporateMemberController::class, 'getDeposit']);
Route::get('get-limits/{member_id}', [CorporateMemberController::class, 'getLimits']);
});
Route::get('claims/{id}', [ClaimController::class, 'show']);

View File

@@ -23,11 +23,11 @@ class DataServiceMonitoring extends JsonResource
$filesFinalLogKondisi = [];
if (count($this->files)>0){
foreach ($this->files as $key => $value) {
/*
Sementara di buat satu dulu, jangan di hapus..
/*
Sementara di buat satu dulu, jangan di hapus..
karena suka labil client nya, tiba2 hide tiba2 munculin fitur :D
*/
// if($value->type == 'final-log-result'){
array_push($filesFinalLogResult, $value);
// };
@@ -71,7 +71,7 @@ class DataServiceMonitoring extends JsonResource
$main_diagnosis = $d;
}
$diagnosis = '-';
}
}
if ($key > 0){
if ($icd) {
@@ -86,6 +86,7 @@ class DataServiceMonitoring extends JsonResource
return [
'companyName' => $this->member->currentCorporate->name ?? null,
'serviceCode' => $this->service_code ?? null,
'member_id' => $this->member->id ?? null,
'memberId' => $this->member->member_id ?? null,
'fullName' => $this->member->full_name ?? null,
'dateOfBirth' => $this->member->birth_date ?? null,
@@ -121,7 +122,7 @@ class DataServiceMonitoring extends JsonResource
$arr_document = [];
$document = DB::table('files')
->where([
'fileable_type' => 'App\Models\LaboratoriumResult',
'fileable_type' => 'App\Models\LaboratoriumResult',
'fileable_id' => $requestLogDailyMonitoring->id,
'deleted_at' => null
])
@@ -138,7 +139,7 @@ class DataServiceMonitoring extends JsonResource
}
}
return [
'time' => Carbon::parse($requestLogDailyMonitoring->submission_date)->format('H:i') ?? null,
'status' => 'Done' ?? null,
@@ -180,12 +181,12 @@ class DataServiceMonitoring extends JsonResource
})
->map(function ($groupedItems) {
return collect($groupedItems)
->map(function ($test) {
$arr_document = [];
$document = DB::table('files')
->where([
'fileable_type' => 'App\Models\LaboratoriumResult',
'fileable_type' => 'App\Models\LaboratoriumResult',
'fileable_id' => $test->id,
'deleted_at' => null
])
@@ -201,7 +202,7 @@ class DataServiceMonitoring extends JsonResource
];
}
}
return [
'code' => $test->code,
'date' => Carbon::parse($test->lab_date)->format('d M Y') ?? null,