Pārlūkot izejas kodu

update install date and days from order card

Alexander Musikhin 2 mēneši atpakaļ
vecāks
revīzija
119bd967f2

+ 6 - 6
app/Http/Requests/Order/StoreOrderRequest.php

@@ -23,12 +23,12 @@ class StoreOrderRequest extends FormRequest
     {
         return [
             'id'                => 'nullable|exists:orders,id',
-            'name'              => 'required|string',
-            'user_id'           => 'required|exists:users,id',
-            'district_id'       => 'required|exists:districts,id',
-            'area_id'           => 'required|exists:areas,id',
-            'object_address'    => 'required|string|min:5',
-            'object_type_id'    => 'required|exists:object_types,id',
+            'name'              => 'nullable|string',
+            'user_id'           => 'nullable|exists:users,id',
+            'district_id'       => 'nullable|exists:districts,id',
+            'area_id'           => 'nullable|exists:areas,id',
+            'object_address'    => 'nullable|string|min:5',
+            'object_type_id'    => 'nullable|exists:object_types,id',
             'comment'           => 'nullable|string',
             'installation_date' => 'nullable|date',
             'ready_date'        => 'nullable|date',

+ 57 - 2
resources/views/orders/show.blade.php

@@ -55,8 +55,18 @@
                 <div class="text-{{ Order::STATUS_COLOR[$order->order_status_id] }}">Статус
                     объекта: {{ $order->orderStatus->name }}</div>
                 <div>Комментарий: {{ $order->comment }}</div>
-                <div>Дата выхода на монтаж: {{ $order->installation_date }}</div>
-                <div>Дней на монтаж: {{ $order->install_days }}</div>
+                <div class="row">
+                    <div class="col-md-8">Дата выхода на монтаж:</div>
+                    <div class="col-md-4">
+                        <input type="date" name="installation_date" id="installation_date" value="{{ $order->installation_date }}" class="form-control form-control-sm">
+                    </div>
+                </div>
+                <div class="row">
+                    <div class="col-md-8">Дней на монтаж:</div>
+                    <div class="col-md-4">
+                        <input type="number" min="1" name="install_days" id="install_days" value="{{ $order->install_days }}"  class="form-control form-control-sm">
+                    </div>
+                </div>
                 <div>Дата готовности площадки: {{ $order->ready_date }}</div>
                 <div>Бригадир: {{ $order?->brigadier?->name }}, тел. {{ $order?->brigadier?->phone }}</div>
                 <div>Менеджер: {{ $order->user->name }}, тел. {{ $order->user->phone }}</div>
@@ -463,5 +473,50 @@
             }
         });
 
+        $('#installation_date').on('change', function () {
+            let installationDate = $(this).val();
+            $.post(
+                '{{ route('order.update', $order->id) }}',
+                {
+                    '_token': '{{ csrf_token() }}',
+                    id: '{{ $order->id }}',
+                    installation_date: installationDate
+                },
+                function () {
+                    $('.alerts').append(
+                        '<div class="main-alert alert alert-success" role="alert">Обновлена дата выхода на монтаж!</div>'
+                    );
+                    setTimeout(function () {
+                        $('.main-alert').fadeTo(2000, 500).slideUp(500, function () {
+                            $(".main-alert").slideUp(500);
+                        })
+                    }, 3000);
+                }
+            );
+        });
+
+        $('#install_days').on('change', function () {
+            let installDays = $(this).val();
+            $.post(
+                '{{ route('order.update', $order->id) }}',
+                {
+                    '_token' : '{{ csrf_token() }}',
+                    id: '{{ $order->id }}',
+                    install_days: installDays
+                },
+                function () {
+                    console.log('Update success!');
+                    $('.alerts').append(
+                        '<div class="main-alert alert alert-success" role="alert">Обновлено количество дней на монтаж!</div>'
+                    );
+                    setTimeout(function () {
+                        $('.main-alert').fadeTo(2000, 500).slideUp(500, function () {
+                            $(".main-alert").slideUp(500);
+                        })
+                    }, 3000);
+                }
+            );
+        });
+
     </script>
 @endpush