list dokter, list RS

This commit is contained in:
pajri
2022-12-15 17:10:25 +07:00
parent 1baaf80b2b
commit 1857653ce0
14 changed files with 17506 additions and 116 deletions

View File

@@ -0,0 +1,85 @@
<?php
namespace Modules\Internal\Http\Controllers\Api;
use App\Helpers\Helper;
use App\Models\PractitionerRole;
use Illuminate\Contracts\Support\Renderable;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Modules\Internal\Transformers\DoctorResource;
class DoctorController extends Controller
{
/**
* Display a listing of the resource.
* @return Renderable
*/
public function index()
{
$doctors = PractitionerRole::active()->with('practitioner.person', 'organization')->paginate();
return response()->json(Helper::paginateResources(DoctorResource::collection($doctors)));
}
/**
* Show the form for creating a new resource.
* @return Renderable
*/
public function create()
{
return view('internal::create');
}
/**
* Store a newly created resource in storage.
* @param Request $request
* @return Renderable
*/
public function store(Request $request)
{
//
}
/**
* Show the specified resource.
* @param int $id
* @return Renderable
*/
public function show($id)
{
return view('internal::show');
}
/**
* Show the form for editing the specified resource.
* @param int $id
* @return Renderable
*/
public function edit($id)
{
return view('internal::edit');
}
/**
* Update the specified resource in storage.
* @param Request $request
* @param int $id
* @return Renderable
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
* @param int $id
* @return Renderable
*/
public function destroy($id)
{
//
}
}

View File

@@ -0,0 +1,83 @@
<?php
namespace Modules\Internal\Http\Controllers\Api;
use App\Helpers\Helper;
use App\Models\Organization;
use Illuminate\Contracts\Support\Renderable;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Modules\Internal\Transformers\OrganizationResource;
class OrganizationController extends Controller
{
/**
* Display a listing of the resource.
* @return Renderable
*/
public function index()
{
$organizations = Organization::active()->hospital()->with('currentAddress')->paginate();
return response()->json(Helper::paginateResources(OrganizationResource::collection($organizations)));
}
/**
* Show the form for creating a new resource.
* @return Renderable
*/
public function create()
{
return view('internal::create');
}
/**
* Store a newly created resource in storage.
* @param Request $request
* @return Renderable
*/
public function store(Request $request)
{
//
}
/**
* Show the specified resource.
* @param int $id
* @return Renderable
*/
public function show($id)
{
return view('internal::show');
}
/**
* Show the form for editing the specified resource.
* @param int $id
* @return Renderable
*/
public function edit($id)
{
return view('internal::edit');
}
/**
* Update the specified resource in storage.
* @param Request $request
* @param int $id
* @return Renderable
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
* @param int $id
* @return Renderable
*/
public function destroy($id)
{
//
}
}

View File

@@ -14,9 +14,11 @@ use Modules\Internal\Http\Controllers\Api\CorporateServiceController;
use Modules\Internal\Http\Controllers\Api\DiagnosisController;
use Modules\Internal\Http\Controllers\Api\DiagnosisExclusionController;
use Modules\Internal\Http\Controllers\Api\DivisionController;
use Modules\Internal\Http\Controllers\Api\DoctorController;
use Modules\Internal\Http\Controllers\Api\DrugController;
use Modules\Internal\Http\Controllers\Api\FormulariumController;
use Modules\Internal\Http\Controllers\Api\MemberController;
use Modules\Internal\Http\Controllers\Api\OrganizationController;
use Modules\Internal\Http\Controllers\Api\PlanController;
/*
@@ -36,10 +38,10 @@ Route::prefix('internal')->group(function () {
Route::post('login', [AuthController::class, 'login'])->name('login');
Route::post('forget-password', [AuthController::class, 'forgetPassword'])->name('forget-password');
Route::post('verify-email', [AuthController::class, 'verifyEmail'])->name('verify-email');
Route::middleware('auth:sanctum')->group(function () {
Route::post('logout', [AuthController::class, 'logout'])->name('logout');
Route::get('/user', function (Request $request) {
return $request->user();
@@ -53,10 +55,10 @@ Route::prefix('internal')->group(function () {
Route::post('corporates/{corporate_id}/corporate-plans', [CorporatePlanController::class, 'store']);
Route::get('corporates/{corporate_id}/corporate-plans/{id}/edit', [CorporatePlanController::class, 'edit']);
Route::put('corporates/{corporate_id}/corporate-plans/{id}', [CorporatePlanController::class, 'update']);
Route::get('corporates/{corporate_id}/plans', [PlanController::class, 'index']);
Route::post('corporates/{corporate_id}/plans/import', [PlanController::class, 'planImport']);
Route::get('corporates/{corporate_id}/corporate-benefits', [CorporateBenefitController::class, 'index']);
Route::post('corporates/{corporate_id}/corporate-benefits', [CorporateBenefitController::class, 'store']);
Route::get('corporates/{corporate_id}/corporate-benefits/{id}/edit', [CorporateBenefitController::class, 'edit']);
@@ -97,13 +99,15 @@ Route::prefix('internal')->group(function () {
Route::get('members', [MemberController::class, 'index']);
Route::get('members/{member_id}/benefits', [MemberController::class, 'benefits']);
Route::get('claims', [ClaimController::class, 'index']);
Route::post('claims', [ClaimController::class, 'store']);
Route::get('claims/{id}', [ClaimController::class, 'show']);
Route::post('check-limit', [ClaimController::class, 'checkLimit']);
});
Route::resource('organizations', OrganizationController::class);
Route::resource('doctors', DoctorController::class);
// Route::get('something', [DiagnosisExclusionController::class, 'index']);
});

View File

@@ -0,0 +1,38 @@
<?php
namespace Modules\Internal\Transformers;
use Illuminate\Http\Resources\Json\JsonResource;
class DoctorResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request
* @return array
*/
public function toArray($request)
{
$doctor = [
'id' => $this->id,
'his_dokter_id' => $this->meta->DokterID,
'name' => $this->practitioner->person->name,
'phone' => $this->practitioner->person->phone,
'email' => $this->practitioner->person->email,
'address' => $this->practitioner->person->currentAddress->text,
'organization' => $this->organization->name,
'organization_id' => $this->organization->id,
'specialty' => $this->speciality->name,
'specialtyI_id' => $this->speciality->id,
'education' => $this->practitioner->meta->education,
'experience' => $this->practitioner->meta->work_experience,
'award' => $this->practitioner->meta->award,
'keilmuan' => $this->practitioner->meta->Keilmuan,
'tipe_dokter' => $this->practitioner->meta->tipeDokter,
];
return $doctor;
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace Modules\Internal\Transformers;
use Illuminate\Http\Resources\Json\JsonResource;
class OrganizationResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request
* @return array
*/
public function toArray($request)
{
$organization = [
'name' => $this->name,
'type' => $this->type,
'code' => $this->code,
'description' => $this->description,
'kodeRs' => $this->meta->kodeRs ?? null,
'phone' => $this->meta->phone ?? null,
'lat' => $this->currentAddress->lat ?? null,
'lng' => $this->currentAddress->lng ?? null,
'address' => $this->currentAddress ?? null,
];
return $organization;
}
}