233 lines
9.9 KiB
PHP
233 lines
9.9 KiB
PHP
@push('scripts')
|
|
<script src="{{ asset('assets/datatables/datatables.min.js') }}"></script>
|
|
<script src="{{ asset('assets/plugins/select2/js/select2.full.min.js') }}"></script>
|
|
<script src="{{ asset('assets/plugins/toastr/toastr.min.js') }}"></script>
|
|
<!-- date-range-picker -->
|
|
<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
|
|
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
|
|
<script>
|
|
$(document).ready(function() {
|
|
let dataTable = $('#tabelku').DataTable({
|
|
processing: true,
|
|
serverSide: true,
|
|
ajax: {
|
|
url: '{{ route('menu.getDataMenu') }}',
|
|
data: function(d) {
|
|
d.kelompok_produk = $('#filter-kelompok-kategori').val();
|
|
}
|
|
},
|
|
columns: [{
|
|
data: 'nomor',
|
|
name: 'nomor',
|
|
orderable: false,
|
|
className: 'text-center'
|
|
},
|
|
{
|
|
data: 'kode_produk',
|
|
name: 'kode_produk'
|
|
},
|
|
{
|
|
data: 'nama_produk',
|
|
name: 'nama_produk'
|
|
},
|
|
{
|
|
data: 'harga_produk',
|
|
name: 'harga_produk'
|
|
},
|
|
{
|
|
data: 'kategori_produk',
|
|
name: 'kategori_produk'
|
|
},
|
|
{
|
|
data: 'nama_kelompok_kategori',
|
|
name: 'nama_kelompok_kategori'
|
|
},
|
|
{
|
|
data: 'ubah',
|
|
name: 'ubah',
|
|
className: 'text-center'
|
|
},
|
|
]
|
|
})
|
|
$('#btn_filter').on('click', function() {
|
|
dataTable.ajax.reload();
|
|
});
|
|
})
|
|
</script>
|
|
<script>
|
|
$('.select2').select2();
|
|
|
|
function kelompokKategori(id) {
|
|
$.ajax({
|
|
url: "{{ route('menu.kelompok-kategori', '') }}/" + id,
|
|
method: "GET",
|
|
dataType: "json",
|
|
success: function(response) {
|
|
$('#kelompok_produk').empty();
|
|
|
|
if (response.message) {
|
|
$('#kelompok_produk').append(`<option value="">Pilih Dulu Kategori Produk</option>`);
|
|
} else {
|
|
response?.forEach(function(item, index) {
|
|
$('#kelompok_produk').append(
|
|
`<option value="${item?.id}">${item?.nama_kelompok_kategori}</option>`
|
|
)
|
|
})
|
|
}
|
|
|
|
// get attribute data-produk-id and data-kelompok-kategori-id
|
|
let produkId = $('#kategori_produk').attr('data-produk-id');
|
|
let kelompokKategoriId = $('#kategori_produk').attr('data-kelompok-kategori-id');
|
|
if (produkId != '' && kelompokKategoriId != '') {
|
|
$('#kelompok_produk').val(kelompokKategoriId).trigger('change');
|
|
}
|
|
},
|
|
error: function(xhr, status, error) {
|
|
toastr.error(xhr.responseJSON.message, 'Error', {
|
|
timeOut: 3000
|
|
});
|
|
}
|
|
})
|
|
}
|
|
|
|
$('#promodatetime').daterangepicker({
|
|
timePicker: true,
|
|
timePickerIncrement: 30,
|
|
locale: {
|
|
format: 'MM/DD/YYYY hh:mm A'
|
|
}
|
|
});
|
|
|
|
function checkPromoOrNot() {
|
|
let kelompokProduk = $('#kelompok_produk').val();
|
|
if (kelompokProduk == 9) {
|
|
$('.form-promo').show();
|
|
$('#stok_promo').attr('required', 'required');
|
|
$('#promodatetime').attr('required', 'required');
|
|
} else {
|
|
$('.form-promo').hide();
|
|
$('#stok_promo').removeAttr('required');
|
|
$('#promodatetime').removeAttr('required');
|
|
}
|
|
}
|
|
|
|
function saveMenu() {
|
|
document.getElementById('btn-simpan-menu').disabled = true;
|
|
document.getElementById('btn-simpan-menu').innerText = "Loading...";
|
|
|
|
if ($('#kategori_produk').val() == 9) {
|
|
// check if value is null or empty
|
|
if ($('#stok_promo').val() == '' || $('#promodatetime').val() == '') {
|
|
toastr.error('Stok Promo dan Tanggal Promo tidak boleh kosong', 'Gagal', {
|
|
timeOut: 2000
|
|
});
|
|
document.getElementById('btn-simpan-menu').disabled = false;
|
|
document.getElementById('btn-simpan-menu').innerText = "Simpan";
|
|
return;
|
|
}
|
|
}
|
|
|
|
var url = $('#formMenu').data('url');
|
|
var method = $('#formMenu').data('method');
|
|
var data = {
|
|
_token: "{{ csrf_token() }}",
|
|
kategori_produk: $('#kategori_produk').val(),
|
|
kelompok_produk: $('#kelompok_produk').val(),
|
|
kode_produk: $('#kode_produk').val(),
|
|
nama_produk: $('#nama_produk').val(),
|
|
harga_produk: $('#harga_produk').val(),
|
|
tersedia: $('#tersedia').val(),
|
|
deskripsi_produk: $('#deskripsi_produk').val(),
|
|
stok_promo: $('#stok_promo').val(),
|
|
promodatetime: $('#promodatetime').val()
|
|
};
|
|
|
|
$.ajax({
|
|
url: url,
|
|
method: method,
|
|
data: data,
|
|
success: function(result) {
|
|
if (result.errors) {
|
|
toastr.error(result.errors, 'Gagal', {
|
|
timeOut: 2000
|
|
});
|
|
document.getElementById('btn-simpan-menu').disabled = false;
|
|
document.getElementById('btn-simpan-menu').innerText = "Simpan";
|
|
} else {
|
|
toastr.success(result.message, 'Berhasil', {
|
|
timeOut: 2000
|
|
});
|
|
|
|
$('#modal-produk').modal('hide');
|
|
$('#formMenu')[0].reset();
|
|
document.getElementById('btn-simpan-menu').disabled = false;
|
|
document.getElementById('btn-simpan-menu').innerText = "Simpan";
|
|
|
|
setTimeout(function() {
|
|
window.location.reload(1);
|
|
}, 1000);
|
|
}
|
|
},
|
|
error: function(xhr, status, error) {
|
|
toastr.error(xhr.responseJSON.message, 'Error', {
|
|
timeOut: 3000
|
|
});
|
|
document.getElementById('btn-simpan-menu').disabled = false;
|
|
document.getElementById('btn-simpan-menu').innerText = "Simpan";
|
|
}
|
|
});
|
|
}
|
|
|
|
function tambahMenu() {
|
|
$('#formMenu')[0].reset();
|
|
$('#kategori_produk').attr('data-produk-id', '');
|
|
$('#kategori_produk').attr('data-kelompok-kategori-id', '');
|
|
$('#kategori_produk').val('0').trigger('change');
|
|
$('#kelompok_produk').val('default').trigger('change');
|
|
$('#modal-produk').modal('show');
|
|
$('#title-form-menu').text("Tambah Menu");
|
|
|
|
let formMenu = document.getElementById('formMenu');
|
|
formMenu.setAttribute('data-url', "{{ route('menu.store') }}");
|
|
formMenu.setAttribute('data-method', "post");
|
|
}
|
|
|
|
function editMenu(id) {
|
|
$('#modal-produk').modal('show');
|
|
$('#title-form-menu').text("Ubah Menu");
|
|
let formMenu = document.getElementById('formMenu');
|
|
formMenu.setAttribute('data-url', "{{ route('menu.update', '') }}/" + id);
|
|
formMenu.setAttribute('data-method', "put");
|
|
|
|
$.ajax({
|
|
url: "{{ route('menu.show', '') }}/" + id,
|
|
method: "GET",
|
|
success: function(response) {
|
|
$('#kategori_produk').val(response.produk.kategori_produk_id).trigger('change');
|
|
$('#kategori_produk').attr('data-produk-id', response.produk.id);
|
|
$('#kategori_produk').attr('data-kelompok-kategori-id', response
|
|
.kelompok_kategori_id);
|
|
$('#kelompok_produk').val(response.kelompok_kategori_id);
|
|
$('#kode_produk').val(response.produk.kode_produk);
|
|
$('#nama_produk').val(response.produk.nama_produk);
|
|
$('#harga_produk').val(response.produk.harga_produk);
|
|
$('#tersedia').val(response.produk.tersedia);
|
|
$('#deskripsi_produk').val(response.produk.deskripsi_produk);
|
|
$('#stok_promo').val(response.produk.stok_promo);
|
|
var tgl_start_promo_with_am_pm = moment(response.produk.tgl_start_promo).format(
|
|
'MM/DD/YYYY hh:mm A');
|
|
var tgl_end_promo_with_am_pm = moment(response.produk.tgl_end_promo).format(
|
|
'MM/DD/YYYY hh:mm A');
|
|
var promodatetime = tgl_start_promo_with_am_pm + ' - ' + tgl_end_promo_with_am_pm;
|
|
$('#promodatetime').val(promodatetime);
|
|
},
|
|
error: function(xhr, status, error) {
|
|
toastr.error(xhr.responseJSON.message, 'Error', {
|
|
timeOut: 3000
|
|
});
|
|
}
|
|
})
|
|
}
|
|
</script>
|
|
@endpush
|