Merge branch 'main-gitea-akuncoa' of https://git.indoserv.net/wewmantap/resto-dhepot into mico
commit
9cac2a6be3
|
@ -0,0 +1,74 @@
|
|||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class CreateAtasCommand extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'app:generate-atas';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Command description';
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
|
||||
|
||||
$this->info('Migration started..');
|
||||
|
||||
$migrate = Artisan::call('migrate');
|
||||
|
||||
$this->info('Migrate successfully.');
|
||||
|
||||
$this->info('Truncate started..');
|
||||
// Nonaktifkan constraint
|
||||
DB::statement('SET FOREIGN_KEY_CHECKS=0;');
|
||||
|
||||
$this->info('Foreign key check disabled.');
|
||||
|
||||
DB::statement('TRUNCATE table roles');
|
||||
$this->info('Truncate roles successfully.');
|
||||
DB::statement('TRUNCATE table model_has_roles');
|
||||
$this->info('Truncate model_has_roles successfully.');
|
||||
DB::statement('TRUNCATE table model_has_permissions');
|
||||
$this->info('Truncate model_has_permissions successfully.');
|
||||
DB::statement('TRUNCATE table permissions');
|
||||
$this->info('Truncate permissions successfully.');
|
||||
DB::statement('TRUNCATE table role_has_permissions');
|
||||
$this->info('Truncate role_has_permissions successfully.');
|
||||
// Aktifkan kembali constraint
|
||||
DB::statement('SET FOREIGN_KEY_CHECKS=1;');
|
||||
$this->info('Foreign key check enabled.');
|
||||
$this->info('Truncate successfully.');
|
||||
|
||||
$this->info('Permission started..');
|
||||
Artisan::call('route:clear');
|
||||
$this->info('Route cache cleared successfully.');
|
||||
Artisan::call('permission:cache-reset');
|
||||
$this->info('Permission cache reset successfully.');
|
||||
Artisan::call('permission:create-permission-routes');
|
||||
$this->info('Permission successfully.');
|
||||
|
||||
$this->info('Seeder started..');
|
||||
Artisan::call('db:seed', [
|
||||
'--class' => 'GenerateAtasSeeder',
|
||||
'--force' => true
|
||||
]);
|
||||
$this->info('Seeder successfully.');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
|
||||
class CreateFreshCommand extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'app:generate-fresh';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Command description';
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$this->info('Migration started..');
|
||||
|
||||
$migrate = Artisan::call('migrate:fresh --seed');
|
||||
|
||||
$this->info('Migrate successfully.');
|
||||
|
||||
$this->info('Permission started..');
|
||||
Artisan::call('permission:create-permission-routes');
|
||||
$this->info('Permission successfully.');
|
||||
|
||||
$this->info('Seeder started..');
|
||||
Artisan::call('db:seed', [
|
||||
'--class' => 'GenerateFreshSeeder',
|
||||
'--force' => true
|
||||
]);
|
||||
$this->info('Seeder successfully.');
|
||||
}
|
||||
}
|
|
@ -42,10 +42,11 @@ class CreateRoutePermissionCommand extends Command
|
|||
}
|
||||
if (is_null($permission)) {
|
||||
permission::create(['name' => $data, 'group_name' => $first_group, 'desc' => $comment]);
|
||||
$this->info('Permission routes ' . $route->getName() . ' added successfully.');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$this->info('Permission routes added successfully.');
|
||||
$this->info('All Permission routes added successfully.');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,14 +25,14 @@ class RedirectIfAuthenticated
|
|||
$role = Auth::user()->role;
|
||||
switch ($role[0]->name) {
|
||||
case 'Admin':
|
||||
return '/dashboard';
|
||||
return redirect('/dashboard');
|
||||
break;
|
||||
case 'Kasir':
|
||||
return '/transaksi';
|
||||
return redirect('/transaksi');
|
||||
break;
|
||||
|
||||
default:
|
||||
return '/transaksi';
|
||||
return redirect('/transaksi');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||
use Illuminate\Database\Seeder;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class GenerateAtasSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
$classes = [
|
||||
RoleSeeder::class,
|
||||
];
|
||||
foreach ($classes as $class) $this->call($class);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||
use Illuminate\Database\Seeder;
|
||||
|
||||
class GenerateFreshSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
$classes = [
|
||||
UserSeeder::class,
|
||||
KasirSeeder::class,
|
||||
];
|
||||
foreach ($classes as $class) $this->call($class);
|
||||
}
|
||||
}
|
|
@ -13,10 +13,8 @@ class PermissionSeeder extends Seeder
|
|||
public function run(): void
|
||||
{
|
||||
$classes = [
|
||||
UserSeeder::class,
|
||||
KasirSeeder::class,
|
||||
// AddRoles::class,
|
||||
// RoleSeeder::class,
|
||||
GenerateAtasSeeder::class,
|
||||
// GenerateFreshSeeder::class,
|
||||
];
|
||||
foreach ($classes as $class) $this->call($class);
|
||||
}
|
||||
|
|
|
@ -17,6 +17,7 @@ class RoleSeeder extends Seeder
|
|||
*/
|
||||
public function run(): void
|
||||
{
|
||||
// admin
|
||||
$role = Role::create(['name' => 'Admin']);
|
||||
|
||||
$permissions = Permission::pluck('id', 'id')->all();
|
||||
|
@ -27,6 +28,7 @@ class RoleSeeder extends Seeder
|
|||
|
||||
$user->assignRole([$role->id]);
|
||||
|
||||
// kasir
|
||||
$role = Role::create(['name' => 'Kasir']);
|
||||
|
||||
$permissions = Permission::pluck('id', 'id')->all();
|
||||
|
|
|
@ -190,7 +190,7 @@
|
|||
<br>
|
||||
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan.." value='${paketFreenyaini}'>
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-3" placeholder="Keterangan.." value='${paketFreenyaini}'>
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
|
@ -201,7 +201,7 @@
|
|||
<br>
|
||||
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan..">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-3" placeholder="Keterangan..">
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
|
@ -213,7 +213,7 @@
|
|||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat tai" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
|
||||
</span>
|
||||
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${qty}">
|
||||
<input type="text" name="bayar" class="form-control rounded-3" readonly value="${qty}">
|
||||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
|
||||
</span>
|
||||
|
@ -223,7 +223,7 @@
|
|||
table.rows[index].cells[2].innerHTML = `
|
||||
<td class="text-center">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="${diskonSatuan}" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-3" value="${diskonSatuan}" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
|
@ -252,7 +252,7 @@
|
|||
<br>
|
||||
<small class="text-primary">Rp. ${params.harga_produk}</small>
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" class="form-control rounded-0" data-keterangan="${paketFreenyaini}" placeholder="Keterangan.." value="${paketFreenyaini}">
|
||||
<input type="text" name="keterangan_satuan" class="form-control rounded-3" data-keterangan="${paketFreenyaini}" placeholder="Keterangan.." value="${paketFreenyaini}">
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
|
@ -260,7 +260,7 @@
|
|||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
|
||||
</span>
|
||||
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}">
|
||||
<input type="text" name="bayar" class="form-control rounded-3" readonly value="${menuQty}">
|
||||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
|
||||
</span>
|
||||
|
@ -268,7 +268,7 @@
|
|||
</td>
|
||||
<td class="text-center">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-3" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
|
@ -286,7 +286,7 @@
|
|||
<br>
|
||||
<small class="text-primary">Rp. ${params.harga_produk}</small>
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan..">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-3" placeholder="Keterangan..">
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
|
@ -294,7 +294,7 @@
|
|||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
|
||||
</span>
|
||||
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}">
|
||||
<input type="text" name="bayar" class="form-control rounded-3" readonly value="${menuQty}">
|
||||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
|
||||
</span>
|
||||
|
@ -302,7 +302,7 @@
|
|||
</td>
|
||||
<td class="text-center">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-3" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
|
@ -399,9 +399,10 @@
|
|||
<br>
|
||||
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-3" placeholder="Keterangan..">
|
||||
</div>
|
||||
</td>`;
|
||||
</td>
|
||||
`;
|
||||
|
||||
table.rows[index].cells[1].innerHTML = `
|
||||
<td class="text-center">
|
||||
|
@ -409,7 +410,7 @@
|
|||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${params}, '${nama_produk}')"><b>-</b></button>
|
||||
</span>
|
||||
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${qty}">
|
||||
<input type="text" name="bayar" class="form-control rounded-3" readonly value="${qty}">
|
||||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params}, '${nama_produk}')">+</button>
|
||||
</span>
|
||||
|
@ -455,7 +456,7 @@
|
|||
<br>
|
||||
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-3" placeholder="Keterangan..">
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
|
@ -466,7 +467,7 @@
|
|||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${params}, '${nama_produk}')"><b>-</b></button>
|
||||
</span>
|
||||
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${qty}">
|
||||
<input type="text" name="bayar" class="form-control rounded-3" readonly value="${qty}">
|
||||
<span class="input-group-append">
|
||||
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params}, '${nama_produk}')">+</button>
|
||||
</span>
|
||||
|
@ -515,7 +516,7 @@
|
|||
<br>
|
||||
${(diskonSatuan >= 1) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
|
||||
<div class="input-group input-group-sm mt-1">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
|
||||
<input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-3" placeholder="Keterangan..">
|
||||
</div>
|
||||
</td>
|
||||
`;
|
||||
|
@ -543,6 +544,7 @@
|
|||
dengan_rupiah.value = formatRupiah(this.value, 'Rp. ');
|
||||
});
|
||||
|
||||
|
||||
/* Fungsi */
|
||||
function formatRupiah(angka, prefix) {
|
||||
var number_string = angka.replace(/[^,\d]/g, '').toString(),
|
||||
|
@ -598,6 +600,21 @@
|
|||
})
|
||||
})
|
||||
|
||||
// bayar uang pas
|
||||
$(document).ready(function() {
|
||||
$('#bayar_uang_pas').on('click', function() {
|
||||
// Mengambil teks dari elemen dengan menggunakan innerText
|
||||
let grandTotalText = document.getElementById('total-diskon').innerText;
|
||||
|
||||
// Mengisi nilai ke input dengan format Rupiah
|
||||
$("#nominal-bayar").val(formatRupiah(grandTotalText, 'Rp. '));
|
||||
calculatekembali();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
// kirim pembayaran
|
||||
$(document).ready(function() {
|
||||
$('#pesan-bayar-tunai').on('click', function() {
|
||||
|
|
|
@ -387,8 +387,8 @@
|
|||
</h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<table class="table table-bordered table-striped" id="order-menus" width="100%">
|
||||
<thead style="background-color: lightgray">
|
||||
<table class="table table-bordered table-striped" id="order-menus" style="border-collapse: collapse; width: 100%; max-width: 600px; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);">
|
||||
<thead style="background-color: rgb(230, 230, 230)">
|
||||
<tr>
|
||||
<th class="text-center">Menu</th>
|
||||
<th class="text-center" width="110px">Qty</th>
|
||||
|
@ -400,7 +400,7 @@
|
|||
</thead>
|
||||
<tbody id="tbody-order-menus">
|
||||
</tbody>
|
||||
<tfoot style="background-color: lightgray">
|
||||
<tfoot style="background-color: rgb(230, 230, 230)">
|
||||
<tr>
|
||||
<th class="text-center">Total</th>
|
||||
<th colspan="3">
|
||||
|
@ -415,7 +415,7 @@
|
|||
<th class="text-center">Diskon (%)</th>
|
||||
<th colspan="3">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="number" name="diskon" class="form-control rounded-0">
|
||||
<input type="number" name="diskon" class="form-control rounded-3">
|
||||
</div>
|
||||
</th>
|
||||
</tr>
|
||||
|
@ -433,7 +433,7 @@
|
|||
<th class="text-center">Bayar</th>
|
||||
<th colspan="3">
|
||||
<div class="input-group input-group-sm">
|
||||
<input type="text" name="nominal-bayar" class="form-control rounded-0"
|
||||
<input type="text" name="nominal-bayar" class="form-control rounded-3"
|
||||
required id="nominal-bayar">
|
||||
</div>
|
||||
</th>
|
||||
|
@ -448,20 +448,25 @@
|
|||
</span>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="4" class="text-center">
|
||||
<button class="btn btn-outline-primary col-sm-12 col-md-12 col-lg-12" id="bayar_uang_pas">Uang Pas</button>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th colspan="4">
|
||||
<span class="row">
|
||||
<input type="text" name="nama-pemesan"
|
||||
class="form-control rounded-0 col-lg-6" placeholder="Nama Pemesan"
|
||||
class="form-control rounded-3 col-lg-6" placeholder="Nama Pemesan"
|
||||
id="nama-pemesan" required>
|
||||
<input type="text" name="nomor-pemesan"
|
||||
class="form-control rounded-0 col-lg-6" placeholder="Nomor Pemesan"
|
||||
class="form-control rounded-3 col-lg-6" placeholder="Nomor Pemesan"
|
||||
id="nomor-pemesan" oninput="inputNum(this)" required>
|
||||
<input type="number" min="1" name="nomor-meja"
|
||||
class="form-control rounded-0" placeholder="Nomor Meja" id="nomor-meja"
|
||||
class="form-control rounded-3 mt-1" placeholder="Nomor Meja" id="nomor-meja"
|
||||
required>
|
||||
<input type="text" name="keterangan-pesanan"
|
||||
placeholder="Keterangan Pesanan" class="form-control rounded-0"
|
||||
placeholder="Keterangan Pesanan" class="form-control rounded-3 mt-1"
|
||||
id="keterangan-pesanan">
|
||||
</span>
|
||||
</th>
|
||||
|
@ -469,7 +474,7 @@
|
|||
<tr style="background-color: white">
|
||||
<th colspan="4">
|
||||
<div class="btn-group btn-block">
|
||||
<button class="btn btn-warning btn-block col-sm-10 col-md-10 col-lg-10"
|
||||
<button class="btn btn-warning btn-block col-sm-8 col-md-8 col-lg-8"
|
||||
id="pesan-bayar-tunai">Bayar</button>
|
||||
<button type="button" class="btn btn-success" id="pesan-bayar-nontunai">
|
||||
Non Tunai
|
||||
|
|
Loading…
Reference in New Issue