121 lines
4.5 KiB
PHP
121 lines
4.5 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admins\Pengeluaran;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\BukuBesar;
|
|
use App\Models\Pengeluaran;
|
|
use App\Models\RekeningCoa;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class PengeluaranController extends Controller
|
|
{
|
|
/**
|
|
* Display a listing of the resource.
|
|
*/
|
|
public function index(){
|
|
$coaBiaya = RekeningCoa::where('kode_coa', 5)->get();
|
|
$rekeningCoaTf = RekeningCoa::where('kode_coa', 1)->where('sub_kode_coa', 200)->get();
|
|
|
|
return view('pages.admin.pengeluaran.index', compact('coaBiaya', 'rekeningCoaTf'));
|
|
}
|
|
|
|
public function simpan(Request $request){
|
|
try {
|
|
DB::beginTransaction();
|
|
|
|
$user = request()->user();
|
|
|
|
Pengeluaran::create([
|
|
'faktur' => "PG-".date('YmdHis'),
|
|
'tanggal' => $request->tanggal,
|
|
'jenis_transaksi' => $request->jenis_transaksi,
|
|
'nominal' => $request->nominal,
|
|
'keterangan' => $request->keterangan,
|
|
'user_id' => $user->id
|
|
]);
|
|
if ($request->jenis_transaksi == "1") {
|
|
BukuBesar::create([
|
|
'faktur' => "PG-".date('YmdHis'),
|
|
'tanggal' => $request->tanggal,
|
|
'rekening_coa_id' => "2",
|
|
'kode_rekening_coa' => "1.100.01",
|
|
'keterangan_coa' => "Kas Kasir",
|
|
'keterangan' => $request->keterangan,
|
|
'debet' => 0,
|
|
'kredit' => $request->nominal
|
|
]);
|
|
BukuBesar::create([
|
|
'faktur' => "PG-".date('YmdHis'),
|
|
'tanggal' => $request->tanggal,
|
|
'rekening_coa_id' => $request->id_rekening_coa,
|
|
'kode_rekening_coa' => $request->kode_coa,
|
|
'keterangan_coa' => $request->keterangan_coa,
|
|
'keterangan' => $request->keterangan,
|
|
'debet' => $request->nominal,
|
|
'kredit' => 0,
|
|
]);
|
|
}else{
|
|
BukuBesar::create([
|
|
'faktur' => "PG-".date('YmdHis'),
|
|
'tanggal' => $request->tanggal,
|
|
'rekening_coa_id' => $request->id_rekening_coa_transfer,
|
|
'kode_rekening_coa' => $request->kode_coa_transfer,
|
|
'keterangan_coa' => $request->keterangan_coa_transfer,
|
|
'keterangan' => $request->keterangan,
|
|
'debet' => 0,
|
|
'kredit' => $request->nominal
|
|
]);
|
|
BukuBesar::create([
|
|
'faktur' => "PG-".date('YmdHis'),
|
|
'tanggal' => $request->tanggal,
|
|
'rekening_coa_id' => $request->id_rekening_coa,
|
|
'kode_rekening_coa' => $request->kode_coa,
|
|
'keterangan_coa' => $request->keterangan_coa,
|
|
'keterangan' => $request->keterangan,
|
|
'debet' => $request->nominal,
|
|
'kredit' => 0,
|
|
]);
|
|
}
|
|
|
|
DB::commit();
|
|
|
|
return response()->json(['status' => true, 'message' => 'Data berhasil tersimpan']);
|
|
} catch (\Throwable $th) {
|
|
DB::rollBack();
|
|
|
|
dd($th->getMessage());
|
|
return response()->json(['status' => false, 'message' => 'Kesalahan menyimpan data']);
|
|
}
|
|
}
|
|
|
|
public function laporan(Request $request){
|
|
$mpdf = new \Mpdf\Mpdf([
|
|
'mode' => 'utf-8',
|
|
'format' => 'A4',
|
|
'orientation' => 'portrait',
|
|
'margin_left' => 15,
|
|
'margin_right' => 15,
|
|
'margin_top' => 10,
|
|
'margin_bottom' => 10,
|
|
'default_font_size' => 9,
|
|
'default_font' => 'arial',
|
|
]);
|
|
$mpdf->AddPage();
|
|
$mpdf->setFooter('{PAGENO}');
|
|
|
|
$data = Pengeluaran::with('user')->whereDate('tanggal', '>=', $request->filter_tanggal_1)
|
|
->whereDate('tanggal', '<=', $request->filter_tanggal_2)
|
|
->get();
|
|
$html = view('pages.admin.pengeluaran.laporan', [
|
|
'data' => $data,
|
|
'filter_tanggal_1' => $request->filter_tanggal_1,
|
|
'filter_tanggal_2' => $request->filter_tanggal_2,
|
|
]);
|
|
$mpdf->writeHTML($html);
|
|
$mpdf->Output('Laporan_Pengeluaran.pdf', 'I');
|
|
return response()->header('Content-Type', 'application/pdf');
|
|
}
|
|
}
|