diff --git a/app/Http/Controllers/KhazanahController.php b/app/Http/Controllers/KhazanahController.php index 5bc8be0..cd4c9d1 100644 --- a/app/Http/Controllers/KhazanahController.php +++ b/app/Http/Controllers/KhazanahController.php @@ -215,7 +215,11 @@ class KhazanahController extends Controller $denominasi=$denominasi[0]; } - return view('khazanah.pendahuluanserahanmain',compact('cawangan_info','listgldetail','denominasi')); + $proses = Http::withOptions(['verify' => config('app.api_verify')])->get( config('api.url_koop') .'/api/autoserahan/checkapproval',[ + 'pc_name' => $auth_user['name'] + ])->json(); + + return view('khazanah.pendahuluanserahanmain',compact('cawangan_info','listgldetail','denominasi','proses')); } @@ -4290,6 +4294,24 @@ class KhazanahController extends Controller public function AutoSerahan(Request $request) { + if(isset($request->do_delete) && $request->do_delete == true){ + $call_approval_v3 = Http::withOptions(['verify' => config('app.api_verify')]) + ->post(config('api.url_koop') . '/api/autoserahan/delete', [ + 'recno' => $request->recno, + 'version' => 'v3', + 'kodcaw' => $request->kodcaw, + 'teller' => $request->teller, + 'amaun' => $request->amaun, + ])->json(); + + return response()->json([ + 'status' => 'success', + 'message' => 'Approval process completed successfully', + 'id' => $call_approval_v3['id'], + ]); + + } + // Step 1: Call API v3 First $call_approval_v3 = Http::withOptions(['verify' => config('app.api_verify')]) ->post(config('api.url_koop') . '/api/autoserahan/create', [ @@ -4308,6 +4330,7 @@ class KhazanahController extends Controller 'txtsen20' => $request->arraysend['ambilansen20'], 'txtsen50' => $request->arraysend['ambilansen50'], 'jenis' => 'pendahuluan', + 'action' => 'create', 'version' => 'v3', ])->json(); @@ -4342,8 +4365,16 @@ class KhazanahController extends Controller 'version' => 'v2', ])->json(); + $call_set_approval_v3 = Http::withOptions(['verify' => config('app.api_verify')]) + ->put(config('api.url_koop') . '/api/autoserahan/setapproval', [ + 'jenis' => 'create', + 'id' => $call_approval_v3['id'], + 'deno_id' => $call_approval_v2['denoid'] + ])->json(); + + // Step 3: Check if both API v3 and API v2 were successful - if ($call_approval_v2['status'] === 'success' && $call_approval_v3['status'] === 'success') { + if ($call_approval_v2['status'] === 'success' && $call_approval_v3['status'] === 'success' && $call_set_approval_v3['status'] === 'success') { return response()->json([ 'status' => 'success', 'message' => 'Approval process completed successfully', diff --git a/resources/views/khazanah/pendahuluanserahanmain.blade.php b/resources/views/khazanah/pendahuluanserahanmain.blade.php index c579a82..0d74464 100644 --- a/resources/views/khazanah/pendahuluanserahanmain.blade.php +++ b/resources/views/khazanah/pendahuluanserahanmain.blade.php @@ -5,6 +5,23 @@ @include('modal.pendahuluanserahan') @include('modal.denominasimodalpendahuluanserahan') +@if(count($proses) > 0) + +@endif
@@ -51,7 +68,7 @@ {{ $gldetail['descpt'] }} {{ ($gldetail['pendahuluan'] == 0 && ($gldetail['ktacct'] == '7000/102' || $gldetail['ktacct'] == '7000/106')) ? number_format($gldetail['amaun'],2) : number_format($gldetail['pendahuluan'],2) }} {{ ($gldetail['serahan'] == 0 && ($gldetail['dtacct'] == '1000/026' || $gldetail['dtacct'] == '1000/020' || $gldetail['dtacct'] == '1000/090')) ? number_format($gldetail['amaun'],2) : number_format($gldetail['serahan'],2) }} - @if($date === $gldetail['tarikh'] && !fnmatch('SERAHAN BAYAR ONLINE*',$gldetail['descpt'])) @else @endif + @if($date === $gldetail['tarikh'] && !fnmatch('SERAHAN BAYAR ONLINE*',$gldetail['descpt'])) @else @endif @endforeach @@ -215,7 +232,8 @@ $('#jenisserahan').val('auto'); $('input[name="radwang"][value="pendahuluan"]').prop('disabled', true); $('input[name="radwang"][value="serahan"]').prop('checked', true); - $('#keterangan').val('Auto Serahan Kepada V3'); + $('#keterangan').val('Serahan Kepada V3'); + $('#keterangan').attr('readonly', true); $('#dtacct').val('1000/010'); $('#ktacct').val('1000/020'); $('input[name="denominasi"]').attr('style','display: block'); @@ -240,6 +258,7 @@ $('#ktacct').val(''); $('#keterangan').val(''); $('#amaun').val(''); + $('#keterangan').attr('readonly', false); $('input[name="radwang"]').prop('checked', false); } @@ -450,13 +469,14 @@ function sendRequest(arraysend,jenisserahan){ if(jenisserahan == 'biasa'){ + console.log(arraysend); $.ajax({ method: 'post', url: '{{ route("khazanah.pendahuluanserahanHQ") }}', data: { "_token": "{{ csrf_token() }}", 'amaun': arraysend['amaun'], - 'jenisgldetail': arraysend['jenis'], + 'jenisgldetail': arraysend['jenisgldetail'], 'keterangan': arraysend['keterangan'], 'kodcaw': arraysend['kodcaw'], 'teller': arraysend['teller'], @@ -515,9 +535,11 @@ }, success:function(e){ approvalid = e.id; - Swal.update({ - text: 'Menunggu Pengesahan Daripada Operasi!', - }); + if(e.status == 'success'){ + Swal.update({ + text: 'Menunggu Pengesahan Daripada Operasi!', + }); + } } }); @@ -562,5 +584,84 @@ } + function deleteautoserahan(e){ + let recno = $(e).data('recno'); + let pend = $(e).data('pend'); + let ser = $(e).data('ser'); + + let SwalPengesahan = Swal.fire({ + title: 'Tunggu Pengesahan Daripada Operasi.', + icon: 'info', + width: 600, + padding: '3em', + background: '#fffff', + showCancelButton: false, + showConfirmButton: false, + allowOutsideClick: false, + allowEscapeKey: false, + allowEnterKey: false, + }); + + let approvalid = ''; + $.ajax({ + method: 'post', + url: '{{ route("khazanah.autoserahan") }}', + data: { + "_token": "{{ csrf_token() }}", + 'do_delete': true, + 'recno' : recno, + 'kodcaw' : kodcaw, + 'teller' : teller, + 'amaun' : (pend > 0 ) ? pend : ser + }, + success:function(e){ + approvalid = e.id; + if(e.status == 'success'){ + Swal.update({ + text: 'Menunggu Pengesahan Daripada Operasi!', + }); + } + } + }); + + var pusher = new Pusher("{{ env('PUSHER_APP_KEY') }}", { + cluster: 'ap1', + encrypted: true + }); + + var channel = pusher.subscribe('autoserahan-notice'); + channel.bind('autoserahan-event', function(data) { + console.log(data); + if(data.pengesahan === 'Lulus' && data.id == approvalid && data.cawangan == kodcaw && data.kodlaluan == teller) + { + Swal.fire({ + icon: 'success', + title: 'Auto Serahan Berjaya', + text: 'Operasi berjaya meluluskan Auto Serahan!' + }).then(function(){ + location.reload(); + }); + }else if(data.pengesahan == 'Batal' && data.id == approvalid && data.cawangan == kodcaw && data.kodlaluan == teller){ + Swal.fire({ + icon: 'error', + title: 'Auto Serahan Dibatalkan', + text: 'Operasi membatalkan Auto Serahan!' + }).then(function(){ + location.reload(); + }); + }else{ + Swal.fire({ + icon: 'error', + title: 'Auto Serahan Mengalami Ralat', + text: 'Auto Serahan tidak berjaya!' + }).then(function(){ + location.reload(); + }); + } + + + }); + } + @endsection