diff --git a/app/Http/Controllers/Admins/Penjualan/PenjualanController.php b/app/Http/Controllers/Admins/Penjualan/PenjualanController.php index d939019..1fb2645 100644 --- a/app/Http/Controllers/Admins/Penjualan/PenjualanController.php +++ b/app/Http/Controllers/Admins/Penjualan/PenjualanController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Admins\Penjualan; use App\Http\Controllers\Controller; use App\Models\DetailPesanan; use App\Models\Pesanan; +use App\Models\RekeningCoa; use Carbon\Carbon; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; @@ -13,7 +14,9 @@ class PenjualanController extends Controller { public function index() { - return view('pages.admin.penjualan.index'); + $aba = RekeningCoa::where('kode_coa', 1)->where('sub_kode_coa', 200)->get(); + + return view('pages.admin.penjualan.index', compact('aba')); } public function getDataPenjualan(Request $request) @@ -21,18 +24,35 @@ class PenjualanController extends Controller $nomor = 1; $filter_tanggal_1 = $request->filter_tanggal_1; $filter_tanggal_2 = $request->filter_tanggal_2; - $data = Pesanan::with(['detailPesanan', 'user']) - ->when($filter_tanggal_1, function ($query) use ($filter_tanggal_1) { - return $query->whereDate('tanggal_pesanan', '>=', $filter_tanggal_1); - }) - ->when($filter_tanggal_2, function ($query) use ($filter_tanggal_2) { - return $query->whereDate('tanggal_pesanan', '<=', $filter_tanggal_2); - }) - ->when(!$filter_tanggal_1 && !$filter_tanggal_2, function ($query) { - return $query->whereDate('tanggal_pesanan', Carbon::today()); - }) - ->orderBy('tanggal_pesanan', 'desc') - ->get(); + $akun_coa = $request->akun_coa; + if ($request->akun_coa == null) { + $data = Pesanan::with(['detailPesanan', 'user', 'rekening_coa']) + ->when($filter_tanggal_1, function ($query) use ($filter_tanggal_1) { + return $query->whereDate('tanggal_pesanan', '>=', $filter_tanggal_1); + }) + ->when($filter_tanggal_2, function ($query) use ($filter_tanggal_2) { + return $query->whereDate('tanggal_pesanan', '<=', $filter_tanggal_2); + }) + ->when(!$filter_tanggal_1 && !$filter_tanggal_2, function ($query) { + return $query->whereDate('tanggal_pesanan', Carbon::today()); + }) + ->orderBy('tanggal_pesanan', 'desc') + ->get(); + } else { + $data = Pesanan::with(['detailPesanan', 'user', 'rekening_coa']) + ->where('rekening_coa_id', $akun_coa) + ->when($filter_tanggal_1, function ($query) use ($filter_tanggal_1) { + return $query->whereDate('tanggal_pesanan', '>=', $filter_tanggal_1); + }) + ->when($filter_tanggal_2, function ($query) use ($filter_tanggal_2) { + return $query->whereDate('tanggal_pesanan', '<=', $filter_tanggal_2); + }) + ->when(!$filter_tanggal_1 && !$filter_tanggal_2, function ($query) { + return $query->whereDate('tanggal_pesanan', Carbon::today()); + }) + ->orderBy('tanggal_pesanan', 'desc') + ->get(); + } return datatables() ->of($data) @@ -55,6 +75,9 @@ class PenjualanController extends Controller ->addColumn('grand_total_rp', function ($data) { return 'Rp ' . number_format($data->grand_total, 0, ',', '.'); }) + ->addColumn('jenis_pembayarannya', function ($data) { + return $data->jenis_pembayaran == 1 ? 'Tunai' : 'Non-Tunai' . ' (' . $data->rekening_coa->keterangan_coa . ')'; + }) ->addColumn('ubah', function ($data) { return '
@@ -94,13 +117,25 @@ class PenjualanController extends Controller $mpdf->AddPage(); $mpdf->setFooter('{PAGENO}'); - $data = Pesanan::with(['user', 'bukuBesar'])->whereDate('tanggal_pesanan', '>=', $request->filter_tanggal_1) - ->whereDate('tanggal_pesanan', '<=', $request->filter_tanggal_2) - ->get(); + $filter_tanggal_1 = $request->filter_tanggal_1; + $filter_tanggal_2 = $request->filter_tanggal_2; + if ($request->jenis_coa == null) { + $keterangan_coa = 'Semua'; + $data = Pesanan::with(['user', 'bukuBesar', 'rekening_coa'])->whereDate('tanggal_pesanan', '>=', $request->filter_tanggal_1) + ->whereDate('tanggal_pesanan', '<=', $request->filter_tanggal_2) + ->get(); + } else { + $keterangan_coa = RekeningCoa::find($request->jenis_coa)->keterangan_coa; + $data = Pesanan::with(['user', 'bukuBesar', 'rekening_coa'])->where('rekening_coa_id', $request->jenis_coa)->whereDate('tanggal_pesanan', '>=', $request->filter_tanggal_1) + ->whereDate('tanggal_pesanan', '<=', $request->filter_tanggal_2) + ->get(); + } + $html = view('pages.admin.penjualan.laporan', [ 'data' => $data, - 'filter_tanggal_1' => $request->filter_tanggal_1, - 'filter_tanggal_2' => $request->filter_tanggal_2, + 'filter_tanggal_1' => $filter_tanggal_1, + 'filter_tanggal_2' => $filter_tanggal_2, + 'keterangan_coa' => $keterangan_coa ]); $mpdf->writeHTML($html); diff --git a/app/Http/Controllers/Kasir/Transaksi.php b/app/Http/Controllers/Kasir/Transaksi.php index adf5400..b7b3e90 100644 --- a/app/Http/Controllers/Kasir/Transaksi.php +++ b/app/Http/Controllers/Kasir/Transaksi.php @@ -25,6 +25,8 @@ class Transaksi extends Controller { // count pesanan by date now and add 1 for next count pesanan today $lastCountPesanan = Pesanan::whereDate('created_at', date('Y-m-d'))->count() + 1; + // add 0 in front of lastCountPesanan if lastCountPesanan less than 10 + $lastCountPesanan = str_pad($lastCountPesanan, 2, '0', STR_PAD_LEFT); $orderCode = "ORD-" . date('ym') . strtoupper(random_str(3, random_str())) . date('d') . '-' . $lastCountPesanan; $KelompokKategori = KelompokKategori::with('kelompokKategoriPivot.produk')->get(); $aba = RekeningCoa::where('kode_coa', 1)->where('sub_kode_coa', 200)->get(); @@ -140,7 +142,7 @@ class Transaksi extends Controller // check antrian pesanan jika sudah ada di database maka tambahkan 1 untuk nomor antrian selanjutnya $lastCountPesanan = Pesanan::whereDate('created_at', date('Y-m-d'))->count() + 1; - $kodenya = $kodenya . $lastCountPesanan; + $kodenya = $kodenya . '-' . $lastCountPesanan; if ($request->jenis_pembayaran == "1") { $pesananDatas = [ @@ -182,6 +184,7 @@ class Transaksi extends Controller 'status_bayar' => '1', 'user_id' => $user->id, 'jenis_pembayaran' => $request->jenis_pembayaran, + 'rekening_coa_id' => $request->id_rekening_coa, ]; $pesananModels = \App\Models\Pesanan::create($pesananDatas); } @@ -223,7 +226,7 @@ class Transaksi extends Controller 'pesanans_id' => $pesananModels->id, 'kode_rekening_coa' => $request->kode_coa, 'keterangan_coa' => $request->keterangan_coa, - 'keterangan' => 'Penjualan Non Tunai[' . $request->orderCode . ']', + 'keterangan' => 'Penjualan Non Tunai[' . $kodenya . ']', 'debet' => $request->totalDiskon, 'kredit' => 0 ]); @@ -234,7 +237,7 @@ class Transaksi extends Controller 'pesanans_id' => $pesananModels->id, 'kode_rekening_coa' => "4.100.01", 'keterangan_coa' => "Pendapatan Penjualan", - 'keterangan' => 'Penjualan Non Tunai[' . $request->orderCode . ']', + 'keterangan' => 'Penjualan Non Tunai[' . $kodenya . ']', 'debet' => 0, 'kredit' => $request->totalDiskon ]); @@ -247,7 +250,7 @@ class Transaksi extends Controller 'pesanans_id' => $pesananModels->id, 'kode_rekening_coa' => "1.100.01", 'keterangan_coa' => "Kas Kasir", - 'keterangan' => 'Penjualan Tunai[' . $request->orderCode . ']', + 'keterangan' => 'Penjualan Tunai[' . $kodenya . ']', 'debet' => $request->totalDiskon, 'kredit' => 0 ]); @@ -258,7 +261,7 @@ class Transaksi extends Controller 'pesanans_id' => $pesananModels->id, 'kode_rekening_coa' => "4.100.01", 'keterangan_coa' => "Pendapatan Penjualan", - 'keterangan' => 'Penjualan Tunai[' . $request->orderCode . ']', + 'keterangan' => 'Penjualan Tunai[' . $kodenya . ']', 'debet' => 0, 'kredit' => $request->totalDiskon ]); diff --git a/app/Models/Pesanan.php b/app/Models/Pesanan.php index 372c2b7..17e5e4d 100644 --- a/app/Models/Pesanan.php +++ b/app/Models/Pesanan.php @@ -34,7 +34,7 @@ class Pesanan extends Model 'diskon_rupiah', 'user_id', 'jenis_pembayaran', - 'coa_kas', + 'rekening_coa_id', ]; public function detailPesanan() @@ -62,4 +62,9 @@ class Pesanan extends Model { return $this->hasMany(BukuBesar::class, 'pesanans_id'); } + + public function rekening_coa() + { + return $this->belongsTo(RekeningCoa::class, 'rekening_coa_id'); + } } diff --git a/database/migrations/2024_02_19_165439_change_comment_in_coa_kas_column_in_pesanans_table.php b/database/migrations/2024_02_19_165439_change_comment_in_coa_kas_column_in_pesanans_table.php new file mode 100644 index 0000000..a361be6 --- /dev/null +++ b/database/migrations/2024_02_19_165439_change_comment_in_coa_kas_column_in_pesanans_table.php @@ -0,0 +1,30 @@ +dropForeign(['coa_kas']); + $table->dropColumn('coa_kas'); + $table->foreignId('rekening_coa_id')->nullable()->after('jenis_pembayaran')->comment('relation in id coa kas')->references('id')->on('rekening_coa')->onUpdate('cascade')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('pesanans', function (Blueprint $table) { + $table->dropColumn('coa_kas'); + }); + } +}; diff --git a/resources/views/pages/Kasir/js.blade.php b/resources/views/pages/Kasir/js.blade.php index 6d11623..859d75c 100644 --- a/resources/views/pages/Kasir/js.blade.php +++ b/resources/views/pages/Kasir/js.blade.php @@ -16,57 +16,61 @@ }) + + + + + + + + +@endpush diff --git a/resources/views/pages/Kasir/transaksi.blade.php b/resources/views/pages/Kasir/transaksi.blade.php index 3b0de96..fd3beeb 100644 --- a/resources/views/pages/Kasir/transaksi.blade.php +++ b/resources/views/pages/Kasir/transaksi.blade.php @@ -581,11 +581,10 @@ -webkit-appearance: none; -moz-appearance: none; appearance: none; - background-color: cyan; + background-color: white; + margin-top: 8px; } @endpush @include('pages.Kasir.js') - -@endpush diff --git a/resources/views/pages/admin/penjualan/index.blade.php b/resources/views/pages/admin/penjualan/index.blade.php index 68fced4..30dddd6 100644 --- a/resources/views/pages/admin/penjualan/index.blade.php +++ b/resources/views/pages/admin/penjualan/index.blade.php @@ -32,14 +32,31 @@ @csrf
-

s/d

-
+
+ +
Filter data @@ -63,7 +80,7 @@ No Kode Pesanan Pemesan - Nomor Meja + Status Pembayaran Tanggal & Jam Total Pesanan Sub Total diff --git a/resources/views/pages/admin/penjualan/js.blade.php b/resources/views/pages/admin/penjualan/js.blade.php index f2c3ac3..f922141 100644 --- a/resources/views/pages/admin/penjualan/js.blade.php +++ b/resources/views/pages/admin/penjualan/js.blade.php @@ -1,7 +1,10 @@ @push('scripts') + +