Melakukan penambahan menu
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Models\SisaSalurDana;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Contracts\Session\Session;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\File;
|
||||
use Illuminate\Support\Facades\URL;
|
||||
|
||||
class SisaSalurDanaController extends Controller
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
$this->siteTitle = "Sisa Salur Dana";
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$data = null;
|
||||
return view('admin.sisa_salur_dana.index',compact('data'))
|
||||
->with('i', (request()->input('page', 1) - 1) * 10);
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
$this->setSubtitle("Tambah Data");
|
||||
return view('admin.sisa_salur_dana.create');
|
||||
}
|
||||
|
||||
|
||||
public function show(SisaSalurDana $SisaSalurDana)
|
||||
{
|
||||
SisaSalurDana::where("id",$SisaSalurDana->id)->get();
|
||||
$this->setSubtitle("Detail Jenis Belanja");
|
||||
return view('admin.sisa_salur_dana.show',compact('SisaSalurDana'));
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'tahun' => 'required',
|
||||
'kode_rekening' => 'required',
|
||||
'jumlah' => 'required',
|
||||
]);
|
||||
$req = $request->all();
|
||||
$this->validate($request, [
|
||||
'file' => 'required|mimes:pdf,xlsx,xls,png,gif,jpg,jpeg',
|
||||
]);
|
||||
$data["tahun"] = $req["tahun"];
|
||||
$data["kode_rekening"] = $req["kode_rekening"];
|
||||
$data["jumlah"] = replaceMoney($req["jumlah"]);
|
||||
$file = $request->file('file');
|
||||
if ($file){
|
||||
$ext = $file->getClientOriginalExtension();
|
||||
$NewFileName = $data["tahun"].$data["kode_rekening"].".".$ext;
|
||||
$tujuan_upload = 'uploadFiles/sisa_salur_dana';
|
||||
File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
|
||||
$file->move($tujuan_upload, $NewFileName);
|
||||
$data["dokumen"] = $NewFileName;
|
||||
}
|
||||
if ($request->isMethod('post')){
|
||||
$SisaSalurDana = SisaSalurDana::where("tahun",getTA())->where("kode_rekening",$req["kode_rekening"])->first();
|
||||
if ($SisaSalurDana){
|
||||
return redirect(URL::to("/admin/SisaSalurDana/"))->with('error','Data Sisa Salur Dana gagal diTambah! No Rekening : '.$req["kode_rekening"].' sudah ada!');
|
||||
}
|
||||
else{
|
||||
//var_dump($data); exit;
|
||||
$SisaSalurDana = SisaSalurDana::create($data);
|
||||
return redirect(URL::to("/admin/SisaSalurDana/".$SisaSalurDana->id))->with('success','Data Tagihan Berhasil Ditambah');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function edit(SisaSalurDana $SisaSalurDana)
|
||||
{
|
||||
$this->setSubtitle("Ubah Data");
|
||||
return view('admin.sisa_salur_dana.edit',compact('SisaSalurDana'));
|
||||
}
|
||||
|
||||
public function download($id)
|
||||
{
|
||||
$SisaSalurDana = SisaSalurDana::where("id",$id)->first();
|
||||
$headers = [
|
||||
'Content-Disposition' => 'attachment;filename='.$SisaSalurDana->dokumen
|
||||
];
|
||||
$path = config('constants.upload_path').getTA()."/".$SisaSalurDana->dokumen;
|
||||
|
||||
return response()->file($path, $headers);
|
||||
}
|
||||
|
||||
public function update(Request $request, SisaSalurDana $SisaSalurDana )
|
||||
{
|
||||
$request->validate([
|
||||
'tahun' => 'required',
|
||||
'kode_rekening' => 'required',
|
||||
'jumlah' => 'required',
|
||||
]);
|
||||
|
||||
$req = $request->all();
|
||||
$data["tahun"] = $req["tahun"];
|
||||
$data["kode_rekening"] = $req["kode_rekening"];
|
||||
$data["jumlah"] = replaceMoney($req["jumlah"]);
|
||||
|
||||
$file = $request->file('file');
|
||||
if ($file){
|
||||
$ext = $file->getClientOriginalExtension();
|
||||
$NewFileName = $data["tahun"].$data["kode_rekening"].".".$ext;
|
||||
$tujuan_upload = 'uploadFiles/sisa_salur_dana';
|
||||
File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
|
||||
$file->move($tujuan_upload, $NewFileName);
|
||||
$data["dokumen"] = $NewFileName;
|
||||
}
|
||||
$SisaSalurDana->update($req);
|
||||
|
||||
return redirect()->route('SisaSalurDana.index')
|
||||
->with('success','Data Sisa Salur Belanja berhasil diubah!');
|
||||
}
|
||||
|
||||
public function destroy(SisaSalurDana $SisaSalurDana)
|
||||
{
|
||||
SisaSalurDana::where("id",$SisaSalurDana->id)->delete();
|
||||
$SisaSalurDana->delete();
|
||||
return redirect()->route('SisaSalurDana.index')
|
||||
->with('success','Data Sisa Salur Belanja berhasil dihapus!');
|
||||
}
|
||||
|
||||
public function datatable(Request $request)
|
||||
{
|
||||
$post = $request->all();
|
||||
$offset = $post["start"];
|
||||
$limit = $post["length"];
|
||||
$src = isset($post["search"]["value"]) ? strtolower($post["search"]["value"]):"";
|
||||
$select = DB::raw("ID,TAHUN,KODE_REKENING,JUMLAH");
|
||||
$sqltr = SisaSalurDana::select($select);
|
||||
$dataTotal = $sqltr->count();
|
||||
$data = $sqltr->orderBy("ID");
|
||||
if (!empty($src)){
|
||||
$data->whereRaw(" ( lower(KODE_REKENING) like '%$src% OR lower(JUMLAH) like '%$src%') ");
|
||||
}
|
||||
$dataFilter = $data->count();
|
||||
|
||||
return response()->json([
|
||||
"recordsTotal" => $dataTotal,
|
||||
"recordsFiltered" => $dataFilter,
|
||||
"data"=> $data->skip($offset)->take($limit)->get()
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Yajra\Oci8\Eloquent\OracleEloquent as Eloquent;
|
||||
|
||||
|
||||
class SisaSalurDana extends Eloquent
|
||||
{
|
||||
use HasFactory;
|
||||
protected $connection = 'Samasa';
|
||||
protected $table = 'SAMASA.MST_SISA_SALUR';
|
||||
protected $fillable = [
|
||||
"tahun",
|
||||
"kode_rekening",
|
||||
"jumlah",
|
||||
"dokumen",
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user