config table restaurant.blade.php - dathalongbay/notes GitHub Wiki

@extends('2019.main-minimize')
@section('pageTitle', "Giới hạn số bàn booking")
@section('main')
<main role="main" class="offset-md-2 col-md-10">
        <div class="row">
            <div class="col-md-12">
                <div class="portlet light ">
                    <div class="portlet-body form">
                        @if ($restaurant == null)
                            <div class="alert alert-danger notification">
                                <ul>
                                    <li>Nhà hàng ko tồn tại</li>
                                </ul>
                            </div>
                        @else
                            @if (session('flashMessage'))
                                <div class="alert alert-info notification">
                                    {{ session('flashMessage') }}
                                </div>
                            @endif
                            <form name="storeTableRestaurant" method="post" action="{{ url('/nhahang/booking/storeTableRestaurant') }}" class="form-horizontal form_validate" enctype="multipart/form-data">
                                {{ method_field('POST') }}
                                <input type='hidden' name='_token' value='{!! csrf_token() !!}'>
                                <div class="form-body">

                                    <div class="box-config" style="padding: 10px;margin-bottom: 10px;background-color: white">
                                        <div class="form-group">
                                            <label for="region" class="col-md-12 control-label bold">Giới hạn số bàn đặt trước qua nguồn CSKH hàng ngày</label>
                                            <div class="col-md-9">
                                                <input type="number" name="customer_service_table_amount" class="form-control" value="{{ ($restaurant->getCustomerServiceTableAmount() !== null) ? $restaurant->getCustomerServiceTableAmount() : 10 }}">
                                            </div>
                                        </div>
                                        <p class="add-booking-time-box">Khung giờ đặc biệt từ nguồn CSKH <a href="" class="btn btn-sm btn-info add-booking-time" data-source="3">Thêm khung giờ</a></p>
                                        @if(isset($customerServiceTableAmountList) && !empty($customerServiceTableAmountList))
                                            @foreach($customerServiceTableAmountList as $customerServiceTableAmountItem)
                                                <div class="form-group cskh-special-row booking-exist" style="padding: 10px 0">
                                                    <div class="col-md-12">
                                                        <input type="hidden" name="source[]" value="{{ $customerServiceTableAmountItem->source }}">
                                                        <input type="hidden" name="schedule_id[]" value="{{ $customerServiceTableAmountItem->id }}">
                                                        <input type="hidden" name="status[]" value="1">
                                                        Thời gian bắt đầu
                                                        <input type="text" name="start_time[]" class="start_time" value="{{ $customerServiceTableAmountItem->start_time }}">
                                                        Thời gian kết thúc
                                                        <input type="text" name="end_time[]" class="end_time" value="{{ $customerServiceTableAmountItem->end_time }}">
                                                        Giới hạn số bàn
                                                        <input type="number" name="seat_amount[]" class="seat_amount" value="{{ $customerServiceTableAmountItem->seat_amount }}">

                                                        <a href="" class="btn btn-sm btn-warning remove-booking-time">Xóa</a>
                                                    </div>
                                                </div>
                                            @endforeach
                                        @endif
                                    </div>

                                    <div class="box-config" style="padding: 10px;margin-bottom: 10px;background-color: white">
                                        <div class="form-group">
                                            <label for="region" class="col-md-12 control-label bold">Giới hạn số bàn đặt trước qua nguồn Website hàng ngày</label>
                                            <div class="col-md-9">
                                                <input type="number" name="website_table_amount" class="form-control" value="{{ ($restaurant->getWebsiteTableAmount() !== null) ? $restaurant->getWebsiteTableAmount() : 10 }}">
                                            </div>
                                        </div>

                                        <p class="add-booking-time-box">Khung giờ đặc biệt từ nguồn Website <a href="#" class="btn btn-sm btn-info add-booking-time" data-source="2">Thêm khung giờ</a></p>
                                        @if(isset($websiteTableAmountList) && !empty($websiteTableAmountList))
                                            @foreach($websiteTableAmountList as $websiteTableAmountItem)
                                                <div class="form-group cskh-special-row booking-exist" style="padding: 10px 0">
                                                    <div class="col-md-12">
                                                        <input type="hidden" name="source[]" value="{{ $websiteTableAmountItem->source }}">
                                                        <input type="hidden" name="schedule_id[]" value="{{ $websiteTableAmountItem->id }}">
                                                        <input type="hidden" name="status[]" value="1">
                                                        Thời gian bắt đầu
                                                        <input type="text" name="start_time[]" class="start_time" value="{{ $websiteTableAmountItem->start_time }}">
                                                        Thời gian kết thúc
                                                        <input type="text" name="end_time[]" class="end_time" value="{{ $websiteTableAmountItem->end_time }}">
                                                        Giới hạn số bàn
                                                        <input type="number" name="seat_amount[]" class="seat_amount" value="{{ $websiteTableAmountItem->seat_amount }}">

                                                        <a href="" class="btn btn-sm btn-warning remove-booking-time">Xóa</a>
                                                    </div>
                                                </div>
                                            @endforeach
                                        @endif
                                    </div>

                                    <div class="form-group form-actions">
                                        <div class="row">
                                            <div class="col-md-offset-5 col-md-4">

                                                <p id="submit-config-booking" class="btn btn-success">Lưu cấu hình</p>
                                            </div>
                                        </div>
                                    </div>

                                </div>
                            </form>
                            <!-- END FORM-->
                        @endif
                    </div>
                </div>
            </div>
        </div>

