87 lines
2.5 KiB
PHP
87 lines
2.5 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\MedicalHistory;
|
|
use App\Models\MedicalHistoryCorrection;
|
|
use App\Models\MedicalHistoryNurse;
|
|
use App\Models\UnifiedMedicalHistory;
|
|
use Illuminate\Http\Request;
|
|
|
|
class NurseController extends Controller
|
|
{
|
|
public function getPatient($id, Request $request)
|
|
{
|
|
return UnifiedMedicalHistory::where('id', $id)->first();
|
|
}
|
|
|
|
public function searchPatients(Request $request)
|
|
{
|
|
$search = $request->search;
|
|
|
|
return MedicalHistory::whereLike('full_name', $search . '%')
|
|
->orderBy('recipient_date', 'desc')
|
|
->get()->map(function ($item) {
|
|
return [
|
|
'label' => "$item->medical_card_number - $item->full_name",
|
|
'value' => $item->id
|
|
];
|
|
});
|
|
}
|
|
|
|
public function storePatient(Request $request)
|
|
{
|
|
$data = $request->validate([
|
|
'source_type' => 'nullable',
|
|
'medical_card_number' => 'nullable',
|
|
'full_name' => 'required',
|
|
'birth_date' => 'required',
|
|
'recipient_date' => 'required',
|
|
'extract_date' => 'nullable',
|
|
'death_date' => 'nullable',
|
|
'male' => 'nullable',
|
|
'urgency_id' => 'required',
|
|
'hospital_result_id' => 'nullable',
|
|
'visit_result_id' => 'required',
|
|
'mis_user_id' => 'nullable',
|
|
'comment' => 'nullable',
|
|
]);
|
|
|
|
$data['user_id'] = auth()->user()->id;
|
|
|
|
$result = MedicalHistoryNurse::create($data);
|
|
|
|
return response()->json([
|
|
'data' => $result,
|
|
], 201);
|
|
}
|
|
|
|
public function storeCorrection($id, Request $request)
|
|
{
|
|
$data = $request->validate([
|
|
'medical_card_number' => 'nullable',
|
|
'full_name' => 'nullable',
|
|
'birth_date' => 'nullable',
|
|
'recipient_date' => 'nullable',
|
|
'extract_date' => 'nullable',
|
|
'death_date' => 'nullable',
|
|
'male' => 'nullable',
|
|
'urgency_id' => 'nullable',
|
|
'hospital_result_id' => 'nullable',
|
|
'visit_result_id' => 'nullable',
|
|
'mis_user_id' => 'nullable',
|
|
'comment' => 'nullable',
|
|
]);
|
|
|
|
$data['medical_history_id'] = $id;
|
|
$data['user_id'] = auth()->user()->id;
|
|
|
|
$result = MedicalHistoryCorrection::create($data);
|
|
|
|
return response()->json([
|
|
'data' => $result,
|
|
], 201);
|
|
}
|
|
}
|