| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- <?php
- namespace App\Http\Controllers;
- use App\Models\Submission;
- class DataController extends Controller
- {
- public function showData()
- {
- // Получаем все заявки из БД с комментариями и тегами
- $submissions = Submission::with(['comments', 'tags'])
- ->withCount('comments')
- ->active() // Query Scope
- ->latest()
- ->get();
- return view('data_table', [
- 'submissions' => $submissions,
- 'count' => $submissions->count()
- ]);
- }
- public function show($id)
- {
- // Просмотр одной заявки со всеми связями
- $submission = Submission::with(['comments.attachments', 'tags', 'attachments'])
- ->findOrFail($id);
- return view('submission_detail', [
- 'submission' => $submission
- ]);
- }
- public function edit($id)
- {
- $submission = Submission::findOrFail($id);
-
- return view('submission_edit', [
- 'submission' => $submission
- ]);
- }
- public function update(Request $request, $id)
- {
- $submission = Submission::findOrFail($id);
-
- $validated = $request->validate([
- 'name' => 'required|string|max:100',
- 'email' => 'required|email|max:255',
- 'message' => 'nullable|string|max:1000',
- 'status' => 'required|in:active,archived,pending',
- ]);
- $submission->update($validated);
- return redirect()->route('data.show')->with('success', 'Заявка успешно обновлена!');
- }
- public function destroy($id)
- {
- $submission = Submission::findOrFail($id);
- $submission->delete(); // Мягкое удаление
- return redirect()->route('data.show')->with('success', 'Заявка успешно удалена!');
- }
- }
|