</main>
@endsection
@section('footerScript')

    <script type="text/javascript" src="{{url('2019/new-datetimepicker/moment.min.js')}}"></script>
    <script type="text/javascript" src="{{url('2019/new-datetimepicker/bootstrap-datetimepicker.min.js')}}"></script>
    <script type="text/javascript" src="{{url('2019/js/[email protected]')}}"></script>

    <script>

        jQuery(function () {

            function date_time_picker_limit_booking() {
                jQuery('input.start_time').datetimepicker({
                    format : 'YYYY-MM-DD HH:mm',
                    useCurrent : true,
                    minDate : '<?php echo e(date('Y-m-d')); ?>',
                    icons : {
                        up: "fa fa-chevron-circle-up",
                        down: "fa fa-chevron-circle-down",
                        next: 'fa fa-chevron-circle-right',
                        previous: 'fa fa-chevron-circle-left',
                        time: 'fa fa-clock-o',
                        date: 'fa fa-calendar-check-o',
                        today: 'fa fa-clock-o',
                        clear: 'fa fa-trash-o',
                        close: 'fa fa-times-circle-o'
                    }
                }).on('dp.change', function(e){

                });

                jQuery('input.end_time').datetimepicker({
                    format : 'YYYY-MM-DD HH:mm',
                    icons : {
                        up: "fa fa-chevron-circle-up",
                        down: "fa fa-chevron-circle-down",
                        next: 'fa fa-chevron-circle-right',
                        previous: 'fa fa-chevron-circle-left',
                        time: 'fa fa-clock-o',
                        date: 'fa fa-calendar-check-o',
                        today: 'fa fa-clock-o',
                        clear: 'fa fa-trash-o',
                        close: 'fa fa-times-circle-o'
                    }
                }).on('dp.change', function(e){

                });
            }

            date_time_picker_limit_booking();

            jQuery(document).on('click', '.add-booking-time', function(event){

                event.preventDefault();
                var appendContent = '';

                var source = jQuery(this).data("source");
                if (source == 3) {
                    appendContent = '<div class="form-group cskh-special-row" style="padding: 10px 0">' +
                        '<input type="hidden" name="source[]" value="3">' +
                        '<input type="hidden" name="schedule_id[]" value="0">' +
                        '<input type="hidden" name="status[]" value="1">' +
                        '<div class="col-md-12"> Thời gian bắt đầu  ' +
                        '<input type="text" name="start_time[]" class="start_time" value="">' +
                        ' Thời gian kết thúc  ' +
                        '<input type="text" name="end_time[]" class="end_time" value="">' +
                        ' Giới hạn số bàn  ' +
                        '<input type="number" name="seat_amount[]" class="seat_amount" value="10">' +
                        ' <a href="" class="btn btn-sm btn-warning">Xóa</a>' +
                        '</div>' +
                        '</div>';
                }
                if (source == 2) {
                    appendContent = '<div class="form-group cskh-special-row" style="padding: 10px 0">' +
                        '<input type="hidden" name="source[]" value="2">' +
                        '<input type="hidden" name="schedule_id[]" value="0">' +
                        '<input type="hidden" name="status[]" value="1">' +
                        '<div class="col-md-12"> Thời gian bắt đầu  ' +
                        '<input type="text" name="start_time[]" class="start_time" value="">' +
                        ' Thời gian kết thúc  ' +
                        '<input type="text" name="end_time[]" class="end_time" value="">' +
                        ' Giới hạn số bàn  ' +
                        '<input type="number" name="seat_amount[]" class="seat_amount" value="10">' +
                        ' <a href="" class="btn btn-sm btn-warning">Xóa</a>' +
                        '</div>' +
                        '</div>';
                }

                var cskh_special_row_last = jQuery(this).closest(".box-config").find(".cskh-special-row:last");
                var add_booking_time_box = jQuery(this).closest(".box-config").find("p.add-booking-time-box");
                if (cskh_special_row_last.length > 0) {
                    cskh_special_row_last.after(appendContent);
                } else {
                    add_booking_time_box.after(appendContent);
                }

                date_time_picker_limit_booking();

            });

            jQuery(document).on('click', '.remove-booking-time', function(event){

                event.preventDefault();

                var cskh_special_row = jQuery(this).closest(".cskh-special-row");
                if (cskh_special_row.hasClass("booking-exist")) {
                    cskh_special_row.find("input[name='status[]']").val(0);
                    cskh_special_row.css({"display": "none"});
                } else {
                    cskh_special_row.remove();
                }
            });
        });

        jQuery("#submit-config-booking").on('click', function (){

            jQuery.ajax({
                headers: {
                    'X-CSRF-TOKEN': '<?=csrf_token()?>'
                },
                url : '{{ action('Admin\Bookings\Booking@checkStoreTableRestaurantAjax') }}',
                type : 'POST',
                data: jQuery("form[name='storeTableRestaurant']").serializeArray(),
                success : function(res) {
                    console.log(res);
                    console.log(res.duplicate);
                    console.log(res.msg);

                    if (res.duplicate == 0) {
                        jQuery("form[name='storeTableRestaurant']").submit();
                    } else {
                        Swal.fire({
                            icon: 'error',
                            title: 'Có lỗi xảy ra...',
                            text: res.msg,
                        })
                    }

                },
                error : function (x, y, z) {

                }
            });
        });

    </script>

    <link href="{{url('2019/new-datetimepicker/bootstrap-datetimepicker.min.css')}}" rel="stylesheet">
    <link href="{{url('2019/css/font-awesome.css')}}" rel="stylesheet"/>
    <link rel="stylesheet" href="{{url('2019/css/my-custom-style.css')}}" />
@endsection

⚠️ **GitHub.com Fallback** ⚠️