Merge branch 'sofyan' of https://git.indoserv.net/wewmantap/resto-dhepot into main-gitea-akuncoa
commit
a3486d6b54
|
@ -3,20 +3,37 @@
|
|||
namespace App\Http\Controllers\Kasir;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\KategoriProduk;
|
||||
use App\Models\KelompokKategori;
|
||||
use App\Models\KelompokKategoriPivot;
|
||||
use App\Models\Pesanan;
|
||||
use App\Models\Produk;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Redirect;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
|
||||
class Menu extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('pages.Menu.index');
|
||||
// return $data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->first();
|
||||
$kategori_produks = KategoriProduk::get();
|
||||
|
||||
return view('pages.Menu.index', compact('kategori_produks'));
|
||||
}
|
||||
|
||||
public function kelompokKategori($id) {
|
||||
$kelompok_kategoris = KelompokKategori::where('kategori_produk_id', $id)->get();
|
||||
|
||||
return $kelompok_kategoris;
|
||||
}
|
||||
|
||||
public function getDataMenu()
|
||||
{
|
||||
$data = Produk::with(['kategori_produk'])->get();
|
||||
// $data = Produk::with(['kategori_produk'])->get();
|
||||
$data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->get();
|
||||
$nomor = 1;
|
||||
|
||||
return $datatables = datatables()
|
||||
|
@ -24,15 +41,117 @@ class Menu extends Controller
|
|||
->addColumn('nomor', function ($data) use (&$nomor) {
|
||||
return $nomor++;
|
||||
})
|
||||
->addColumn('kode_produk', function ($data) {
|
||||
return $data->produk->kode_produk;
|
||||
})
|
||||
->addColumn('nama_produk', function ($data) {
|
||||
return $data->produk->nama_produk;
|
||||
})
|
||||
->addColumn('harga_produk', function ($data) {
|
||||
return $data->produk->harga_produk;
|
||||
})
|
||||
->addColumn('nama_kelompok_kategori', function ($data) {
|
||||
return $data->kelompokKategori->nama_kelompok_kategori;
|
||||
})
|
||||
->addColumn('kategori_produk', function ($data) {
|
||||
return $data->kategori_produk->nama_kategori_produk;
|
||||
return $data->produk->kategori_produk->nama_kategori_produk;
|
||||
})
|
||||
->addColumn('ubah', function ($data) {
|
||||
return '<div class="btn-group">
|
||||
<a href="javascript:void(0)" onclick="print(\'' . $data->id . '\')"><span class="btn btn-xs btn-success"><i class="fas fa-print"></i></span></a>
|
||||
<a href="javascript:void(0)" onclick="editMenu(\'' . $data->id . '\')">
|
||||
<span class="btn btn-md btn-warning"><i class="fas fa-edit"></i> Edit</span>
|
||||
</a>
|
||||
</div>';
|
||||
})
|
||||
->rawColumns(['nomor', 'kode_produk', 'ubah'])
|
||||
->rawColumns(['nomor', 'ubah'])
|
||||
->make(true);
|
||||
}
|
||||
|
||||
// Tambah Menu
|
||||
public function store(Request $request) {
|
||||
// validation
|
||||
$rules = array(
|
||||
'kategori_produk' => 'required',
|
||||
'kelompok_produk' => 'required',
|
||||
'kode_produk' => 'required',
|
||||
'nama_produk' => 'required',
|
||||
'harga_produk' => 'required',
|
||||
'tersedia' => 'required',
|
||||
'deskripsi_produk' => 'required',
|
||||
);
|
||||
$validator = Validator::make($request->all(), $rules);
|
||||
|
||||
// check validation
|
||||
if ($validator->fails()) {
|
||||
// If validation fails, return with errors
|
||||
return response()->json(['errors' => $validator->errors()], 422);
|
||||
} else {
|
||||
// create product
|
||||
$produk = Produk::create([
|
||||
'kategori_produk_id' => $request->kategori_produk,
|
||||
'kode_produk' => $request->kode_produk,
|
||||
'nama_produk' => $request->nama_produk,
|
||||
'harga_produk' => $request->harga_produk,
|
||||
'tersedia' => $request->tersedia,
|
||||
'deskripsi_produk' => $request->deskripsi_produk,
|
||||
'created_at' => Carbon::now()
|
||||
]);
|
||||
|
||||
$pivot_produk = KelompokKategoriPivot::create([
|
||||
'kelompok_kategori_id' => $request->kelompok_produk,
|
||||
'produk_id' => $produk->id,
|
||||
'created_at' => Carbon::now()
|
||||
]);
|
||||
|
||||
// Return a success response
|
||||
return response()->json(['message' => 'Data created successfully']);
|
||||
}
|
||||
}
|
||||
|
||||
public function show($id) {
|
||||
$data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->findOrFail($id);
|
||||
return response()->json($data);
|
||||
}
|
||||
|
||||
// Ubah Menu
|
||||
public function update(Request $request, $id) {
|
||||
// validation
|
||||
$rules = array(
|
||||
'kategori_produk' => 'required',
|
||||
'kelompok_produk' => 'required',
|
||||
'kode_produk' => 'required',
|
||||
'nama_produk' => 'required',
|
||||
'harga_produk' => 'required',
|
||||
'tersedia' => 'required',
|
||||
'deskripsi_produk' => 'required',
|
||||
);
|
||||
$validator = Validator::make($request->all(), $rules);
|
||||
|
||||
// check validation
|
||||
if ($validator->fails()) {
|
||||
// If validation fails, return with errors
|
||||
return response()->json(['errors' => $validator->errors()], 422);
|
||||
} else {
|
||||
$pivot = KelompokKategoriPivot::findOrFail($id);
|
||||
$produk = Produk::find($pivot->produk_id);
|
||||
|
||||
// update pivot produk
|
||||
$pivot->update([
|
||||
'kelompok_ketegori_id' => $request->kelompok_produk,
|
||||
]);
|
||||
|
||||
// update produk
|
||||
$produk->update([
|
||||
'kategori_produk_id' => $request->kategori_produk,
|
||||
'kode_produk' => $request->kode_produk,
|
||||
'nama_produk' => $request->nama_produk,
|
||||
'harga_produk' => $request->harga_produk,
|
||||
'tersedia' => $request->tersedia,
|
||||
'deskripsi_produk' => $request->deskripsi_produk,
|
||||
]);
|
||||
|
||||
// Return a success response
|
||||
return response()->json(['message' => 'Data created successfully']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||
<link rel="stylesheet" href="{{ asset('assets/plugins/fontawesome-free/css/fontawesome.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('assets/plugins/fontawesome-free/css/all.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('assets/plugins/fontawesome-free/css/solid.min.css') }}">
|
||||
@stack('style2')
|
||||
<!-- Theme style -->
|
||||
<link rel="stylesheet" href="{{ asset('assets/dist/css/adminlte.min.css') }}">
|
||||
|
||||
|
|
|
@ -129,7 +129,8 @@
|
|||
<script>
|
||||
function print(id) {
|
||||
var url = "{{ route('history.print', '') }}/" + id + '?print=true'
|
||||
window.open(url, '_blank');
|
||||
// window.open(url, '_blank');
|
||||
window.open(url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
}
|
||||
</script>
|
||||
<script>
|
||||
|
|
|
@ -71,18 +71,21 @@
|
|||
function printDapurTigaKali(id) {
|
||||
var url = "{{ route('transaksi.printDapurTigaKali', '') }}/" + id + '?print=true'
|
||||
window.open(url, '_blank');
|
||||
// window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
location.reload(true);
|
||||
}
|
||||
|
||||
function printDapurDuaKali(id) {
|
||||
var url = "{{ route('transaksi.printDapurDuaKali', '') }}/" + id + '?print=true'
|
||||
window.open(url, '_blank');
|
||||
// window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
location.reload(true);
|
||||
}
|
||||
|
||||
function printDapurSatuKali(id) {
|
||||
var url = "{{ route('transaksi.printDapurSatuKali', '') }}/" + id + '?print=true'
|
||||
window.open(url, '_blank');
|
||||
// window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
location.reload(true);
|
||||
}
|
||||
</script>
|
||||
|
@ -379,8 +382,7 @@
|
|||
var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan');
|
||||
var total = table.rows[index].getAttribute('data-total');
|
||||
var harga = table.rows[index].getAttribute('data-harga');
|
||||
var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute(
|
||||
'data-keterangan');
|
||||
var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute('data-keterangan');
|
||||
|
||||
qty = parseInt(qty) + 1;
|
||||
var totalLama = parseInt(total) + parseInt(harga);
|
||||
|
@ -413,8 +415,7 @@
|
|||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params}, '${nama_produk}')">+</button>
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
</td>`;
|
||||
|
||||
calculateTotal();
|
||||
}
|
||||
|
@ -719,6 +720,7 @@
|
|||
timeOut: 2000
|
||||
});
|
||||
window.open(result.url, '_blank');
|
||||
// window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
|
||||
setTimeout(function() {
|
||||
window.location.reload(1);
|
||||
|
@ -846,6 +848,7 @@
|
|||
timeOut: 2000
|
||||
});
|
||||
window.open(result.url, '_blank');
|
||||
// window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600");
|
||||
|
||||
setTimeout(function() {
|
||||
window.location.reload(1);
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
aria-labelledby="custom-tabs-four-{{ $item->kode_kelompok_kategori }}-tab">
|
||||
<div class="row">
|
||||
@if ($item->kode_kelompok_kategori == 'PAK-SKOM')
|
||||
<div class="col-lg-12 col-md-6 col-sm-6" style="padding: 0px">
|
||||
<div class="col-lg-12 col-md-12 col-sm-12" style="padding: 0px">
|
||||
<div class="row" style="padding: 0px">
|
||||
<div class="col-xl-3 col-lg-4 col-md-4 col-sm-3"
|
||||
style="margin-left: 0px;padding-left: 0px;">
|
||||
|
@ -105,7 +105,7 @@
|
|||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
@if ($kelompokKategoriPivot->produk->urutan == 1)
|
||||
<div
|
||||
class="col-xl-4 col-lg-6 col-md-4 col-sm-4">
|
||||
class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
|
||||
<div onclick="selectPaket( {{ $kelompokKategoriPivot->produk }} );changeTab('vert-tabs-telur')"
|
||||
class="card card-warning card-outline btn">
|
||||
<div class="card-header">
|
||||
|
@ -135,7 +135,7 @@
|
|||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
@if ($kelompokKategoriPivot->produk->urutan == 2)
|
||||
<div
|
||||
class="col-xl-4 col-lg-6 col-md-4 col-sm-4">
|
||||
class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
|
||||
<div onclick="selectPaket( {{ $kelompokKategoriPivot->produk }} );changeTab('vert-tabs-sambel')"
|
||||
class="card card-warning card-outline btn">
|
||||
<div class="card-header">
|
||||
|
@ -165,7 +165,7 @@
|
|||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
@if ($kelompokKategoriPivot->produk->urutan == 3)
|
||||
<div
|
||||
class="col-xl-4 col-lg-6 col-md-4 col-sm-4">
|
||||
class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
|
||||
<div onclick="selectPaket( {{ $kelompokKategoriPivot->produk }} );changeTab('vert-tabs-topping')"
|
||||
class="card card-warning card-outline btn">
|
||||
<div class="card-header">
|
||||
|
@ -195,7 +195,7 @@
|
|||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
@if ($kelompokKategoriPivot->produk->urutan == 4)
|
||||
<div
|
||||
class="col-xl-4 col-lg-6 col-md-4 col-sm-4">
|
||||
class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
|
||||
<div onclick="selectPaket( {{ $kelompokKategoriPivot->produk }} );changeTab('vert-tabs-free')"
|
||||
class="card card-warning card-outline btn">
|
||||
<div class="card-header">
|
||||
|
@ -224,7 +224,7 @@
|
|||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
@if ($kelompokKategoriPivot->produk->urutan == 5)
|
||||
<div
|
||||
class="col-xl-4 col-lg-6 col-md-4 col-sm-4">
|
||||
class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
|
||||
<div onclick="selectPaket( {{ $kelompokKategoriPivot->produk }} )"
|
||||
class="card card-warning card-outline btn">
|
||||
<div class="card-header">
|
||||
|
@ -255,8 +255,7 @@
|
|||
@else
|
||||
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
|
||||
{{-- Jika paket irit --}}
|
||||
@switch($kelompokKategoriPivot->kelompok_kategori_id)
|
||||
@case(9)
|
||||
@if ($kelompokKategoriPivot->kelompok_kategori_id === 9)
|
||||
@if (
|
||||
$kelompokKategoriPivot->produk->tgl_start_promo <= \Carbon\Carbon::now() &&
|
||||
$kelompokKategoriPivot->produk->tgl_end_promo >= \Carbon\Carbon::now())
|
||||
|
@ -344,9 +343,33 @@
|
|||
Tidak ada promo
|
||||
@endif
|
||||
@endif
|
||||
@break
|
||||
|
||||
@default
|
||||
@else
|
||||
@if ($kelompokKategoriPivot->kelompok_kategori_id == 2)
|
||||
<div class="col-xl-4 col-lg-6 col-md-6 col-sm-12">
|
||||
<div class="card card-warning card-outline btn"
|
||||
onclick="aadMenu( {{ $kelompokKategoriPivot->produk }} )">
|
||||
<div class="card-header px-0">
|
||||
<h6 class="m-0 text-sm text-bold">
|
||||
{{ $kelompokKategoriPivot->produk->nama_produk ?? '' }}
|
||||
</h6>
|
||||
</div>
|
||||
<div class="card-body px-0">
|
||||
<div class="col-md-12 px-0">
|
||||
<div class="col-md-12 text-sm d-flex py-2 rounded bg-secondary"
|
||||
style="background-color: rgb(230, 230, 230)">
|
||||
<h5 class="my-auto text-bold"
|
||||
style="align-items: center;">
|
||||
{{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }}
|
||||
</h5>
|
||||
<a class="btn btn-warning ml-auto"
|
||||
id="ordered-menus"><i
|
||||
class="fa fa-shopping-cart"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
{{-- untuk semua menu selain paket --}}
|
||||
<div class="col-xl-4 col-lg-6 col-md-6 col-sm-12">
|
||||
<div class="card card-warning card-outline btn"
|
||||
|
@ -375,7 +398,8 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endswitch
|
||||
@endif
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<div class="card bg-warning" style="min-height:5px; border-radius:1px;"></div>
|
||||
<div class="card-header mt-0 pt-0">
|
||||
<div class="d-flex">
|
||||
<h4>Daftar Menu</h4>
|
||||
<h3>Daftar Menu</h3>
|
||||
<!-- Button trigger modal -->
|
||||
<div class="ml-auto">
|
||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#modal-default">
|
||||
|
|
|
@ -60,7 +60,9 @@ Route::group(['middleware' => ['auth', 'permission']], function () {
|
|||
});
|
||||
|
||||
Route::group(['prefix' => 'menu'], function () {
|
||||
Route::get('/', [Menu::class, 'index'])->name('menu.index')->comment("Halaman Menu");
|
||||
Route::resource('menu', Menu::class);
|
||||
// Route::get('/', [Menu::class, 'index'])->name('menu.index')->comment("Halaman Menu");
|
||||
Route::get('/kelompok-kategori/{id}', [Menu::class, 'kelompokKategori'])->name('menu.kelompok-kategori')->comment("Ambil Data Kelompok Kategori");
|
||||
Route::get('/getDataMenu', [Menu::class, 'getDataMenu'])->name('menu.getDataMenu')->comment("Ambil data Menu");
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue