Merge branch 'main-gitea-akuncoa' of https://git.indoserv.net/wewmantap/resto-dhepot into mico

main-gitea-akuncoa
mikhailkusuma 2024-01-26 20:04:22 +07:00
commit 9cac2a6be3
10 changed files with 226 additions and 40 deletions

View File

@ -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.');
}
}

View File

@ -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.');
}
}

View File

@ -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.');
}
}

View File

@ -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;
}
}

View File

@ -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);
}
}

View File

@ -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);
}
}

View File

@ -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);
}

View File

@ -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();

View File

@ -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() {

View File

@ -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