Files
cssd-back/app/Http/Controllers/UserController.php
T
2019-04-21 01:13:16 +04:30

64 lines
2.0 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests\StoreUserRequest;
use App\User;
use App\MedicalCenter;
class UserController extends Controller
{
public function index(Request $request)
{
$Users = User::where('medicalcenter', $request->medical_center_id)->paginate(10);
return response()->json(['Users' => $Users, 'LastPage' => $Users->lastPage()]);
}
public function store(StoreUserRequest $request)
{
$UserData = [
'name' => $request->name,
'cell_number' => $request->cell_number,
'medical_center_id' => $request->medical_center_id,
'status' => 'PreRegister',
'verified' => 1,
'password' => bcrypt($request->password),
];
$User = User::create($UserData);
return response()->json(trans('messages.success'));
}
public function edit(User $User)
{
return response()->json(['User' => $User]);
}
public function update(StoreUserRequest $request, User $User)
{
$UserData = [
'name' => $request->name,
'cell_number' => $request->cell_number,
'medical_center_id' => $request->medical_center_id,
'status' => 'PreRegister',
'verified' => 1,
'password' => bcrypt($request->password),
];
$User->update($UserData);
return response()->json(trans('messages.success'));
}
public function destroy(User $User)
{
if (auth('api')->user()->can('delete', $User)) {
return response()->json(trans('messages.failed'));
}
$User->delete(); //?????????????????
}
public function getByMedicalCenter(MedicalCenter $MedicalCenter)
{
$MedicalCenter = $MedicalCenter->load(['users' => function ($query) {
return $query->select(['id', 'medical_center_id', 'name', 'cell_number']);
}, 'users.roles']);
return response()->json($MedicalCenter, 200);
}
}