diff --git a/app/Http/Controllers/TimetableController.php b/app/Http/Controllers/TimetableController.php index 478b080..439af2c 100644 --- a/app/Http/Controllers/TimetableController.php +++ b/app/Http/Controllers/TimetableController.php @@ -69,22 +69,22 @@ class TimetableController extends Controller public function store(TimetableRequest $request) { try { - Timetable::create($request->all()); + $timetable = Timetable::create($request->all()); }catch (QueryException $e) { return response()->json(['message' => 'Not found class, teacher or subject'], 400); } - return response()->json(['message' => 'Timetable was created'], 201); + return response()->json($timetable, 201); } //обновление урока - public function update(TimetableRequest $timetable, Request $request) + public function update(Timetable $timetable, TimetableRequest $request) { try { $timetable->update($request->all()); }catch (QueryException $e) { return response()->json(['message' => 'Not found class, teacher or subject'], 400); } - return response()->json(['message' => 'Timetable was updated'], 200); + return response()->json($timetable, 200); } //удаление урока diff --git a/app/Http/Controllers/Users/HeadTeacherController.php b/app/Http/Controllers/Users/HeadTeacherController.php index 2304b86..c17b2e0 100644 --- a/app/Http/Controllers/Users/HeadTeacherController.php +++ b/app/Http/Controllers/Users/HeadTeacherController.php @@ -45,4 +45,11 @@ class HeadTeacherController extends Controller return response()->json($headteacher, 200); } + public function destroy(HeadTeacher $headteacher) + { + $user = $headteacher->user; + $user->delete(); + return response()->json(null, 204); + } + } diff --git a/app/Http/Controllers/Users/ParenttController.php b/app/Http/Controllers/Users/ParenttController.php index 75c25af..3224393 100644 --- a/app/Http/Controllers/Users/ParenttController.php +++ b/app/Http/Controllers/Users/ParenttController.php @@ -44,4 +44,12 @@ class ParenttController extends Controller $parent->update($request->all()); return response()->json($parent, 200); } + + public function destroy(Parentt $parent) + { + $user = $parent->user; + $user->delete(); + return response()->json(null, 204); + } + } diff --git a/app/Http/Controllers/Users/StudentController.php b/app/Http/Controllers/Users/StudentController.php index e53a767..49c376b 100644 --- a/app/Http/Controllers/Users/StudentController.php +++ b/app/Http/Controllers/Users/StudentController.php @@ -31,18 +31,6 @@ class StudentController extends Controller 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); - }*/ - /** * Обновление ученика * @@ -65,4 +53,12 @@ class StudentController extends Controller $new_class->save(); return response()->json(collect($student)->except('school_class'), 200); } + + public function destroy(Student $student) + { + $user = $student->user; + $user->delete(); + return response()->json(null, 204); + } + } diff --git a/app/Http/Controllers/Users/TeacherController.php b/app/Http/Controllers/Users/TeacherController.php index 1b0f8d0..6fb9525 100644 --- a/app/Http/Controllers/Users/TeacherController.php +++ b/app/Http/Controllers/Users/TeacherController.php @@ -6,6 +6,7 @@ use App\Http\Controllers\Controller; use App\Models\Teacher; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Response; class TeacherController extends Controller { @@ -44,6 +45,24 @@ class TeacherController extends Controller $teacher->update($request->all()); return response()->json($teacher, 200); } + //это нужно перенести в update + public function store(Request $request) + { + $path = '/var/www/EducationProject/storage/app/public/users/wd3TZnUTGxZsmIhTpXI4r9NTJIewP8E5MUfdC7u8.png'; + return Response::download($path); + /*$teacher = Teacher::find(1); + $path = $request->file('photo')->store('users', 'public'); + $teacher->update($request->all()); + $teacher->photo = $path; + return response()->json($teacher, 200);*/ + } + + public function destroy(Teacher $teacher) + { + $user = $teacher->user; + $user->delete(); + return response()->json(null, 204); + } public function getClasses(Teacher $teacher) { diff --git a/app/Http/Requests/TimetableRequest.php b/app/Http/Requests/TimetableRequest.php index 175a9c3..782358b 100644 --- a/app/Http/Requests/TimetableRequest.php +++ b/app/Http/Requests/TimetableRequest.php @@ -19,6 +19,7 @@ class TimetableRequest extends ApiFormRequest 'date' => 'required|date_format:Y/m/d|', 'time_start' => 'required|date_format:H:i', 'time_end' => 'required|date_format:H:i', + 'classroom' => 'required', ]; } } diff --git a/app/Models/Parentt.php b/app/Models/Parentt.php index d195e82..013aa8a 100644 --- a/app/Models/Parentt.php +++ b/app/Models/Parentt.php @@ -14,4 +14,9 @@ class Parentt extends Model 'user_id', ]; + public function user() + { + return $this->belongsTo(User::class); + } + } diff --git a/app/Models/Student.php b/app/Models/Student.php index c17be35..3eb0573 100644 --- a/app/Models/Student.php +++ b/app/Models/Student.php @@ -20,4 +20,9 @@ class Student extends Model return $this->belongsTo(SchoolClass::class, 'class_id'); } + public function user() + { + return $this->belongsTo(User::class); + } + } diff --git a/app/Models/Teacher.php b/app/Models/Teacher.php index e04358f..d6bfe4d 100644 --- a/app/Models/Teacher.php +++ b/app/Models/Teacher.php @@ -24,4 +24,9 @@ class Teacher extends Model return $this->hasMany(Timetable::class); } + public function user() + { + return $this->belongsTo(User::class); + } + } diff --git a/database/migrations/2020_12_03_171929_create_timetables_table.php b/database/migrations/2020_12_03_171929_create_timetables_table.php index 451f9eb..c17d1a7 100644 --- a/database/migrations/2020_12_03_171929_create_timetables_table.php +++ b/database/migrations/2020_12_03_171929_create_timetables_table.php @@ -16,7 +16,7 @@ class CreateTimetablesTable extends Migration Schema::create('timetables', function (Blueprint $table) { $table->id(); $table->unsignedInteger('class_id'); - $table->unsignedInteger('teacher_id'); + $table->unsignedInteger('teacher_id')->nullable(); $table->unsignedInteger('subject_id'); $table->date('date'); $table->time('time_start');