mirror of
https://github.com/robonen/education-project.git
synced 2026-03-20 02:44:31 +00:00
get user
This commit is contained in:
@@ -5,12 +5,10 @@ namespace App\Http\Controllers\Auth;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Requests\Auth\RegisterRequest;
|
use App\Http\Requests\Auth\RegisterRequest;
|
||||||
|
|
||||||
use App\Models\HeadTeacher;
|
|
||||||
use App\Models\Parentt;
|
|
||||||
use App\Models\Role;
|
use App\Models\Role;
|
||||||
use App\Models\Student;
|
use App\Models\SchoolClass;
|
||||||
use App\Models\Teacher;
|
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
use Illuminate\Database\QueryException;
|
||||||
|
|
||||||
class RegisterController extends Controller
|
class RegisterController extends Controller
|
||||||
{
|
{
|
||||||
@@ -40,7 +38,17 @@ class RegisterController extends Controller
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'student':
|
case 'student':
|
||||||
$user->student()->create();
|
try {
|
||||||
|
$user->student()->create(['class_id'=>$request->input('class_id')]);
|
||||||
|
$class = SchoolClass::find($request->input('class_id'));
|
||||||
|
if ($class) {
|
||||||
|
$class->count_students++;;
|
||||||
|
$class->save();
|
||||||
|
}
|
||||||
|
} catch (QueryException $e) {
|
||||||
|
$user->delete();
|
||||||
|
return response()->json(['message'=>'Class not found'],404);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'parent':
|
case 'parent':
|
||||||
|
|||||||
38
app/Http/Controllers/Users/UserController.php
Normal file
38
app/Http/Controllers/Users/UserController.php
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Users;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\HeadTeacher;
|
||||||
|
use Illuminate\Http\JsonResponse;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
|
|
||||||
|
class UserController
|
||||||
|
{
|
||||||
|
|
||||||
|
public function getUser()
|
||||||
|
{
|
||||||
|
switch(auth()->user()->role->name)
|
||||||
|
{
|
||||||
|
case 'student':
|
||||||
|
$user = auth()->user()->student;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'teacher':
|
||||||
|
$user = auth()->user()->teacher;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'headteacher':
|
||||||
|
$user = auth()->user()->headteacher;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'parent':
|
||||||
|
$user = auth()->user()->parent;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return response()->json($user);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -14,6 +14,10 @@ class HeadTeacher extends Model
|
|||||||
'updated_at',
|
'updated_at',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $hidden = [
|
||||||
|
'user_id',
|
||||||
|
];
|
||||||
|
|
||||||
public function user()
|
public function user()
|
||||||
{
|
{
|
||||||
return $this->belongsTo(User::class);
|
return $this->belongsTo(User::class);
|
||||||
|
|||||||
@@ -15,6 +15,10 @@ class Parentt extends Model
|
|||||||
'updated_at',
|
'updated_at',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $hidden = [
|
||||||
|
'user_id',
|
||||||
|
];
|
||||||
|
|
||||||
public function user()
|
public function user()
|
||||||
{
|
{
|
||||||
return $this->belongsTo(User::class);
|
return $this->belongsTo(User::class);
|
||||||
|
|||||||
@@ -15,6 +15,10 @@ class Student extends Model
|
|||||||
'updated_at',
|
'updated_at',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $hidden = [
|
||||||
|
'user_id',
|
||||||
|
];
|
||||||
|
|
||||||
public function schoolClass()
|
public function schoolClass()
|
||||||
{
|
{
|
||||||
return $this->belongsTo(SchoolClass::class, 'class_id');
|
return $this->belongsTo(SchoolClass::class, 'class_id');
|
||||||
|
|||||||
@@ -15,6 +15,10 @@ class Teacher extends Model
|
|||||||
'updated_at',
|
'updated_at',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $hidden = [
|
||||||
|
'user_id',
|
||||||
|
];
|
||||||
|
|
||||||
public function schoolClass()
|
public function schoolClass()
|
||||||
{
|
{
|
||||||
return $this->hasOne(SchoolClass::class, 'classroom_teacher');
|
return $this->hasOne(SchoolClass::class, 'classroom_teacher');
|
||||||
|
|||||||
@@ -9,6 +9,8 @@ Route::group(['prefix' => 'auth'], function () {
|
|||||||
Route::post('logout', 'Auth\LogoutController')->middleware('auth:api');
|
Route::post('logout', 'Auth\LogoutController')->middleware('auth:api');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Route::get('users', 'Users\UserController@getUser')->middleware('auth:api');
|
||||||
|
|
||||||
Route::apiResource('chat/links', 'ChatLinkController')->except(['show'])->middleware('auth:api'); // ссылки чата
|
Route::apiResource('chat/links', 'ChatLinkController')->except(['show'])->middleware('auth:api'); // ссылки чата
|
||||||
|
|
||||||
Route::apiResource('headteachers', 'Users\HeadTeacherController');
|
Route::apiResource('headteachers', 'Users\HeadTeacherController');
|
||||||
|
|||||||
Reference in New Issue
Block a user