validate([ 'member_id' => 'required', 'user_id' => 'required', 'type' => 'required|in:consultation-gp,consultation-specialist,medicine', 'total_claim' => 'required', 'detail' => 'required', ]); if ($request->type == 'consultation-gp') { $benefitCode = 'OPCONS1'; } if ($request->type == 'consultation-specialist') { $benefitCode = 'OPCONS2'; } if ($request->type == 'medicine') { $benefitCode = 'OPMEDI1'; } $member = Member::query() ->where('member_id', $request->member_id) ->with([ 'currentPlan', ]) ->firstOrFail(); $benefit = $member->currentPlan->benefits()->where('code', $benefitCode)->first(); // $diagnosis = Icd::first(); $claim = ClaimService::storeClaim($member, null, $request->total_claim, $benefit, 'requested'); $claim->status = 'approved'; $claim->save(); return Helper::responseJson($claim); } public function updateClaimDiagnosis(Request $request) { $request->validate([ 'claim_code' => 'required', 'icd_codes' => 'required' ]); // dd($request->toArray()); return $request->toArray(); } }