index.blade.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. {{--
  2. Вьюха: Список разделов справочников
  3. Создана: 2026-05-06
  4. Контроллер: Admin\ManualController::index()
  5. Переменные: $sections (коллекция DictSection, отсортированная по sort_order)
  6. Действия: просмотр значений раздела, редактирование, удаление (только не системных)
  7. --}}
  8. @extends('admin.layout')
  9. @section('title', 'Справочники')
  10. @section('content_header')
  11. <div class="d-flex justify-content-between align-items-center">
  12. <h1 class="m-0">Справочники</h1>
  13. <a href="{{ route('admin.manuals.section.create') }}" class="btn btn-primary btn-sm">
  14. <i class="fas fa-plus"></i> Добавить раздел
  15. </a>
  16. </div>
  17. @stop
  18. @section('breadcrumb')
  19. <li class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Главная</a></li>
  20. <li class="breadcrumb-item active">Справочники</li>
  21. @stop
  22. @section('content')
  23. @if(session('success'))
  24. <div class="alert alert-success alert-dismissible">
  25. <button type="button" class="close" data-dismiss="alert">&times;</button>
  26. {{ session('success') }}
  27. </div>
  28. @endif
  29. @if(session('error'))
  30. <div class="alert alert-danger alert-dismissible">
  31. <button type="button" class="close" data-dismiss="alert">&times;</button>
  32. {{ session('error') }}
  33. </div>
  34. @endif
  35. <div class="card">
  36. <div class="card-body p-0">
  37. <table class="table table-hover mb-0">
  38. <thead>
  39. <tr>
  40. <th>Раздел</th>
  41. <th>Код</th>
  42. <th>Тип</th>
  43. <th>Порядок</th>
  44. <th style="width:180px">Действия</th>
  45. </tr>
  46. </thead>
  47. <tbody>
  48. @forelse($sections as $section)
  49. <tr>
  50. <td>
  51. <a href="{{ route('admin.manuals.values', $section) }}">
  52. <i class="fas fa-list mr-1"></i>{{ $section->label }}
  53. </a>
  54. @if($section->is_system)
  55. <span class="badge badge-secondary ml-1">системный</span>
  56. @endif
  57. </td>
  58. <td><code>{{ $section->code }}</code></td>
  59. <td>
  60. @if($section->is_hierarchical)
  61. <span class="badge badge-info"><i class="fas fa-sitemap mr-1"></i>Иерархический</span>
  62. @else
  63. <span class="badge badge-light">Плоский</span>
  64. @endif
  65. </td>
  66. <td>{{ $section->sort_order }}</td>
  67. <td>
  68. <a href="{{ route('admin.manuals.values', $section) }}"
  69. class="btn btn-xs btn-success" title="Значения">
  70. <i class="fas fa-list"></i> Значения
  71. </a>
  72. <a href="{{ route('admin.manuals.section.edit', $section) }}"
  73. class="btn btn-xs btn-info" title="Редактировать">
  74. <i class="fas fa-edit"></i>
  75. </a>
  76. @if(!$section->is_system)
  77. <form action="{{ route('admin.manuals.section.destroy', $section) }}"
  78. method="POST" class="d-inline"
  79. onsubmit="return confirm('Удалить раздел и все его значения?')">
  80. @csrf @method('DELETE')
  81. <button class="btn btn-xs btn-danger" title="Удалить">
  82. <i class="fas fa-trash"></i>
  83. </button>
  84. </form>
  85. @endif
  86. </td>
  87. </tr>
  88. @empty
  89. <tr>
  90. <td colspan="5" class="text-center text-muted py-4">
  91. Справочники не найдены.
  92. </td>
  93. </tr>
  94. @endforelse
  95. </tbody>
  96. </table>
  97. </div>
  98. </div>
  99. @stop