diff --git a/app/Events/AutoSerahan.php b/app/Events/AutoSerahan.php
new file mode 100644
index 0000000..a618636
--- /dev/null
+++ b/app/Events/AutoSerahan.php
@@ -0,0 +1,36 @@
+pengesahan = $pengesahan;
+ $this->id = $id;
+ $this->cawangan = $cawangan;
+ $this->kodlaluan = $kodlaluan;
+ }
+
+ public function broadcastOn()
+ {
+ return ['autoserahan-notice'];
+ }
+
+ public function broadcastAs()
+ {
+ return 'autoserahan-event';
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/KhazanahController.php b/app/Http/Controllers/KhazanahController.php
index 8cba09c..cd7faf8 100644
--- a/app/Http/Controllers/KhazanahController.php
+++ b/app/Http/Controllers/KhazanahController.php
@@ -13,6 +13,7 @@ use App\Events\NotifikasiKelulusan;
use App\Events\NotifikasiUbahHapus;
use App\Events\NotifikasiAGH;
use App\Events\NotifikasiPetiBesi;
+use App\Events\AutoSerahan;
use App\User;
use App\Cawangan;
@@ -215,7 +216,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'));
}
@@ -4286,4 +4291,105 @@ class KhazanahController extends Controller
$val = preg_replace('/\.(?=.*\.)/', '', $val);
return floatval($val);
}
+
+
+ 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', [
+ 'kodcaw' => $request->arraysend['kodcaw'],
+ 'teller' => $request->arraysend['teller'],
+ 'amaun' => $request->arraysend['amaun'],
+ 'txtring1' => $request->arraysend['ambilanring1'],
+ 'txtring5' => $request->arraysend['ambilanring5'],
+ 'txtring10' => $request->arraysend['ambilanring10'],
+ 'txtring20' => $request->arraysend['ambilanring20'],
+ 'txtring50' => $request->arraysend['ambilanring50'],
+ 'txtring100' => $request->arraysend['ambilanring100'],
+ 'txtsen1' => $request->arraysend['ambilansen1'],
+ 'txtsen5' => $request->arraysend['ambilansen5'],
+ 'txtsen10' => $request->arraysend['ambilansen10'],
+ 'txtsen20' => $request->arraysend['ambilansen20'],
+ 'txtsen50' => $request->arraysend['ambilansen50'],
+ 'jenis' => 'pendahuluan',
+ 'action' => 'create',
+ 'version' => 'v3',
+ ])->json();
+
+ // Check if API v3 was successful before proceeding
+ if (!isset($call_approval_v3['id']) || $call_approval_v3['status'] !== 'success') {
+ return response()->json([
+ 'status' => 'failed',
+ 'message' => 'API v3 failed. Cannot proceed to API v2.',
+ 'error' => $call_approval_v3
+ ], 400);
+ }
+
+ // Step 2: Call API v2 using response from API v3
+ $call_approval_v2 = Http::withOptions(['verify' => config('app.api_verify')])
+ ->post(config('api.url_pkb') . '/api/autoserahan/create', [
+ 'id' => $call_approval_v3['id'], // Use ID from API v3 response
+ 'kodcaw' => $request->arraysend['kodcaw'],
+ 'teller' => $request->arraysend['teller'],
+ 'amaun' => $request->arraysend['amaun'],
+ 'txtring1' => $request->arraysend['ambilanring1'],
+ 'txtring5' => $request->arraysend['ambilanring5'],
+ 'txtring10' => $request->arraysend['ambilanring10'],
+ 'txtring20' => $request->arraysend['ambilanring20'],
+ 'txtring50' => $request->arraysend['ambilanring50'],
+ 'txtring100' => $request->arraysend['ambilanring100'],
+ 'txtsen1' => $request->arraysend['ambilansen1'],
+ 'txtsen5' => $request->arraysend['ambilansen5'],
+ 'txtsen10' => $request->arraysend['ambilansen10'],
+ 'txtsen20' => $request->arraysend['ambilansen20'],
+ 'txtsen50' => $request->arraysend['ambilansen50'],
+ 'jenis' => 'serahan',
+ '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' && $call_set_approval_v3['status'] === 'success') {
+ event(new AutoSerahan("Operasi",$call_approval_v3['id'],$request->arraysend['kodcaw'],$request->arraysend['teller']));
+
+ return response()->json([
+ 'status' => 'success',
+ 'message' => 'Approval process completed successfully',
+ 'id' => $call_approval_v3['id'],
+ ]);
+ } else {
+ return response()->json([
+ 'status' => 'failed',
+ 'message' => 'One of the approvals failed',
+ ], 400);
+ }
+ }
+
+
}
diff --git a/app/View/Components/AutoSerah.php b/app/View/Components/AutoSerah.php
new file mode 100644
index 0000000..85365bc
--- /dev/null
+++ b/app/View/Components/AutoSerah.php
@@ -0,0 +1,28 @@
+ env('API_URL')
+ 'url' => env('API_URL'),
+ 'url_koop' => env('API_URL_KOOP','http://localhost:8000'),
+ 'url_pkb' => env('API_URL_PKB','http://localhost:8000'),
];
\ No newline at end of file
diff --git a/resources/views/components/auto-serah.blade.php b/resources/views/components/auto-serah.blade.php
new file mode 100644
index 0000000..9e6537e
--- /dev/null
+++ b/resources/views/components/auto-serah.blade.php
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/views/khazanah/laporan/pendahuluanserahan.blade.php b/resources/views/khazanah/laporan/pendahuluanserahan.blade.php
index 6d874fb..351eac7 100644
--- a/resources/views/khazanah/laporan/pendahuluanserahan.blade.php
+++ b/resources/views/khazanah/laporan/pendahuluanserahan.blade.php
@@ -102,14 +102,14 @@
-
-
+
diff --git a/resources/views/khazanah/pendahuluanserahanmain.blade.php b/resources/views/khazanah/pendahuluanserahanmain.blade.php
index 8ba7064..5b0a596 100644
--- a/resources/views/khazanah/pendahuluanserahanmain.blade.php
+++ b/resources/views/khazanah/pendahuluanserahanmain.blade.php
@@ -3,8 +3,26 @@
@section('content')
@include('modal.pendahuluanserahan')
+@include('modal.autoserahan')
@include('modal.denominasimodalpendahuluanserahan')
+@if(count($proses) > 0)
+
+@endif
@@ -51,7 +69,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
@@ -61,6 +79,7 @@
+
@@ -205,25 +224,47 @@
}
$('#pendahuluanserahanModal').on('shown.bs.modal', function (e) {
+ let input = $(e.relatedTarget);
+ let inputselected = input.data('input');
+
+
+ if(inputselected == 'AutoSerahan')
+ {
+ $('#jenisserahan').val('auto');
+ $('input[name="radwang"][value="pendahuluan"]').prop('disabled', true);
+ $('input[name="radwang"][value="serahan"]').prop('checked', true);
+ $('input[name="radwang"][value="serahan"]').prop('disabled', true);
+ $('#keterangan').val('Serahan Kepada V3');
+ $('#keterangan').attr('readonly', true);
+ $('#dtacct').val('1000/010');
+ $('#ktacct').val('1000/020');
+ $('input[name="denominasi"]').attr('style','display: block');
+ $('.denominasi').attr('style','display: block');
+ }else{
+ $('#jenisserahan').val('biasa');
+ $('input[name="radwang"][value="pendahuluan"]').prop('disabled', false);
+ $('#bundle1').val('');
+ $('#totalb1').val(0.00);
+ $('#bundle5').val('');
+ $('#totalb5').val(0.00);
+ $('#bundle10').val('');
+ $('#totalb10').val(0.00);
+ $('#bundle20').val('');
+ $('#totalb20').val(0.00);
+ $('#bundle50').val('');
+ $('#totalb50').val(0.00);
+ $('#bundle100').val('');
+ $('#totalb100').val(0.00);
+ $('#amaunkiraan').val('');
+ $('#dtacct').val('');
+ $('#ktacct').val('');
+ $('#keterangan').val('');
+ $('#amaun').val('');
+ $('#keterangan').attr('readonly', false);
+ $('input[name="radwang"]').prop('checked', false);
+ }
+
- $('#bundle1').val('');
- $('#totalb1').val(0.00);
- $('#bundle5').val('');
- $('#totalb5').val(0.00);
- $('#bundle10').val('');
- $('#totalb10').val(0.00);
- $('#bundle20').val('');
- $('#totalb20').val(0.00);
- $('#bundle50').val('');
- $('#totalb50').val(0.00);
- $('#bundle100').val('');
- $('#totalb100').val(0.00);
- $('#amaunkiraan').val('');
- $('#dtacct').val('');
- $('#ktacct').val('');
- $('#keterangan').val('');
- $('#amaun').val('');
- $('input[name="radwang"]').prop('checked', false);
});
@@ -314,7 +355,7 @@
function funcbatal()
{
$('#denominasiHQModal').modal('hide');
- $('#pendahuluanserahanModal').modal('show');
+ // $('#pendahuluanserahanModal').modal('show');
$("#terima_transaksi").prop('disabled', false);
@@ -343,6 +384,7 @@
let dtacct = $('#dtacct').val();
let ktacct = $('#ktacct').val();
let auth_user = $('#auth_user').val(); //letak user
+ let jenisserahan = $('#jenisserahan').val();
// Denominasi bundle
let bundle1 = $('#bundle1').val();
@@ -372,72 +414,316 @@
});
return false;
}
+ let SwalPengesahan = '';
- Swal.fire({
- title: 'Memuatkan...',
- allowEscapeKey: false,
- allowOutsideClick: false,
- didOpen: function () {
- Swal.showLoading();
- $('#denominasiHQModal').modal('hide');
- }
- });
+ if(jenisserahan == 'biasa')
+ {
+ Swal.fire({
+ title: 'Memuatkan...',
+ allowEscapeKey: false,
+ allowOutsideClick: false,
+ didOpen: function () {
+ Swal.showLoading();
+ $('#denominasiHQModal').modal('hide');
+ }
+ });
+ }else{
+ 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,
+ didOpen: function () {
+ $('#denominasiHQModal').modal('hide');
+ }
+ });
+ }
- $.ajax({
- method: 'post',
- url: '{{ route("khazanah.pendahuluanserahanHQ") }}',
- data: {
- "_token": "{{ csrf_token() }}",
- 'amaun': amaun,
- 'jenisgldetail': jenis,
- 'keterangan': keterangan,
- 'kodcaw': kodcaw,
- 'teller': teller,
- 'dtacct': dtacct,
- 'ktacct': ktacct,
- 'auth_user': auth_user, // mskkan auth_user
- 'ambilansen1': sen1,
- 'ambilansen5': sen5,
- 'ambilansen10': sen10,
- 'ambilansen20': sen20,
- 'ambilansen50': sen50,
- 'ambilanring1': ringgit1,
- 'ambilanring5': ringgit5,
- 'ambilanring10': ringgit10,
- 'ambilanring20': ringgit20,
- 'ambilanring50': ringgit50,
- 'ambilanring100': ringgit100
- },
- success: function (data) {
- if (data == 'LULUS') {
+ let array_send = {
+ amaun: amaun,
+ jenisgldetail: jenis,
+ keterangan: keterangan,
+ kodcaw: kodcaw,
+ teller: teller,
+ dtacct: dtacct,
+ ktacct: ktacct,
+ auth_user: auth_user,
+ ambilansen1: sen1,
+ ambilansen5: sen5,
+ ambilansen10: sen10,
+ ambilansen20: sen20,
+ ambilansen50: sen50,
+ ambilanring1: ringgit1,
+ ambilanring5: ringgit5,
+ ambilanring10: ringgit10,
+ ambilanring20: ringgit20,
+ ambilanring50: ringgit50,
+ ambilanring100: ringgit100
+ };
+ this.sendRequest(array_send,jenisserahan);
+ }
+
+ 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['jenisgldetail'],
+ 'keterangan': arraysend['keterangan'],
+ 'kodcaw': arraysend['kodcaw'],
+ 'teller': arraysend['teller'],
+ 'dtacct': arraysend['dtacct'],
+ 'ktacct': arraysend['ktacct'],
+ 'auth_user': arraysend['auth_user'],
+ 'ambilansen1': arraysend['ambilansen1'],
+ 'ambilansen5': arraysend['ambilansen5'],
+ 'ambilansen10': arraysend['ambilansen10'],
+ 'ambilansen20': arraysend['ambilansen20'],
+ 'ambilansen50': arraysend['ambilansen50'],
+ 'ambilanring1': arraysend['ambilanring1'],
+ 'ambilanring5': arraysend['ambilanring5'],
+ 'ambilanring10': arraysend['ambilanring10'],
+ 'ambilanring20': arraysend['ambilanring20'],
+ 'ambilanring50': arraysend['ambilanring50'],
+ 'ambilanring100': arraysend['ambilanring100']
+ },
+ success: function (data) {
+ if (data == 'LULUS') {
+ Swal.fire({
+ icon: 'success',
+ title: 'Transaksi Berjaya',
+ allowEscapeKey: false,
+ allowOutsideClick: false
+ }).then(function () {
+ $('#denominasiHQModal').modal('hide');
+ $('#pendahuluanserahanModal').modal('hide');
+ location.reload();
+ });
+ } else if (data == 'GAGAL') {
+ Swal.fire({
+ icon: 'error',
+ title: 'Transaksi Gagal',
+ allowEscapeKey: false,
+ allowOutsideClick: false
+ }).then(function () {
+ $('#denominasiHQModal').modal('hide');
+ $('#pendahuluanserahanModal').modal('hide');
+ $("#terima_transaksi").prop('disabled', false);
+ });
+ }
+ },
+ error: function (jqXHR, textStatus, errorThrown) {
+ console.log(textStatus, errorThrown);
+ }
+ });
+ }else{
+ let approvalid = '';
+ $.ajax({
+ method: 'post',
+ url: '{{ route("khazanah.autoserahan") }}',
+ data: {
+ "_token": "{{ csrf_token() }}",
+ 'arraysend': arraysend
+ },
+ 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,approvalid,kodcaw,teller);
+ if(data.pengesahan === 'Lulus' && data.id == approvalid && data.kodlaluan == teller)
+ {
Swal.fire({
icon: 'success',
- title: 'Transaksi Berjaya',
- allowEscapeKey: false,
- allowOutsideClick: false
- }).then(function () {
- $('#denominasiHQModal').modal('hide');
- $('#pendahuluanserahanModal').modal('hide');
- location.reload();
+ title: 'Serahan V3/Auto Pendahuluan V2 Berjaya',
+ text: 'Operasi berjaya meluluskan Serahan ke V3 dan Auto Pendahuluan dari V2!'
+ }).then(function(){
+ location.reload();
});
- } else if (data == 'GAGAL') {
+ }else if(data.pengesahan == 'Batal' && data.id == approvalid && data.kodlaluan == teller){
Swal.fire({
icon: 'error',
- title: 'Transaksi Gagal',
- allowEscapeKey: false,
- allowOutsideClick: false
- }).then(function () {
- $('#denominasiHQModal').modal('hide');
- $('#pendahuluanserahanModal').modal('hide');
- $("#terima_transaksi").prop('disabled', false);
+ title: 'Serahan V3/Auto Pendahuluan V2 Dibatalkan',
+ text: 'Operasi membatalkan Serahan ke V3 dan Auto Pendahuluan dari V2!'
+ }).then(function(){
+ location.reload();
});
}
- },
- error: function (jqXHR, textStatus, errorThrown) {
- console.log(textStatus, errorThrown);
- }
- });
+
+ });
+ }
+
}
+ 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,approvalid,teller,kodcaw);
+ if(data.pengesahan === 'Lulus' && data.id == approvalid && data.kodlaluan == teller)
+ {
+ Swal.fire({
+ icon: 'success',
+ title: 'Serahan V3/Auto Pendahuluan V2 Berjaya',
+ text: 'Operasi berjaya meluluskan Serahan ke V3 dan Auto Pendahuluan dari V2!'
+ }).then(function(){
+ location.reload();
+ });
+ }else if(data.pengesahan == 'Batal' && data.id == approvalid && data.kodlaluan == teller){
+ Swal.fire({
+ icon: 'error',
+ title: 'Serahan V3/Auto Pendahuluan V2 Dibatalkan',
+ text: 'Operasi membatalkan Serahan ke V3 dan Auto Pendahuluan dari V2!'
+ }).then(function(){
+ location.reload();
+ });
+ }else{
+ Swal.fire({
+ icon: 'error',
+ title: 'Auto Serahan Mengalami Ralat',
+ text: 'Auto Serahan tidak berjaya!'
+ }).then(function(){
+ location.reload();
+ });
+ }
+
+
+ });
+ }
+
+ const getCurrentDate = () => {
+ const today = new Date();
+ const day = String(today.getDate()).padStart(2, '0');
+ const month = String(today.getMonth() + 1).padStart(2, '0');
+ const year = today.getFullYear();
+
+ return `${day}/${month}/${year}`;
+ };
+
+ function triggerValue(){
+ let form = $('form[name="autoserah"]');
+ form.find('[name="tarikh"]').val(getCurrentDate());
+ }
+
+ $('#autoSerahanModal').on('shown.bs.modal', function () {
+ $('input[name="denominasi"]').attr('style','display: block');
+ $('.denominasi').attr('style','display: block');
+ triggerValue();
+ });
+
+ function terima_autoserah(){
+ let form = $('form[name="autoserah"]');
+
+ let amaun = form.find('[name="amaun"]').val();
+ let keterangan = form.find('[name="keterangan"]').val();
+ let dtacct = form.find('[name="dtacct"]').val();
+ let ktacct = form.find('[name="ktacct"]').val();
+
+ if(!amaun){
+ $("[name='erroramaun']").show();
+ $("[name='erroramaun']").text("*Isikan amaun dalam input!");
+ $("[name='amaun']").addClass('is-invalid');
+ boolamaun = true;
+ }else{
+ $("[name='erroramaun']").hide();
+ $("[name='amaun']").removeClass('is-invalid');
+ boolamaun = false;
+ }
+
+ if(!keterangan){
+ $("[name='errorketerangan']").show();
+ $("[name='errorketerangan']").text("*Isikan keterangan dalam input!");
+ $("[name='keterangan']").addClass('is-invalid');
+ boolketerangan = true;
+ }else{
+ $("[name='errorketerangan']").hide();
+ $("[name='keterangan']").removeClass('is-invalid');
+ boolketerangan = false;
+ }
+
+ // If all validations pass
+ if(boolamaun === false && boolketerangan === false) {
+ // Carry all validated values, including auth_user
+
+ $('#amaundiminta').val(amaun);
+ $('#denominasiHQModal').modal('show');
+ $('#autoSerahanModal').modal('hide');
+ $('#jenisjenis').val('serahan');
+ $('#jenisserahan').val('auto');
+
+ return true;
+ }else{
+ $("#terima_transaksi_autoserah").prop('disabled', false);
+ event.preventDefault();
+ return false;
+ }
+ }
+
+
@endsection
diff --git a/resources/views/modal/autoserahan.blade.php b/resources/views/modal/autoserahan.blade.php
new file mode 100644
index 0000000..ca56f53
--- /dev/null
+++ b/resources/views/modal/autoserahan.blade.php
@@ -0,0 +1,49 @@
+
+
diff --git a/resources/views/modal/denominasimodalpendahuluanserahan.blade.php b/resources/views/modal/denominasimodalpendahuluanserahan.blade.php
index 0ba0096..7b7e068 100644
--- a/resources/views/modal/denominasimodalpendahuluanserahan.blade.php
+++ b/resources/views/modal/denominasimodalpendahuluanserahan.blade.php
@@ -132,6 +132,7 @@
+
diff --git a/resources/views/print/laporan_pendahuluanserahan.blade.php b/resources/views/print/laporan_pendahuluanserahan.blade.php
index 412e509..1f3371d 100644
--- a/resources/views/print/laporan_pendahuluanserahan.blade.php
+++ b/resources/views/print/laporan_pendahuluanserahan.blade.php
@@ -172,8 +172,10 @@
@php
$reportNames = [
'serahan' => 'LAPORAN SERAHAN HQ',
+ 'serahankepadav3' => 'LAPORAN SERAHAN KEPADA V3',
'pendahuluan' => 'LAPORAN PENDAHULUAN HQ',
'online' => 'LAPORAN SERAHAN ONLINE HQ',
+ 'serahankepadav3' => 'LAPORAN SERAHAN KEPADA V3',
'serahanlelong' => 'LAPORAN SERAHAN LELONG HQ',
'serahanonline' => 'LAPORAN SERAHAN DAN SERAHAN ONLINE HQ',
'all' => 'LAPORAN KESELURUHAN HQ'
diff --git a/routes/web.php b/routes/web.php
index d31216d..e6719ef 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -161,6 +161,8 @@ Route::post('/permohonan/simpan',['as'=>'permohonan.simpan','uses' => 'KhazanahC
Route::get('/permohonan/status/{mohonid}',['as'=>'permohonan.status','uses' => 'KhazanahController@StatusPermohonan'])->middleware('auth','khazanah');
Route::post('/permohonan/cit',['as'=>'permohonan.cit','uses' => 'KhazanahController@CITPermohonan'])->middleware('auth','khazanah');
Route::post('/permohonan/download',['as'=>'permohonan.download','uses' => 'KhazanahController@DownloadFiles'])->middleware('auth','khazanah');
+Route::post('/khazanah/autoserahan',['as'=>'khazanah.autoserahan','uses'=>'KhazanahController@AutoSerahan'])->middleware('auth','khazanah');
+
Route::post('/kakitangan/harian',['as'=>'kakitangan.harian','uses'=>'KakitanganController@kakitanganHarian'])->middleware('auth','khazanah');
Route::get('/lelong',['as'=>'lelong','uses'=>'LelongController@lelong']);