mirror of
https://github.com/robonen/education-project.git
synced 2026-03-20 02:44:31 +00:00
общий код
This commit is contained in:
68
app/Http/Controllers/Users/StudentController.php
Normal file
68
app/Http/Controllers/Users/StudentController.php
Normal file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Users;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\StudentRequest;
|
||||
use App\Models\SchoolClass;
|
||||
use App\Models\Student;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
|
||||
class StudentController extends Controller
|
||||
{
|
||||
/**
|
||||
* Получение списка всех учеников
|
||||
*
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
return response()->json(Student::all(), 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* Получение одного ученика
|
||||
*
|
||||
* @param Student $student
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function show(Student $student)
|
||||
{
|
||||
return response()->json($student, 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* Создание ученика
|
||||
*
|
||||
* @param StudentRequest $request
|
||||
* @return JsonResponse
|
||||
*/
|
||||
/*public function store(StudentRequest $request)
|
||||
{
|
||||
$student = Student::creat($request->all());
|
||||
return response()->json($student, 200);
|
||||
}*/
|
||||
|
||||
/**
|
||||
* Обновление ученика
|
||||
*
|
||||
* @param StudentRequest $request
|
||||
* @param Student $student
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function update(StudentRequest $request, Student $student)
|
||||
{
|
||||
$prev_class = $student->schoolClass;
|
||||
if ($prev_class) {
|
||||
$prev_class->count_students -= 1;
|
||||
$prev_class->save();
|
||||
}
|
||||
|
||||
$new_class = SchoolClass::findOrfail((int)$request->input('class_id'));
|
||||
$student->update($request->all());
|
||||
|
||||
$new_class->count_students++;
|
||||
$new_class->save();
|
||||
return response()->json(collect($student)->except('school_class'), 200);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user