update dau rinci (realisasi belanja)
This commit is contained in:
@@ -18,10 +18,12 @@ use App\Models\MstJenisDana;
|
||||
use App\Models\MstJenisBelanja;
|
||||
use App\Models\MstSubJenisBelanja;
|
||||
use App\Models\VwRekeningPendapatan;
|
||||
use App\Models\MappingDauRinci;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
use App\Models\PendapatanRealisasiSts;
|
||||
use App\Models\AkunTamsilTpg;
|
||||
|
||||
@@ -334,9 +336,25 @@ class ItemSearchController extends Controller
|
||||
|
||||
public function dau_rinci_detail(Request $request)
|
||||
{
|
||||
$search = $request->id;
|
||||
$sk = MstDauRinci::where('id', $search)->first();
|
||||
// $search = $request->id;
|
||||
// $sk = MstDauRinci::where('id', $search)->first();
|
||||
|
||||
return response()->json($sk);
|
||||
// return response()->json($sk);
|
||||
$subJenisDana = $request->sub_jenis_dana;
|
||||
$tahun = Session::get('Tahun_Anggaran');
|
||||
$kodeSkpd = Auth::user()->kode_skpd;
|
||||
|
||||
if (!$subJenisDana || !$tahun || !$kodeSkpd) {
|
||||
return response()->json([]);
|
||||
}
|
||||
|
||||
$idDauRinciList = MappingDauRinci::where('ID_JENIS_DANA', $subJenisDana)
|
||||
->where('TAHUN', $tahun)
|
||||
->where('KODE_SKPD', $kodeSkpd)
|
||||
->pluck('ID_DAU_RINCI');
|
||||
|
||||
$outputs = MstDauRinci::whereIn('id', $idDauRinciList)->get();
|
||||
|
||||
return response()->json($outputs);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\MappingDauRinci;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class MappingDauRinciController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$items = MappingDauRinci::paginate(15);
|
||||
|
||||
return response()->json($items);
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return response()->json(['message' => 'Display form for creating resource']);
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$data = $request->validate([
|
||||
'field1' => 'required|string|max:255',
|
||||
'field2' => 'nullable|string',
|
||||
'field3' => 'nullable|numeric',
|
||||
]);
|
||||
|
||||
$item = MappingDauRinci::create($data);
|
||||
|
||||
return response()->json($item, 201);
|
||||
}
|
||||
|
||||
public function show(MappingDauRinci $mappingDauRinci)
|
||||
{
|
||||
return response()->json($mappingDauRinci);
|
||||
}
|
||||
|
||||
public function edit(MappingDauRinci $mappingDauRinci)
|
||||
{
|
||||
return response()->json($mappingDauRinci);
|
||||
}
|
||||
|
||||
public function update(Request $request, MappingDauRinci $mappingDauRinci)
|
||||
{
|
||||
$data = $request->validate([
|
||||
'field1' => 'sometimes|required|string|max:255',
|
||||
'field2' => 'nullable|string',
|
||||
'field3' => 'nullable|numeric',
|
||||
]);
|
||||
|
||||
$mappingDauRinci->update($data);
|
||||
|
||||
return response()->json($mappingDauRinci);
|
||||
}
|
||||
|
||||
public function destroy(MappingDauRinci $mappingDauRinci)
|
||||
{
|
||||
$mappingDauRinci->delete();
|
||||
|
||||
return response()->json(null, 204);
|
||||
}
|
||||
}
|
||||
@@ -430,18 +430,34 @@ class RealisasiBelanjaController extends Controller
|
||||
|
||||
$dataFilter = DB::select(DB::raw("SELECT COUNT(ID) as JML FROM VW_BELANJA_REALISASI " . $this->tableFilter($request)));
|
||||
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->count();
|
||||
$sqlStr = "SELECT * FROM VW_DPA_RSK WHERE C_ANGG_TAHUN=" . getTA();
|
||||
// $sqlStr = "SELECT * FROM VW_DPA_RSK WHERE C_ANGG_TAHUN=" . getTA();
|
||||
if (getRole() == "skpd") {
|
||||
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD='" . Auth::user()->nrk . "'")->count();
|
||||
} elseif (getRole() == "sbpk") {
|
||||
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD IN (SELECT C_OPD FROM NEWSIPKD.TROPD WHERE C_WIL_SP2DPROSES=" . Auth::user()->wilayah . ")");
|
||||
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD IN (SELECT C_OPD FROM NEWSIPKD.TROPD WHERE C_WIL_SP2DPROSES=" . Auth::user()->wilayah . ")") - count();
|
||||
}
|
||||
|
||||
$filterClause = $this->tableFilter($request);
|
||||
|
||||
$grandTotals = DB::select(DB::raw("
|
||||
SELECT
|
||||
NVL(SUM(JUMLAH_ANGGARAN),0) AS total_anggaran,
|
||||
NVL(SUM(JUMLAH_REALISASI),0) AS total_realisasi
|
||||
FROM VW_BELANJA_REALISASI
|
||||
$filterClause
|
||||
"));
|
||||
|
||||
$grandTotalAnggaran = !empty($grandTotals) ? $grandTotals[0]->total_anggaran : 0;
|
||||
$grandTotalRealisasi = !empty($grandTotals) ? $grandTotals[0]->total_realisasi : 0;
|
||||
|
||||
$data = DB::select(DB::raw(BelanjaRealisasi::tableDataReport($ta, $this->tableFilter($request), $offset, $limit)));
|
||||
|
||||
return response()->json([
|
||||
"recordsTotal" => $dataTotal,
|
||||
"recordsFiltered" => $dataFilter[0]->jml,
|
||||
"data" => $data
|
||||
"data" => $data,
|
||||
"grandTotalAnggaran" => $grandTotalAnggaran,
|
||||
"grandTotalRealisasi" => $grandTotalRealisasi
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Yajra\Oci8\Eloquent\OracleEloquent as Eloquent;
|
||||
|
||||
class MappingDauRinci extends Eloquent
|
||||
{
|
||||
use HasFactory;
|
||||
protected $connection = 'Samasa';
|
||||
protected $table = 'mapping_dau_rinci';
|
||||
protected $fillable = [
|
||||
"id_dau_rinci",
|
||||
"id_jenis_dana",
|
||||
"tahun",
|
||||
"kode_skpd"
|
||||
];
|
||||
}
|
||||
@@ -1,5 +1,9 @@
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align" for="txt_simtrad4_kotor">Kode Rekening</label>
|
||||
<select id="id_sps" name="id_sps" style="width:100%" class="form-control sps_search"></select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align" for="jenis">Jenis Dana</label>
|
||||
<select id="jenis_dana" name="jenis_dana" class="form-control form-control-sm jenis_dana" required>
|
||||
@@ -12,10 +16,6 @@
|
||||
<label class="col-form-label label-align" for="jenis">Sub Jenis Dana</label>
|
||||
<select id="sub_jenis_dana" name="sub_jenis_dana" class="form-control sub_jenis_dana" required></select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align" for="txt_simtrad4_kotor">Kode Rekening</label>
|
||||
<select id="id_sps" name="id_sps" style="width:100%" class="form-control sps_search"></select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align" for="jenis">Jenis Belanja</label>
|
||||
<select id="jenis" name="jenis" class="form-control jenis_belanja_search" required></select>
|
||||
@@ -82,7 +82,8 @@
|
||||
<label class="col-form-label label-align" for="sk">Sumber Dana Anggaran DAU </label>
|
||||
<select class="form-control form-control-sm" id="periode_anggaran" name="dau[periode_anggaran][]">
|
||||
<option value="DAU Tahun Berjalan" name="dau[periode_anggaran][]">DAU Tahun Berjalan</option>
|
||||
<option value="Sisa DAU Tahun Sebelumnya" name="dau[periode_anggaran][]">Sisa DAU Tahun Sebelumnya</option>
|
||||
<option value="Sisa DAU Tahun Sebelumnya" name="dau[periode_anggaran][]">Sisa DAU Tahun
|
||||
Sebelumnya</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -96,7 +97,8 @@
|
||||
<div class="col-2">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align">Anggaran</label>
|
||||
<input type="text" class="form-control form-control-sm number-separator-indo anggaran-dau" name="dau[anggaran][]" required>
|
||||
<input type="text" class="form-control form-control-sm number-separator-indo anggaran-dau"
|
||||
name="dau[anggaran][]" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
@@ -108,20 +110,21 @@
|
||||
<div class="col-2">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label label-align" for="sk">Unit</label>
|
||||
<input class="form-control form-control-sm dau-satuan" name="dau[unit][]" readonly required placeholder="Unit Realisasi">
|
||||
<input class="form-control form-control-sm dau-satuan" name="dau[unit][]" readonly required
|
||||
placeholder="Unit Realisasi">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button id="btnAddRinciDAU" type="button" class="btn btn-primary"><i class="fa fa-plus"></i> Tambah Rincian</button>
|
||||
</div>
|
||||
{{-- <button id="btn_save_realisasi_pendapatan" type="submit" class="btn btn-sm btn-success"><i class="fa fa-save"></i> Simpan</button> --}}
|
||||
{{-- <button id="btn_save_realisasi_pendapatan" type="submit" class="btn btn-sm btn-success"><i class="fa fa-save"></i>
|
||||
Simpan</button> --}}
|
||||
|
||||
@section('scripts')
|
||||
<script type="text/javascript">
|
||||
var cekInputKontrak = (dat) => {
|
||||
if (dat == "Fisik")
|
||||
{
|
||||
if (dat == "Fisik") {
|
||||
$("#div_jml_rencana_kontrak").show();
|
||||
$("input[name=jml_rencana_kontrak]").prop("required", true);
|
||||
} else {
|
||||
@@ -171,7 +174,8 @@
|
||||
})
|
||||
|
||||
$("#btnAddRinciDAU").on("click", () => {
|
||||
$("#div-rinci-dau").append(`
|
||||
// $("#div-rinci-dau").append(
|
||||
const rowHtml = `
|
||||
<div class="data-dau row">
|
||||
<div class="col-2">
|
||||
<div class="form-group">
|
||||
@@ -210,11 +214,21 @@
|
||||
<button type="button" class="btn btn-danger hapusRinciDau mt-3">x</button>
|
||||
</div>
|
||||
</div>
|
||||
`);
|
||||
`;
|
||||
const $newRow = $(rowHtml);
|
||||
$("#div-rinci-dau").append($newRow);
|
||||
|
||||
populateJenisOutput($newRow.find('.rinci_dau'));
|
||||
dauRinci();
|
||||
});
|
||||
|
||||
$('#sub_jenis_dana').on('change', function () {
|
||||
// Find every generated row's dropdown and update them all
|
||||
$('.rinci_dau').each(function () {
|
||||
populateJenisOutput($(this));
|
||||
});
|
||||
});
|
||||
|
||||
$(document).on("click", ".hapusRinciDau", function () {
|
||||
$(this).closest(".data-dau").remove()
|
||||
})
|
||||
@@ -239,6 +253,28 @@
|
||||
|
||||
});
|
||||
|
||||
function populateJenisOutput($targetDropdown) {
|
||||
let subJenisDana = $("#sub_jenis_dana").val();
|
||||
// let searchGroup = "DAU";
|
||||
$targetDropdown.empty().append('<option value="">Pilih Deskripsi</option>');
|
||||
|
||||
if (!subJenisDana) return;
|
||||
|
||||
$.ajax({
|
||||
url: "{{ url("/item-search-dau-rinci-detail") }}",
|
||||
headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },
|
||||
type: "json",
|
||||
method: "POST",
|
||||
data: {
|
||||
'sub_jenis_dana': subJenisDana
|
||||
},
|
||||
success: function (data) {
|
||||
data.forEach(function (item) {
|
||||
$targetDropdown.append('<option value="' + item.id + '">' + item.deskripsi + '</option>');
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var cekInputDAU = function () {
|
||||
if ($("#jenis_dana").val() == "DAU") {
|
||||
|
||||
@@ -10,16 +10,19 @@
|
||||
@section('styles')
|
||||
<!-- DataTables -->
|
||||
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-bs4/css/dataTables.bootstrap4.min.css">
|
||||
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-responsive/css/responsive.bootstrap4.min.css">
|
||||
<link rel="stylesheet"
|
||||
href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-responsive/css/responsive.bootstrap4.min.css">
|
||||
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/css/buttons.bootstrap4.min.css">
|
||||
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/css/fixedColumns.bootstrap4.min.css">
|
||||
<link rel="stylesheet"
|
||||
href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/css/fixedColumns.bootstrap4.min.css">
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="card card-secondary">
|
||||
<div class="card-header">
|
||||
<h2 class="card-title"><i class="fa fa-filter mr-2"></i> FILTER DATA
|
||||
<?= !empty($BelanjaRealisasi->f_view_sbpk) && getRole()!="skpd"?"<span class='text-success'><strong>[ Review SBPK ]</strong></span>":"" ?></h2>
|
||||
<?= !empty($BelanjaRealisasi->f_view_sbpk) && getRole() != "skpd" ? "<span class='text-success'><strong>[ Review SBPK ]</strong></span>" : "" ?>
|
||||
</h2>
|
||||
<div class="card-tools">
|
||||
{{-- @if(auth()->user()->can('Tambah SKPP')) --}}
|
||||
<button type="button" class="btn btn-tool" data-card-widget="collapse" title="Collapse">
|
||||
@@ -59,7 +62,8 @@
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label>Kode Rekening</label>
|
||||
<select id="id_sps" name="id_sps" style="width:100%" class="form-control sps_search" required></select>
|
||||
<select id="id_sps" name="id_sps" style="width:100%" class="form-control sps_search"
|
||||
required></select>
|
||||
</div>
|
||||
</div>
|
||||
<?php if (getRole() != "skpd") { ?>
|
||||
@@ -95,7 +99,9 @@
|
||||
<h2 class="card-title"><i class="fa fa-th-list mr-2"></i> {{ $sitesubTitle }}</h2>
|
||||
<div class="card-tools">
|
||||
@php if (Auth::user()->can("Input Realisasi DBH Realisasi Belanja")) { @endphp
|
||||
<a id= "btnTambah" class="modalButton btn btn-sm btn-success" size="modal-xl" title="Tambah Data Realisasi Belanja" href="{{ URL::to("/realisasi-belanja/create-from-rsk") }}"><i class='fa fa-edit'></i> Tambah Data</a>
|
||||
<a id="btnTambah" class="modalButton btn btn-sm btn-success" size="modal-xl"
|
||||
title="Tambah Data Realisasi Belanja" href="{{ URL::to("/realisasi-belanja/create-from-rsk") }}"><i
|
||||
class='fa fa-edit'></i> Tambah Data</a>
|
||||
@php } @endphp
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,6 +135,16 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody></tbody>
|
||||
<tfoot>
|
||||
<tr class="bg-light font-weight-bold">
|
||||
<td></td>
|
||||
<td colspan="5" class="text-left">TOTAL KESELURUHAN</td>
|
||||
<td id="grand-total-anggaran" class="text-right">0</td>
|
||||
<td colspan="2"></td>
|
||||
<td id="grand-total-realisasi" class="text-right">0</td>
|
||||
<td colspan="5"></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
@@ -383,6 +399,19 @@
|
||||
$(".dataTables_scrollBody").scrollTo($("#tblRealisasi .c_row_" + selectionRow));
|
||||
@php echo Auth::user()->lock_ubah_data == 1 ? "$('.btnEdit').remove();\n" : ""; @endphp
|
||||
@php echo Auth::user()->lock_hapus_data == 1 ? "$('.btnHapus').remove();\n" : ""; @endphp
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
dtTable.on('xhr', function () {
|
||||
var json = dtTable.ajax.json();
|
||||
|
||||
if (json) {
|
||||
let totalAnggaran = json.grandTotalAnggaran ?? 0;
|
||||
let totalRealisasi = json.grandTotalRealisasi ?? 0;
|
||||
|
||||
$('#grand-total-anggaran').html(separateNumberIndo(totalAnggaran));
|
||||
$('#grand-total-realisasi').html(separateNumberIndo(totalRealisasi));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -394,8 +423,7 @@
|
||||
url: $("#frmInputSPD").attr("action"),
|
||||
success: function (data) {
|
||||
$("#modal-default").modal("hide");
|
||||
if (data.success == true)
|
||||
{
|
||||
if (data.success == true) {
|
||||
dtTable.ajax.reload(null, false);
|
||||
selectionRow = $("input[name=id_rsk]").val();
|
||||
Swal.fire(data.message, '', 'success');
|
||||
|
||||
Reference in New Issue
Block a user