128 lines
4.2 KiB
PHP
128 lines
4.2 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Models\MappingDbhSkpd;
|
|
use App\Models\Sps_pendapatan;
|
|
use App\Models\AkbPendapatan;
|
|
use App\Models\VwRekeningPendapatan;
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class MappingDbhSkpdController extends Controller
|
|
{
|
|
public function __construct(){
|
|
$this->siteTitle = "Data Mapping Rekening SKPD";
|
|
parent::__construct();
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
$data = null;
|
|
// $data = User::where('role_name', "<>", "superadmin")->latest()->paginate(10);
|
|
return view('admin.mapping_dbh_skpd.index',compact('data'))
|
|
->with('i', (request()->input('page', 1) - 1) * 10);
|
|
}
|
|
|
|
public function create()
|
|
{
|
|
$this->setSubtitle("Tambah Data");
|
|
return view('admin.mapping_dbh_skpd.create');
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
$request->validate([
|
|
'id_rekening' => 'required',
|
|
// 'tahun' => 'required',
|
|
'kode_rekening' => 'required',
|
|
//'txt_id_skpd'=>'required'
|
|
]);
|
|
|
|
$req = $request->all();
|
|
MappingDbhSkpd::where("kode_rekening", $req["kode_rekening"])->delete();
|
|
if (isset($req["txt_id_skpd"])){
|
|
foreach($req["txt_id_skpd"] as $row_req)
|
|
{
|
|
$data["id_rekening"] = $req["id_rekening"];
|
|
// $data["tahun"] = $req["tahun"];
|
|
$data["kode_rekening"] = $req["kode_rekening"];
|
|
$data["kode_skpd"] = $row_req;
|
|
|
|
MappingDbhSkpd::create($data);
|
|
}
|
|
}
|
|
return redirect("/admin/MappingDbhSkpd")->with('success','Mapping Rekening DBH/DAK ke SKPD berhasil dibuat!');
|
|
}
|
|
|
|
public function show($MappingDbhSkpd)
|
|
{
|
|
$sps = VwRekeningPendapatan::where("id",$MappingDbhSkpd)->firstorNew();
|
|
$mappingSKPD = DB::select(DB::raw("SELECT x.*,y.N_OPD FROM SAMASA.MAPPING_DBH_SKPD x
|
|
LEFT JOIN NEWSIPKD.TROPD y ON x.KODE_SKPD = y.C_OPD WHERE x.id_rekening = $MappingDbhSkpd"));
|
|
// MappingDbhSkpd::where("id_sps",$MappingDbhSkpd)->get();
|
|
$this->setSubtitle("Detail Data Mapping");
|
|
return view('admin.mapping_dbh_skpd.show',compact('mappingSKPD','sps'));
|
|
}
|
|
|
|
public function edit(User $user)
|
|
{
|
|
$this->setSubtitle("Ubah Data");
|
|
return view('admin.mapping_dbh_skpd.edit',compact('user'));
|
|
}
|
|
|
|
public function update(Request $request, User $user)
|
|
{
|
|
$request->validate([
|
|
'name' => 'required',
|
|
'opt_role' => 'required'
|
|
]);
|
|
|
|
$requestAll = $request->all();
|
|
$requestAll["role_name"] = $requestAll["opt_role"];
|
|
$user->update($requestAll);
|
|
|
|
$user->roles()->detach();
|
|
// $user->removeRole($requestAll["opt_role"]);
|
|
$user->assignRole($requestAll["opt_role"]);
|
|
|
|
return redirect()->route('users.index')
|
|
->with('success','Mapping berhasil diubah!');
|
|
}
|
|
|
|
public function destroy(User $user)
|
|
{
|
|
$user->delete();
|
|
|
|
return redirect()->route('users.index')
|
|
->with('success','Mapping 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"]):"";
|
|
$srcTA = $post["srcTA"];
|
|
$select = DB::raw("ID, KODE_REKENING, NAMA_REKENING");
|
|
$sqlstr = VwRekeningPendapatan::select($select);
|
|
$sqlstr->whereRaw("TAHUN_BERLAKU<=".getTA()." AND TAHUN_BERAKHIR>=".getTA());
|
|
$dataTotal = $sqlstr->count();
|
|
$data = $sqlstr->orderBy("KODE_REKENING");
|
|
if (!empty($src)){
|
|
$data->whereRaw(" ( lower(KODE_REKENING) like '%$src%' OR lower(NAMA_REKENING) like '%$src%' ) ");
|
|
}
|
|
$dataFilter = $data->count();
|
|
|
|
return response()->json([
|
|
"recordsTotal" => $dataTotal,
|
|
"recordsFiltered" => $dataFilter,
|
|
"data"=> $data->skip($offset)->take($limit)->get()
|
|
]);
|
|
}
|
|
|
|
}
|