Files
sidata/app/Http/Controllers/Admin/MstJenisBelanjaController.php
T
2022-08-30 13:34:59 +07:00

152 lines
5.3 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Models\MstJenisBelanja;
use App\Models\MstSubJenisBelanja;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
class MstJenisBelanjaController extends Controller
{
public function __construct(){
$this->siteTitle = "Master Jenis Belanja";
parent::__construct();
}
public function index()
{
$data = null;
// $data = User::where('role_name', "<>", "superadmin")->latest()->paginate(10);
return view('admin.mst_jenis_belanja.index',compact('data'))
->with('i', (request()->input('page', 1) - 1) * 10);
}
public function create()
{
$this->setSubtitle("Tambah Data");
return view('admin.mst_jenis_belanja.create');
}
// public function create_sub(MstJenisBelanja $MstJenisBelanja)
// {
// $this->setSubtitle("Tambah Data Sub Jenis Belanja [<strong>".$MstJenisBelanja->name."</strong>] ");
// return view('admin.mst_jenis_belanja.create_sub',compact("MstJenisBelanja"));
// }
public function store(Request $request)
{
$request->validate([
'name' => 'required',
]);
$req = $request->all();
MstJenisBelanja::where("name", $req["name"])->delete();
$data["name"] = $req["name"];
$data["description"] = $req["description"];
MstJenisBelanja::create($data);
return redirect("/admin/MstJenisBelanja")->with('success','Jenis Belanja berhasil dibuat.');
}
// public function store_sub(Request $request)
// {
// $request->validate([
// 'name' => 'required',
// 'id_jenis_belanja' => 'required'
// ]);
// $req = $request->all();
// MstSubJenisBelanja::where("name", $req["name"])->where("id_jenis_belanja", $req["id_jenis_belanja"])->delete();
// $data["id_jenis_belanja"] = $req["id_jenis_belanja"];
// $data["name"] = $req["name"];
// $data["description"] = $req["description"];
// MstSubJenisBelanja::create($data);
// return redirect("/admin/MstJenisBelanja/".$data["id_jenis_belanja"])->with('success','Sub Jenis Belanja berhasil dibuat.');
// }
public function show(MstJenisBelanja $MstJenisBelanja)
{
$SubJenisBelanja = MstSubJenisBelanja::where("id_jenis_belanja",$MstJenisBelanja->id)->get();
$this->setSubtitle("Detail Jenis Belanja");
return view('admin.mst_jenis_belanja.show',compact('MstJenisBelanja','SubJenisBelanja'));
}
public function edit(MstJenisBelanja $MstJenisBelanja)
{
$this->setSubtitle("Ubah Data");
return view('admin.mst_jenis_belanja.edit',compact('MstJenisBelanja'));
}
public function update(Request $request, MstJenisBelanja $MstJenisBelanja)
{
$request->validate([
'name' => 'required',
]);
$req = $request->all();
$data["name"] = $req["name"];
$data["description"] = $req["description"];
$MstJenisBelanja->update($req);
return redirect()->route('MstJenisBelanja.index')
->with('success','Data Jenis Belanja berhasil diubah!');
}
public function destroy(MstJenisBelanja $MstJenisBelanja)
{
MstSubJenisBelanja::where("id_jenis_belanja",$MstJenisBelanja->id)->delete();
$MstJenisBelanja->delete();
return redirect()->route('MstJenisBelanja.index')
->with('success','Data Jenis 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,NAME,DESCRIPTION");
$sqlstr = MstJenisBelanja::select($select);
$dataTotal = $sqlstr->count();
$data = $sqlstr->orderBy("ID");
if (!empty($src)){
$data->whereRaw(" ( lower(NAME) like '%$src%' OR lower(DESCRIPTION) like '%$src%' ) ");
}
$dataFilter = $data->count();
return response()->json([
"recordsTotal" => $dataTotal,
"recordsFiltered" => $dataFilter,
"data"=> $data->skip($offset)->take($limit)->get()
]);
}
// public function datatableSubJenisBelanja(Request $request, $id)
// {
// $post = $request->all();
// $offset = $post["start"];
// $limit = $post["length"];
// $src = isset($post["search"]["value"]) ? strtolower($post["search"]["value"]):"";
// $select = DB::raw("ID,NAME,DESCRIPTION");
// $sqlstr = MstSubJenisBelanja::select($select)->where("id_jenis_belanja", $id);
// $dataTotal = $sqlstr->count();
// $data = $sqlstr->orderBy("ID");
// if (!empty($src)){
// $data->whereRaw(" ( lower(NAME) like '%$src%' OR lower(DESCRIPTION) like '%$src%' ) ");
// }
// $dataFilter = $data->count();
// return response()->json([
// "recordsTotal" => $dataTotal,
// "recordsFiltered" => $dataFilter,
// "data"=> $data->skip($offset)->take($limit)->get()
// ]);
// }
}