index.blade.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. @extends('layouts.app')
  2. @section('content')
  3. <div class="row mb-2">
  4. <div class="col-md-4">
  5. <h3>Заказы МАФ</h3>
  6. </div>
  7. <div class="col-md-4 text-center">
  8. @include('partials.year-switcher')
  9. </div>
  10. <div class="col-md-4 text-end">
  11. @if(hasRole('admin,assistant_head'))
  12. <button type="button" class="btn btn-sm btn-outline-primary me-2" data-bs-toggle="modal" data-bs-target="#setOrderInStockModal">
  13. Весь заказ на складе
  14. </button>
  15. @endif
  16. <button type="button" class="btn btn-sm btn-primary" data-bs-toggle="modal" data-bs-target="#addModal">
  17. Добавить
  18. </button>
  19. </div>
  20. </div>
  21. @include('partials.table', [
  22. 'id' => $id,
  23. 'header' => $header,
  24. 'strings' => $maf_orders,
  25. 'routeName' => 'maf_order.show',
  26. ])
  27. @include('partials.pagination', ['items' => $maf_orders])
  28. <!-- Модальное окно добавления-->
  29. <div class="modal fade" id="addModal" tabindex="-1" aria-labelledby="addModalLabel" aria-hidden="true">
  30. <div class="modal-dialog modal-fullscreen-sm-down modal-lg">
  31. <div class="modal-content">
  32. <div class="modal-header">
  33. <h1 class="modal-title fs-5" id="addModalLabel">Добавить заказ МАФ</h1>
  34. <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Закрыть"></button>
  35. </div>
  36. <div class="modal-body">
  37. <form action="{{ route('maf_order.store') }}" method="post">
  38. @csrf
  39. <div id="select_maf_form">
  40. <input type="text" class="form-control mb-2" placeholder="Поиск номенклатуры" id="search_maf">
  41. <select id="select_maf" class="form-select mb-3" multiple></select>
  42. </div>
  43. <div class="is-hidden" id="sku_form">
  44. <a href="#" onclick="$('#sku_form').slideUp(); $('#select_maf_form').slideDown()">назад</a>
  45. <input type="hidden" id="product_id" name="product_id" value="">
  46. @include('partials.input', ['name' => 'product_name', 'title' => 'МАФ', 'disabled' => true])
  47. @include('partials.input', ['name' => 'order_number', 'title' => 'Номер заказа', 'required' => false])
  48. @include('partials.input', ['name' => 'quantity', 'title' => 'Количество', 'required' => true, 'min' => 1])
  49. @include('partials.submit', ['name' => 'Добавить'])
  50. </div>
  51. </form>
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. @if(hasRole('admin,assistant_head'))
  57. <div class="modal fade" id="setOrderInStockModal" tabindex="-1" aria-labelledby="setOrderInStockModalLabel" aria-hidden="true">
  58. <div class="modal-dialog">
  59. <div class="modal-content">
  60. <form action="{{ route('maf_order.set_order_in_stock') }}" method="post">
  61. @csrf
  62. <div class="modal-header">
  63. <h1 class="modal-title fs-5" id="setOrderInStockModalLabel">Отметить заказ как "На складе"</h1>
  64. <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Закрыть"></button>
  65. </div>
  66. <div class="modal-body">
  67. <label for="bulk_order_number" class="form-label">Номер заказа</label>
  68. <select class="form-select @error('bulk_order_number') is-invalid @enderror" id="bulk_order_number" name="bulk_order_number" required>
  69. <option value="">Выберите номер заказа</option>
  70. @foreach($order_numbers as $order_number)
  71. <option value="{{ $order_number }}" @selected(old('bulk_order_number') === $order_number)>{{ $order_number }}</option>
  72. @endforeach
  73. </select>
  74. @error('bulk_order_number')
  75. <div class="invalid-feedback d-block">{{ $message }}</div>
  76. @enderror
  77. </div>
  78. <div class="modal-footer">
  79. <button type="button" class="btn btn-secondary btn-sm" data-bs-dismiss="modal">Отмена</button>
  80. <button type="submit" class="btn btn-primary btn-sm">Сменить статус на складе</button>
  81. </div>
  82. </form>
  83. </div>
  84. </div>
  85. </div>
  86. @endif
  87. @endsection
  88. @push('scripts')
  89. <script type="module">
  90. $('#select_maf').on('change', function () {
  91. $('#product_id').val($(this).val());
  92. $('#product_name').val($('#select_maf option:selected').text()).slideDown();
  93. $('#select_maf_form').slideUp();
  94. $('#sku_form').slideDown();
  95. });
  96. @if($errors->has('bulk_order_number') && hasRole('admin,assistant_head'))
  97. const setOrderInStockModalElement = document.getElementById('setOrderInStockModal');
  98. if (setOrderInStockModalElement) {
  99. const setOrderInStockModal = new bootstrap.Modal(setOrderInStockModalElement);
  100. setOrderInStockModal.show();
  101. }
  102. @endif
  103. </script>
  104. @endpush