mirror of
https://github.com/robonen/education-project.git
synced 2026-03-20 02:44:31 +00:00
общий код
This commit is contained in:
@@ -5,7 +5,7 @@ namespace App\Http\Controllers;
|
||||
use App\Http\Requests\SchoolClassRequest;
|
||||
use App\Models\SchoolClass;
|
||||
use App\Models\Teacher;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Database\QueryException;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class SchoolClassController extends Controller
|
||||
@@ -13,63 +13,50 @@ class SchoolClassController extends Controller
|
||||
/**
|
||||
* Получение списка всех классов
|
||||
*
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
return response()->json(SchoolClass::all(), 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* Получение класса
|
||||
*
|
||||
* @param SchoolClass $class
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function show(SchoolClass $class)
|
||||
public function show(SchoolClass $schoolClass)
|
||||
{
|
||||
return response()->json($class, 200);
|
||||
return response()->json($schoolClass, 200);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param SchoolClassRequest $request
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function store(SchoolClassRequest $request)
|
||||
{
|
||||
$teacher = Teacher::find($request->get('teacher_id'));
|
||||
if ($teacher) {
|
||||
$schoolClass = $teacher->schoolClass()->create($request->all());
|
||||
} else {
|
||||
$schoolClass = SchoolClass::create($request->all());
|
||||
try {
|
||||
$class = SchoolClass::create($request->all());
|
||||
} catch (QueryException $e) {
|
||||
return response()->json(['message' => 'Уже существует'], 400);
|
||||
}
|
||||
return response()->json(SchoolClass::find($schoolClass->id), 201);
|
||||
return response()->json(SchoolClass::find($class->id), 201);
|
||||
}
|
||||
|
||||
/**
|
||||
* Обновление класса
|
||||
*
|
||||
* @param SchoolClassRequest $request
|
||||
* @param SchoolClass $class
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function update(SchoolClassRequest $request, SchoolClass $class)
|
||||
public function update(SchoolClass $class, SchoolClassRequest $request)
|
||||
{
|
||||
$class->update($request->all());
|
||||
try {
|
||||
$class->update($request->all());
|
||||
} catch (QueryException $e) {
|
||||
return response()->json(['message' => 'Уже существует'], 400);
|
||||
}
|
||||
return response()->json($class, 200);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Удаление класса
|
||||
*
|
||||
* @param SchoolClass $class
|
||||
* @return JsonResponse
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function delete(SchoolClass $class)
|
||||
public function destroy(SchoolClass $class)
|
||||
{
|
||||
$class->delete();
|
||||
return response()->json('ok', 200);
|
||||
return response()->json('', 204);
|
||||
}
|
||||
|
||||
//добавление, изменение классного руководителя
|
||||
public function addClassroomTeacher(SchoolClass $class, Request $request)
|
||||
{
|
||||
$teacher = Teacher::findOrfail((int)$request->input('teacher_id'));
|
||||
$class->classroom_teacher = $teacher->id;
|
||||
$class->save();
|
||||
return response()->json(SchoolClass::find($class->id), 200);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user