<?php
namespace App\Http\Controllers;
use App\Helpers\helpers;
use App\Models\Ekuitas;
use App\Models\Kas;
use App\Models\Rekening;
use App\Models\Role;
use App\Models\SubKegiatan;
use App\Models\Transaksi;
use Barryvdh\DomPDF\Facade\Pdf;
use Illuminate\Http\Request;
class LaporanController extends Controller
{
public function subkegiatan($id) {
$sub_kegiatan = SubKegiatan::where('rekening_id',$id)->get();
return response()->json([
'sub_kegiatan' => $sub_kegiatan,
]);
}
public function Kas(Request $request) {
if(!helpers::hakAkses('Laporan','view rincian Kas')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request->get('rekening') || $request->get('first') || $request->get('last')) {
$data['transaksi'] = Transaksi::orderBy('created_at', 'DESC')->where('uang_muka', 'false');
// if($request->get('rekening')) {
// $data['transaksi'] = $data['transaksi']->where('rekening_id',$request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// if($request->get('subkegiatan')) {
// $data['transaksi'] = $data['transaksi']->where('sub_kegiatan_id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['transaksi'] = $data['transaksi']->whereBetween('tanggal', [$first, $last]);
}
$data['transaksi'] = $data['transaksi']->paginate();
// dd($data['transaksi']);
}
$data['title'] = 'Laporan Rincian Kas';
return view('laporan.rincian_kas.index', $data);
}
public function CetakKas(Request $request) {
if(!helpers::hakAkses('Laporan','print rincian Kas')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request->get('rekening') || $request->get('first') || $request->get('last')) {
$data['transaksi'] = Transaksi::orderBy('created_at', 'DESC')->where('uang_muka', 'false');
// if($request->get('rekening')) {
// $data['transaksi'] = $data['transaksi']->where('rekening_id',$request->get('rekening'));
// $data['kegiatan'] = Rekening::find($request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// if($request->get('subkegiatan')) {
// $data['sub_kegiatan'] = SubKegiatan::find($request->get('subkegiatan'));
// $data['transaksi'] = $data['transaksi']->where('sub_kegiatan_id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['transaksi'] = $data['transaksi']->whereBetween('tanggal', [$first, $last]);
}
$data['transaksi'] = $data['transaksi']->paginate();
}
// $data['title'] = 'Cetak Rincian Bank';
// return view('laporan.rincian_bank.cetak', $data);
$pdf = Pdf::loadview('laporan.rincian_kas.cetak', $data);
return $pdf->stream("dompdf_out.pdf", array("Attachment" => false));
}
public function bank(Request $request) {
if(!helpers::hakAkses('Laporan','view rincian Bank')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request->get('rekening') || $request->get('first') || $request->get('last')) {
$data['sub_kegiatan'] = SubKegiatan::orderBy('created_at', 'DESC')->whereHas('transaksi', function($transaksi) {
$transaksi->where('uang_muka','false')->orderBy('created_at', 'DESC');
});
// if($request->get('rekening')) {
// $data['sub_kegiatan'] = $data['sub_kegiatan']->where('rekening_id',$request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// if($request->get('subkegiatan')) {
// $data['sub_kegiatan'] = $data['sub_kegiatan']->where('id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['sub_kegiatan'] = $data['sub_kegiatan']->WhereHas('transaksi', function($transaksi) use($first, $last) {
$transaksi->whereBetween('tanggal', [$first, $last]);
});
}
$data['sub_kegiatan'] = $data['sub_kegiatan']->paginate();
}
$data['title'] = 'Laporan Rincian Bank';
return view('laporan.rincian_bank.index', $data);
}
public function CetakBank(Request $request) {
if(!helpers::hakAkses('Laporan','print rincian Bank')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
try {
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request->get('rekening') || $request->get('first') || $request->get('last')) {
$data['sub_kegiatan'] = SubKegiatan::orderBy('created_at', 'DESC')->whereHas('transaksi', function($transaksi) {
$transaksi->where('uang_muka','false')->orderBy('created_at', 'DESC');
});
// if($request->get('rekening')) {
// $data['sub_kegiatan'] = $data['sub_kegiatan']->where('rekening_id',$request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// $data['kegiatans'] = Rekening::find($request->get('rekening'));
// if($request->get('subkegiatan')) {
// $data['sub_kegiatans'] = SubKegiatan::find($request->get('subkegiatan'));
// $data['sub_kegiatan'] = $data['sub_kegiatan']->where('id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['sub_kegiatan'] = $data['sub_kegiatan']->WhereHas('transaksi', function($transaksi) use($first, $last) {
$transaksi->whereBetween('tanggal', [$first, $last]);
});
}
$data['sub_kegiatan'] = $data['sub_kegiatan']->get();
// dd($data['sub_kegiatan']);
}
// $data['title'] = 'Cetak Rincian Bank';
// return view('laporan.rincian_bank.cetak', $data);
$pdf = Pdf::loadview('laporan.rincian_bank.cetak', $data)->setPaper('a4', 'landscape');
return $pdf->stream("dompdf_out.pdf", array("Attachment" => false));
} catch (\Throwable $th) {
return redirect()->back()->with('gagal', 'Diisi dulu inputan tanggalnya!');
}
}
public function UangMuka(Request $request) {
if(!helpers::hakAkses('Laporan','view rincian Uang Muka')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request->get('rekening') || $request->get('first') || $request->get('last')) {
$data['transaksi'] = Transaksi::orderBy('ka_id', 'ASC')->where('ka_id', '2');
$data['JumlahAnggaranTransaksi'] = Transaksi::orderBy('ka_id', 'ASC');
// if($request->get('rekening')) {
// $data['transaksi'] = $data['transaksi']->where('rekening_id',$request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// if($request->get('subkegiatan')) {
// $data['transaksi'] = $data['transaksi']->where('sub_kegiatan_id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['transaksi'] = $data['transaksi']->whereBetween('tanggal', [$first, $last]);
$data['JumlahAnggaranTransaksi'] = $data['JumlahAnggaranTransaksi']->whereBetween('tanggal', [$first, $last]);
}
$data['transaksi'] = $data['transaksi']->get();
$data['JumlahAnggaranTransaksi'] = $data['JumlahAnggaranTransaksi']->get();
}
$data['title'] = 'Laporan Rincian Uang Muka';
return view('laporan.rincian_uang_muka.index', $data);
}
public function CetakUangMuka(Request $request) {
if(!helpers::hakAkses('Laporan','print rincian Uang Muka')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['grup_user'] = Role::get();
$data['rek'] = Rekening::orderBy('created_at', 'DESC')->get();
if($request) {
$data['transaksi'] = Transaksi::orderBy('created_at', 'DESC')->where('ka_id', '2');
$data['JumlahAnggaranTransaksi'] = Transaksi::orderBy('ka_id', 'ASC');
// $data['transaksi'] = Transaksi::orderBy('created_at', 'DESC')->where('uang_muka', 'true');
// if($request->get('rekening')) {
// $data['transaksi'] = $data['transaksi']->where('rekening_id',$request->get('rekening'));
// $data['kegiatan'] = Rekening::find($request->get('rekening'));
// $data['sub'] = SubKegiatan::where('rekening_id',$request->get('rekening'))->get();
// if($request->get('subkegiatan')) {
// $data['sub_kegiatan'] = SubKegiatan::find($request->get('subkegiatan'));
// $data['transaksi'] = $data['transaksi']->where('sub_kegiatan_id', $request->get('subkegiatan'));
// }
// }
if($request->get('first') && $request->get('last')) {
$first = $request->get('first');
$last = $request->get('last');
$data['transaksi'] = $data['transaksi']->whereBetween('tanggal', [$first, $last]);
$data['JumlahAnggaranTransaksi'] = $data['JumlahAnggaranTransaksi']->whereBetween('tanggal', [$first, $last]);
}
$data['transaksi'] = $data['transaksi']->get();
$data['JumlahAnggaranTransaksi'] = $data['JumlahAnggaranTransaksi']->get();
}
// $data['title'] = 'Cetak Rincian Bank';
// return view('laporan.rincian_bank.cetak', $data);
$pdf = Pdf::loadview('laporan.rincian_uang_muka.cetak', $data);
return $pdf->stream("dompdf_out.pdf", array("Attachment" => false));
}
public function NeracaAnggaran() {
if(!helpers::hakAkses('Laporan','view neraca anggaran')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['title'] = "Neraca Anggaran";
$data['grup_user'] = Role::get();
if(Request('first')) {
$first = date('Y', strtotime(Request('first')))."-01-01";
$last = Request('first');
// $data['transaksi'] = Transaksi::whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC')->get();
$data['kas'] = Kas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC');
})->where('aktiva', 0)->get();
$data['kas_tetap'] = Kas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC');
})->where('aktiva', 1)->get();
$data['kewajiban'] = Ekuitas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ekuitas_id','ASC');
})->where('type', 0)->get();
$data['ekuitas'] = Ekuitas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ekuitas_id','ASC');
})->where('type', 1)->get();
}
return view('laporan.neraca_anggaran.index', $data);
}
public function CetakNeracaAnggaran() {
if(!helpers::hakAkses('Laporan','print neraca anggaran')){
return redirect()->back()->with('error', 'Anda Tidak Memiliki Hak Akses Untuk Membuka Halaman Ini');
}
$data['title'] = "Neraca Anggaran";
$data['grup_user'] = Role::get();
if(Request('first')) {
$first = date('Y', strtotime(Request('first')))."-01-01";
$last = Request('first');
// $data['transaksi'] = Transaksi::whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC')->get();
$data['kas'] = Kas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC');
})->where('aktiva', 0)->get();
$data['kas_tetap'] = Kas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ka_id','ASC');
})->where('aktiva', 1)->get();
$data['kewajiban'] = Ekuitas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ekuitas_id','ASC');
})->where('type', 0)->get();
$data['ekuitas'] = Ekuitas::whereHas('transaksi', function($data) use($first, $last) {
$data->whereBetween('tanggal', [$first, $last])->orderBy('ekuitas_id','ASC');
})->where('type', 1)->get();
}
$pdf = Pdf::loadview('laporan.neraca_anggaran.cetak', $data);
return $pdf->stream("Neranca_Anggaran_".date('Y-m-d').".pdf", array("Attachment" => false));
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]