adding akru for range date in admin arrahn

This commit is contained in:
hafifierahman
2023-01-11 01:32:37 +08:00
parent 823458d941
commit 3d42f3408b
9 changed files with 1048 additions and 2 deletions
+49
View File
@@ -9,10 +9,12 @@ use Carbon\Carbon;
use Barryvdh\DomPDF\Facade as PDF;
use Maatwebsite\Excel\Excel;
use DateTime;
use App\Models\Lejeram;
use App\Models\Cawangan;
use App\Services\ImbangdugaServices as ImbanganDuga;
class AkaunController extends Controller
{
@@ -1252,4 +1254,51 @@ class AkaunController extends Controller
return view('akaun.laporan_serahpetibesigadai', compact('cawangan_detail','api_url','serahmarhun','cawangan_info','datemula','datehingga','tarikh_cetak'));
}
public function cetakimbangdugaAkru(Request $request){
$auth_user = Auth::user();
$api_url = config('api.url');
$current = Carbon::now();
$current = new Carbon();
$cawangan_info = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/cawangan/'. $request->kodcaw)->json();
$cawangan = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url').'/api/cawangan/detail/'. $request->kodcaw)->json();
$cawangan_detail=$cawangan[0];
$tarikh_cetak = $current->toDateString();
$tarikh_imbangan= $current->toDateString();
$tarikh_imbangan2= $current->toDateString();
$tarikh_cetak = $current->toDateString();
if($request->datetimepicker1 == null){
$tarikh_cetak = $current->toDateString();
}else{
$split_date = explode('-',$request->datetimepicker1);
$tarikh_imbangan2 = $request->datetimepicker1;
}
$date1 = new DateTime($tarikh_imbangan2);
$date2 = new DateTime($current->toDateString());
if($date1 < $date2){
$response = (new ImbanganDuga())->GetImbangDugaBackup( $request->kodcaw,$request->datetimepicker1);
}else{
$response = (new ImbanganDuga())->ViewImbangDugaAROS( $request->kodcaw,$tarikh_imbangan2);
}
if($response->getContent() == 'notfound')
{
return response('not-found');
}
$array_ig = json_decode($response->getContent());
$hartasemasa = $array_ig->array_harta;
$tanggungansemasa = $array_ig->array_tanggungan;
$totalhartasemasa = $array_ig->sum_harta;
$totaltanggungansemasa = $array_ig->sum_tanggungan;
return view('akaun.laporan_imbangduga-akru',compact('tarikh_imbangan', 'tarikh_imbangan2','hartasemasa','tanggungansemasa','totalhartasemasa','totaltanggungansemasa','tarikh_cetak','cawangan_info','cawangan','api_url','cawangan_detail'));
}
}
+2 -1
View File
@@ -14,7 +14,8 @@ class Cawangan extends Model
'kodcaw',
'syarikat',
'min',
'max'
'max',
'penyelarasan'
];
protected $primaryKey = 'caw_id';
+22
View File
@@ -0,0 +1,22 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class ImbangDuga extends Model
{
protected $table = 'imbangdugadata';
protected $fillable = [
'no',
'descpt',
'glcode',
'api_redirect',
'variable',
'single_var',
'is_array',
'jenis',
'neg_values'
];
}
+305
View File
@@ -0,0 +1,305 @@
<?php
namespace App\Services;
use App\Models\ImbangDuga;
use App\Models\Cawangan;
use Illuminate\Support\Facades\Http;
use Carbon\Carbon;
class ImbangdugaServices
{
protected float $tunaiditangan = 0;
protected float $pembiayaantawarruq = 0;
protected float $bayaranpendahuluan = 0;
protected float $pinjamankoop = 0;
protected float $emaspalsu = 0;
protected float $serahan = 0;
protected float $pindahkekpkb = 0;
protected float $penghutangkaki = 0;
protected float $phapuskira = 0;
protected float $belian1stop = 0;
protected float $keun_penggadai = 0;
protected float $bds = 0;
protected float $perubatan = 0;
protected float $keraian = 0;
protected float $rugilelong = 0;
protected float $bakilelong = 0;
protected float $wtd = 0;
protected float $untungrugiterkumpul = 0;
protected float $keun_sebenar = 0;
protected float $pendahuluan = 0;
protected float $cajlelong = 0;
protected float $pend_terakru = 0;
protected float $cajperkhidmatan = 0;
protected float $cajlelongxtra = 0;
protected float $upahsimpan = 0;
protected float $bakilelongxtra = 0;
protected float $kerugianlelong = 0;
protected float $utgterkumpulxtra = 0;
protected float $jualan1stop = 0;
protected float $hapuskira = 0;
private function SwitchFuncImbangDuga($value = 0.0,$name_variable = null,$tarikh,$kodcaw) : Float{
$value = floatval($value);
switch ($name_variable) {
case 'tunaiditangan' :
if($tarikh >= '2021-04-22' && $tarikh < '2021-05-05'){
$advansurharini = Http::get(config('api.url').'/api/advansurharini/' . $kodcaw,['tarikh' => $tarikh])->json();
$data = floatval($value) - floatval($advansurharini);
}else $data = $value;
if($kodcaw == '010219')
if($tarikh >= '2022-11-24')
$data = $value - 78379.9;
else $data = $value;
else $data = $value;
break;
case 'penghutangkaki' :
if($kodcaw == '010219')
if($tarikh < '2022-11-24')
$data = $value - 78379.9;
else $data = $value;
else $data = $value;
break;
case 'jualan1stop':
$data = ($kodcaw === '1STOP') ? floatval(129857.00) : 0;
break;
case 'belian1stop':
$data = ($kodcaw === '1STOP') ? floatval(122446.50) : 0;
break;
case 'utgterkumpulxtra':
$data = ($kodcaw === '1STOP') ? floatval(6727.10) : $value;
break;
case 'rugilelongxtra':
$data = ($kodcaw === '1STOP') ? floatval(-10079.30) : -($value);
break;
case 'bakilelongxtra':
$data = ($kodcaw === '1STOP') ? floatval(123.20) : $value;
break;
case 'cajlelongxtra':
$data = ($kodcaw === '1STOP') ? floatval(25.50) : 0;
break;
case 'upahsimpanxtra':
$data = ($kodcaw === '1STOP') ? floatval(4894.40) : $value;
break;
case null:
$data = 0;
break;
default:
$data = $value;
break;
}
return floatval($data);
}
private function InsertImbangDugaBackup($tarikh,$kodcaw,$sum_harta = 0.0,$sum_tanggungan = 0.0,$tagtally = 0) : String{
$insert_imbangduga_backup = Http::get(config('api.url'). '/admin/laporan/akrual/insertImbangDuga',[
'tarikh' => $tarikh,
'kodcaw' => $kodcaw,
'tunaiditangan' => ($this->tunaiditangan) ? $this->tunaiditangan : 0,
'pembiayaantawarruq' => ($this->pembiayaantawarruq) ? $this->pembiayaantawarruq : 0,
'bayaranpendahuluan' => ($this->bayaranpendahuluan) ? $this->bayaranpendahuluan : 0,
'pinjamankoop' => ($this->pinjamankoop) ? $this->pinjamankoop : 0,
'emaspalsu' => ($this->emaspalsu) ? $this->emaspalsu : 0,
'serahan' => ($this->serahan) ? $this->serahan : 0,
'bds' => ($this->bds) ? $this->bds : 0,
'perubatan' => ($this->perubatan) ? $this->perubatan : 0,
'keraian' => ($this->keraian) ? $this->keraian : 0,
'rugilelong' => ($this->rugilelong) ? $this->rugilelong : 0,
'bakilelong' => ($this->bakilelong) ? $this->bakilelong: 0,
'wtd' => ($this->wtd) ? $this->wtd : 0,
'untungrugiterkumpul' => ($this->untungrugiterkumpul) ? $this->untungrugiterkumpul : 0,
'keun_sebenar' => ($this->keun_sebenar) ? $this->keun_sebenar : 0,
'pendahuluan' => ($this->pendahuluan) ? $this->pendahuluan : 0,
'cajlelong' => ($this->cajlelong) ? $this->cajlelong : 0,
'pindahkekpkb' => ($this->pindahkekpkb) ? $this->pindahkekpkb : 0,
'penghutangkaki' => ($this->penghutangkaki) ? $this->penghutangkaki : 0,
'phapuskira' => ($this->phapuskira) ? $this->phapuskira : 0,
'belian1stop' => ($this->belian1stop) ? $this->belian1stop : 0,
'keun_penggadai' => ($this->keun_penggadai) ? $this->keun_penggadai : 0,
'pend_terakru' => ($this->pend_terakru) ? $this->pend_terakru : 0,
'cajperkhidmatan' => ($this->cajperkhidmatan) ? $this->cajperkhidmatan : 0,
'cajlelongxtra' => ($this->cajlelongxtra) ? $this->cajlelongxtra : 0,
'upahsimpanxtra' => ($this->upahsimpan) ? $this->upahsimpan : 0,
'bakilelongxtra' => ($this->bakilelongxtra) ? $this->bakilelongxtra : 0,
'rugilelongxtra' => ($this->kerugianlelong) ? $this->kerugianlelong : 0,
'utgterkumpulxtra' => ($this->utgterkumpulxtra) ? $this->utgterkumpulxtra : 0,
'jualan1stop' => ($this->jualan1stop) ? $this->jualan1stop : 0,
'hapuskira' => ($this->hapuskira) ? $this->hapuskira : 0,
'totalharta' => $sum_harta,
'totaltanggungan' => $sum_tanggungan,
'tagtally' => $tagtally,
])->json();
if($insert_imbangduga_backup == 'success')
return 'successful';
else
return 'error';
}
public function OperationImbangDuga($kodcaw){
$current = Carbon::now();
$current = new Carbon();
$tarikh = $current->toDateString();
$imbangdugadata = ImbangDuga::orderBy('glcode')->get();
$array_harta = [];
$array_tanggungan = [];
$summation_harta = 0;
$summation_tanggungan = 0;
$penyelarasan = Cawangan::select('penyelarasan')->where('kodcaw',$kodcaw)->get()->toArray();
$penyelarasan = $penyelarasan[0];
foreach($imbangdugadata as $index => $imbangdugaiteration){
if($imbangdugaiteration->api_redirect != null){
if($imbangdugaiteration['variable'] == 'keun_sebenar' || $imbangdugaiteration['variable'] == 'pend_terakru'){
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'],['tarikh' => $tarikh,'kodcaw' => $kodcaw])->json();
}else{
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => $tarikh])->json();
}
if(is_object($imbangdugaiteration)) $data = ($imbangdugaiteration->is_array == 1) ? ${$imbangdugaiteration['variable']}[$imbangdugaiteration['single_var']] : ${$imbangdugaiteration['variable']};
$data = ($imbangdugaiteration->neg_values == 1) ? $data = -1 * abs($data) : $data;
$data = ($imbangdugaiteration['variable'] == 'untungrugiterkumpul') ? $data + $penyelarasan['penyelarasan'] : $data;
}else $data = 0;
$data = $this->SwitchFuncImbangDuga($data,$imbangdugaiteration['variable'],$tarikh,$kodcaw);
/* declare for protected above */
if($imbangdugaiteration->is_array == 1){
$nama = $imbangdugaiteration['single_var'];
if($imbangdugaiteration['variable'] == 'bakilelongxtra'){
$nama = $imbangdugaiteration['variable'];
}else if($imbangdugaiteration['variable'] == 'utgterkumpulxtra'){
$nama = $imbangdugaiteration['variable'];
}
$this->$nama = $data;
}else $this->{$imbangdugaiteration['variable']} = $data;
if($imbangdugaiteration->jenis == 'harta'){
$summation_harta += $data;
array_push($array_harta,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
}else{
$summation_tanggungan += $data;
array_push($array_tanggungan,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
}
}
$tagtally = (number_format($summation_harta,2) == number_format($summation_tanggungan,2)) ? 1 : 0;
$response = $this->InsertImbangDugaBackup($tarikh,$kodcaw,$summation_harta,$summation_tanggungan,$tagtally);
if($response == 'successful'){
return response('succesful');
}else{
return response('error');
}
}
public function ViewImbangDugaAROS($kodcaw,$tarikh){
$current = Carbon::now();
$current = new Carbon();
$tarikh = $current->toDateString();
$imbangdugadata = ImbangDuga::orderBy('glcode')->get();
$array_harta = [];
$array_tanggungan = [];
$summation_harta = 0;
$summation_tanggungan = 0;
$penyelarasan = Cawangan::select('penyelarasan')->where('kodcaw',$kodcaw)->get()->toArray();
$penyelarasan = $penyelarasan[0];
foreach($imbangdugadata as $index => $imbangdugaiteration){
if($imbangdugaiteration->api_redirect != null){
if($imbangdugaiteration['variable'] == 'keun_sebenar' || $imbangdugaiteration['variable'] == 'pend_terakru'){
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'],['tarikh' => $tarikh,'kodcaw' => $kodcaw])->json();
}else{
${$imbangdugaiteration['variable']} = Http::get(config('api.url'). $imbangdugaiteration['api_redirect'] . $kodcaw,['tarikh' => $tarikh])->json();
}
if(is_object($imbangdugaiteration)) $data = ($imbangdugaiteration->is_array == 1) ? ${$imbangdugaiteration['variable']}[$imbangdugaiteration['single_var']] : ${$imbangdugaiteration['variable']};
$data = ($imbangdugaiteration->neg_values == 1) ? $data = -1 * abs($data) : $data;
$data = ($imbangdugaiteration['variable'] == 'untungrugiterkumpul') ? $data + $penyelarasan['penyelarasan'] : $data;
}else $data = 0;
$data = $this->SwitchFuncImbangDuga($data,$imbangdugaiteration['variable'],$tarikh,$kodcaw);
/* declare for protected above */
if($imbangdugaiteration->is_array == 1){
$nama = $imbangdugaiteration['single_var'];
if($imbangdugaiteration['variable'] == 'bakilelongxtra'){
$nama = $imbangdugaiteration['variable'];
}else if($imbangdugaiteration['variable'] == 'utgterkumpulxtra'){
$nama = $imbangdugaiteration['variable'];
}
$this->$nama = $data;
}else $this->{$imbangdugaiteration['variable']} = $data;
if($imbangdugaiteration->jenis == 'harta'){
$summation_harta += $data;
array_push($array_harta,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
}else{
$summation_tanggungan += $data;
array_push($array_tanggungan,['variable' => ($imbangdugaiteration->is_array == 1) ? $imbangdugaiteration->single_var : $imbangdugaiteration->variable,'glcode' => $imbangdugaiteration->glcode, 'descpt' => $imbangdugaiteration->descpt,'amaun' => ($data) ? $data : 0]);
}
}
$array_ig = ['array_harta' => $array_harta,'array_tanggungan' => $array_tanggungan,'sum_harta' => $summation_harta,'sum_tanggungan' => $summation_tanggungan];
return response($array_ig);
}
public function GetImbangDugaBackup($kodcaw,$tarikh){
// $date = date_create_from_format('j-m-Y', $tarikh);
// $new_date = date_format($date, 'Y-m-d');
$new_date = $tarikh;
$response = Http::get(config('api.url'). '/api/Backup/ImbangDuga/' . $kodcaw,['tarikh' => $new_date])->json();
if($response == 'notfound' || $response == null)
{
return response('notfound');
}else{
$array_harta = [];
$array_tanggungan = [];
foreach($response as $variable=>$res)
{
if($variable !== 'recno' && $variable !== 'kodcaw' && $variable !== 'tarikh' && $variable !== 'totalharta' && $variable !== 'totaltanggungan' && $variable !== 'tagtally' && $variable !== 'created_at' && $variable !== 'updated_at'){
if($variable == 'bakilelong'){
$imbangdugadata = ImbangDuga::orderBy('glcode')->where([['single_var',$variable],['variable',$variable]])->first()->toArray();
}else{
$imbangdugadata = ImbangDuga::orderBy('glcode')->where('variable',$variable)->orWhere('single_var',$variable)->first()->toArray();
}
if($imbangdugadata['jenis'] == 'harta'){
array_push($array_harta,['glcode' => $imbangdugadata['glcode'],'descpt' => $imbangdugadata['descpt'],'amaun' => $res]);
}else{
array_push($array_tanggungan,['glcode' => $imbangdugadata['glcode'],'descpt' => $imbangdugadata['descpt'],'amaun' => $res]);
}
}
}
uasort($array_harta, array($this,'glcode_compare'));
uasort($array_tanggungan, array($this,'glcode_compare'));
$array_all = ['array_harta' => $array_harta,'array_tanggungan' => $array_tanggungan,'sum_harta' => $response['totalharta'],'sum_tanggungan' => $response['totaltanggungan']];
return response($array_all);
}
}
private static function glcode_compare($a, $b){
return strcmp($a['glcode'], $b['glcode']);
}
}
+2 -1
View File
@@ -110,7 +110,8 @@
</router-link>
</div>
<div class="bg-white ml-2 shadow border border-solid px-6 py-4 rounded-lg hover:bg-yellow-300 hover:transition-all mb-2 cursor-pointer">
<router-link to="/akaunhome/imbangduga/extended">
<!-- <router-link to="/akaunhome/imbangduga/extended"> -->
<router-link to="/akaunhome/imbangduga/akru">
<h2 class="mx-auto text-center font-bold text-2xl uppercase">Imbang Duga Extend.</h2>
</router-link>
</div>
+179
View File
@@ -0,0 +1,179 @@
<template>
<div class="container">
<!-- <modal ref="modal"></modal> -->
<div class="flex w-full">
<div class="xl:w-2/3 2xl:w-1/2 p-8 mx-auto">
<div class="bg-yellow-600 text-gray-200 text-lg px-6 py-4 rounded-t-lg">
<router-link to="/akaunhome">
<i class="fas fa-backspace text-white"></i>
</router-link>
<span class="text-center mx-auto text-white font-bold">Laporan Imbang Duga Akru</span>
</div>
<form method="get" id="myIframe" name="formimbangduga" ref="formimbangduga" :action="Urlredirect()" target="iframe_laporan">
<div class="rounded bg-white shadow p-6">
<div class="pb-6">
<label for="username" class="font-semibold text-gray-700 block pb-1">Tarikh</label>
<div class="flex">
<input :value="$hostname" name="hostname" hidden/>
<input :value="$kodcaw" name="kodcaw" hidden/>
<input :value="jenisgenerate" type="hidden" name="jenis" />
<input :value="tarikhmula" type="hidden" name="datetimepicker1"/>
<span style="background-color: #F9FAFB" class="text-gray-600 border border-2 rounded-l px-4 py-2 whitespace-no-wrap">Mula</span>
<!-- <input id="tarikhmula" name="datetimepicker1" class="border border-2 border-l-0 rounded-r px-4 py-2 w-80r mr-2" type="date" /> -->
<flat-pickr v-model="tarikhmula" :config="config" class="border border-2 rounded-r px-4 py-2 w-80r mr-2"></flat-pickr>
<button @click.prevent="generateview" class="border border-yellow-600 text-yellow-600 font-montserrat py-2 px-8 font-medium rounded-xl hover:bg-yellow-600 hover:text-white transition-all duration-300"><i class="fas fa-eye mr-2"></i>View</button>
</div>
</div>
</div>
</form>
</div>
</div>
<!-- <vue-friendly-iframe v-show="showLoader == false" :style="{visibility: showLoader ? 'hidden' : 'visible'}" class="mx-auto"
:src="''"
frame-id="myIframe"
@load="onLoad"
@iframe-load="LoadedReady"
name="iframe_laporan"
ref="friendlyIframe"></vue-friendly-iframe> -->
<!-- <iframe class="overflow-x-hidden overflow-y-auto fixed inset-0 z-50 outline-none focus:outline-none justify-center items-center flex bg-white" name="iframe_laporan" width="500" height="500"></iframe> -->
<div v-if="showModal" class="overflow-x-hidden overflow-y-auto fixed inset-0 z-50 outline-none focus:outline-none justify-center items-center flex">
<div class="relative w-1/2 my-6 mx-auto max-w-6xl">
<!--content-->
<div class="border-0 rounded-lg shadow-lg relative flex flex-col w-full bg-white outline-none focus:outline-none">
<!--header-->
<div class="relative p-6" style="height: 80vh;">
<!-- <div id="loading" v-show="showLoader" class="flex justify-center mt-10" :style="{visibility: showLoader ? 'visible' : 'hidden'}" >
<img id="loading-image" src="/img/loader.gif" alt="Loading..." />
</div> -->
<div v-if="showLoader" class="inset-0 z-30 h-full w-full" id="loading">
<i class="animate-spin fas fa-circle-notch fixed fa-4x m-auto text-yellow-500" style="left:48% !important;top:45% !important;"></i>
</div>
<vue-friendly-iframe v-show="showLoader == false" :style="{visibility: showLoader ? 'hidden' : 'visible'}" class="h-full w-full"
:src="''"
frame-id="myIframe"
@load="onLoad"
@iframe-load="LoadedReady"
name="iframe_laporan"
ref="friendlyIframe"></vue-friendly-iframe>
<!-- <iframe :style="{visibility: showLoader ? 'hidden' : 'visible'}" name="iframe_laporan" scrolling="true" :load="onLoad()"></iframe> -->
</div>
<!--footer-->
<div class="flex items-center justify-end p-6 border-t border-solid border-blueGray-200 rounded-b">
<button @click.prevent="generatepdf" class="bg-gray-500 hover:bg-gray-700 text-white font-bold py-1 px-3 border border-gray-700 rounded mr-1" :disabled="pendingStatus == 'none'">{{ (pendingStatus == 'loading') ? '' : '' }}<i class="fas fa-file-pdf mr-2"></i>Cetak</button>
<button class="bg-gray-500 hover:bg-gray-700 text-white font-bold py-1 px-3 border border-gray-700 rounded mr-1" type="button" v-on:click="toggleModal()" :disabled="pendingStatus == 'none'">
<i class="fas fa-window-close mr-2"></i>Tutup
</button>
</div>
</div>
</div>
</div>
<div v-if="showCetak" class="inset-0 z-30 h-full w-full" id="loading">
<i class="animate-spin fas fa-circle-notch fixed fa-4x m-auto text-yellow-500" style="left:50% !important;top:50% !important;"></i>
</div>
<div v-if="showModal || showCetak" class="opacity-25 fixed inset-0 z-40 bg-black"></div>
</div>
</template>
<style>
.vue-friendly-iframe iframe {
height:100% !important;
width:100% !important;
}
</style>
<script>
// import monthSelectPlugin from 'flatpickr/dist/plugins/monthSelect/index.js'
import 'flatpickr/dist/plugins/monthSelect/style.css'
var today = new Date();
export default {
name: 'myIframe',
data(){
return{
tarikhmula: null,
jenisgenerate:'none',
kodcaw: '',
showModal:false,
myIframe: null,
iframesrc:'',
pendingStatus:'none',
showLoader: true,
showCetak: false,
config: {
wrap: false, // set wrap to true only when using 'input-group'
maxDate: 'today',
minDate: "2022-12-20"
},
}
},
methods: {
async generatepdf(){
this.showCetak = true;
this.showModal = false;
await this.setJenis('pdf');
// Vue.swal({
// title: 'Memuatkan...',
// allowEscapeKey : false,
// allowOutsideClick: false,
// showCancelButton: false,
// showConfirmButton: false
// });
await this.$refs.formimbangduga.submit()
await setTimeout(() => {
this.showCetak = false
}, 8000);
},
async generateview(){
await this.setJenis('view');
// Vue.swal({
// title: 'Memuatkan...',
// allowEscapeKey : false,
// allowOutsideClick: false,
// showCancelButton: false,
// showConfirmButton: false
// });
this.showModal = true;
},
toggleModal: function(){
this.showLoader = true
this.pendingStatus = 'none'
this.showModal = !this.showModal;
},
async onLoad() {
await this.$refs.formimbangduga.submit()
},
async LoadedReady(){
await setTimeout(() => {
this.showLoader = false
this.pendingStatus = 'ok'
}, 10000);
},
Urlredirect: function() {
return window.route('cetak.imbangdugaAkru')
// return window.route('cetak.imbangdugaExtended')
},
setJenis: function(value){
return this.jenisgenerate = value;
},
urlHostname: function(){
return document.location.origin + '/iframe';
}
}
}
</script>
+2
View File
@@ -3,6 +3,7 @@ import VueRouter from 'vue-router'
import Lejeram from './Akaun/Lejeram'
import Imbangduga from './Akaun/Imbangduga'
import ImbangdugaExtended from './Akaun/ImbangdugaExtended'
import ImbangDugaAkru from './Akaun/ImbangdugaAkru'
import Home from './Akaun/Home'
import Laporan from './Akaun/Laporan'
import Gadaian from './Akaun/Gadaian'
@@ -63,6 +64,7 @@ export default new VueRouter({
{ path: '/akaunhome/lejeram', component: Lejeram },
{ path: '/akaunhome/imbangduga', component: Imbangduga },
{ path: '/akaunhome/imbangduga/extended', component: ImbangdugaExtended },
{ path: '/akaunhome/imbangduga/akru', component: ImbangDugaAkru },
{ path: '/akaunhome/gadaian', component: Gadaian },
{ path: '/akaunhome/penebusan', component: Penebusan },
{ path: '/akaunhome/ansuran', component: Ansuran },
@@ -0,0 +1,486 @@
<html>
<head>
<script src="{{ asset('js/jquery.min.js') }}"></script>
<style>
#header {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 100%;
}
#header td, #customers th {
padding:4px;
font-size:12px;
}
#header tr:nth-child(even){background-color: #ffffff;}
#header tr:hover {background-color: #ddd;}
#header th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#loading {
position: fixed;
display: block;
width: 100%;
height: 100%;
top: 0;
left: 0;
text-align: center;
opacity: 0.7;
background-color: #fff;
z-index: 99;
}
#loading-image {
position: absolute;
top: 100px;
left: 240px;
z-index: 100;
}
#scan {
font-family: Arial, Helvetica, sans-serif;
width: 100%;
border: 1px solid #ddd;
}
#scan td, #scan th {
padding: 8px;
font-size:20px;
}
#scan tr:nth-child(even){background-color: #ffffff;}
#scan tr:hover {background-color: #ddd;}
#scan th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#scan {
font-family: Arial, Helvetica, sans-serif;
width: 100%;
}
#scan td, #scan th {
padding: 8px;
font-size:12px;
}
#scan tr:nth-child(even){background-color: #ffffff;}
#scan tr:hover {background-color: #ddd;}
#scan th {
border-collapse: collapse;
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#details {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 50%;
}
#details td, #details th {
padding: 8px;
font-size:16px;
}
#details tr:nth-child(even){background-color: #ffffff;}
#details tr:hover {background-color: #ffffff;}
#details th {
padding-top: 12px;
font-style:bold;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#sign {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 100%;
}
#sign td, #sign th {
padding: 8px;
font-size:11px;
text-align: center;
}
#sign tr:nth-child(even){background-color: #ffffff;}
#sign tr:hover {background-color: #ddd;}
#sign th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#title {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 50%;
}
#title td, #title th {
padding:4px;
font-size:12px;
border: 0px solid #fff;
}
#title tr:nth-child(even){background-color: #ffffff;}
#title tr:hover {background-color: #ddd;}
#title th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#details {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:80%;
}
#details td, #details th {
padding:4px;
font-size:16px;
border: 1px solid #ddd;
}
#details tr:nth-child(even){background-color: #ffffff;}
#details tr:hover {background-color: #ddd;}
#details th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#tarikh_cetak {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 50%;
}
#tarikh_cetak td, #tarikh_cetak th {
padding:4px;
font-size:10px;
}
#tarikh_cetak tr:nth-child(even){background-color: #ffffff;}
#tarikh_cetak tr:hover {background-color: #ddd;}
#tarikh_cetak th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#data {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 80%;
}
#data td, #data th {
padding:4px;
font-size:16px;
}
#data tr:nth-child(even){background-color: #ffffff;}
#data tr:hover {background-color: #ddd;}
#data th {
padding-top: 11px;
padding-bottom: 11px;
text-align: left;
padding:4px;
color:black;
font-size:14px;
}
#tarikh_ib {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:45%;
}
#tarikh_ib td, #tarikh_ib th {
padding:4px;
font-size:12px;
}
#tarikh_ib tr:nth-child(even){background-color: #ffffff;}
#tarikh_ib tr:hover {background-color: #ddd;}
#tarikh_ib th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#GL {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:100%;
}
#GL td, #GL th {
padding:4px;
font-size:12px;
border: 1px solid #ddd;
}
#GL tr:nth-child(even){background-color: #ffffff;}
#GL tr:hover {background-color: #ddd;}
#GL th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#GL_dtl {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:100%;
}
#GL_dtl td, #GL_dtl th {
padding:4px;
font-size:12px;
border: 1px solid #ddd;
}
#GL_dtl tr:nth-child(even){background-color: #ffffff;}
#GL_dtl tr:hover {background-color: #ddd;}
#GL_dtl th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#dtl_ib {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:100%;
}
#dtl_ib td, #dtl_ib th {
padding:4px;
font-size:12px;
border: 1px solid #ddd;
}
#dtl_ib tr:nth-child(even){background-color: #ffffff;}
#dtl_ib tr:hover {background-color: #ddd;}
#dtl_ib th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
#total_harta {
font-family: Arial, Helvetica, sans-serif;
border-collapse: collapse;
width:100%;
}
#total_harta td, #total_harta th {
padding:4px;
font-size:12px;
border: 1px solid #ddd;
}
#total_harta tr:nth-child(even){background-color: #ffffff;}
#total_harta tr:hover {background-color: #ddd;}
#total_harta th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
padding:4px;
color:black;
}
</style>
</head>
<body>
<table id="header">
<tr>
<th rowspan="4" style="width:50px"><br><img src="{{ asset('img/ARRAHN1.png') }}" style="width:70px"></img></th>
<th colspan="1">KOPERASI PERMODALAN KELANTAN BERHAD</th>
</tr>
<tr>
<td>{{ $cawangan_detail['namacaw'] }}</td>
<td></td>
</tr>
<tr>
<td>{{ $cawangan_detail['alamat1'] }}</td>
<td></td>
</tr>
<tr>
<td>{{ $cawangan_detail['alamat2'].' No Tel : '. $cawangan_detail['notel'].' No Faks : '. $cawangan_detail['nofaks'] }}</td>
<td></td>
</tr>
</table>
<br>
<table id="tarikh_ib">
<tr>
<td cospan="2" > <B><U>LAPORAN IMBANGAN DUGA CAWANGAN</U></B></td>
</tr>
</table>
<table id="tarikh_ib">
<tr><td style="width:10px" ><b>Tarikh Laporan</b></td ><td style="width:20px"> {{ ($tarikh_imbangan2) ? $tarikh_imbangan2 : ''}} </td><td style="width:18px" ><b>Tarikh Cetak</b></td><td style="width:25px" > {{$tarikh_cetak}} </td> </tr>
</table>
<br>
<table id="GL_dtl">
<tr>
<th width="20%"> Kod GL </th>
<th colspan="1" width="60%">Keterangan </th>
<th width="20%">Amaun</th>
</tr>
<tr>
<th colspan="3"><b> HARTA SEMASA</b> </th>
</tr>
@foreach($hartasemasa as $index => $assets)
@if($assets->amaun != 0)
<tr>
<td>{{ $assets->glcode }}</td>
<td>{{ $assets->descpt }}</td>
<td>{{ number_format($assets->amaun,2) }}</td>
</tr>
@endif
@endforeach
<tr>
<td><b>JUMLAH </b></td>
<td colspan="1"></td>
<td><b>{{ number_format($totalhartasemasa,2) }}</b></td>
</tr>
</table>
<br>
<table id="GL_dtl">
<tr>
<th colspan="3"><b> TANGGUNGAN SEMASA</b> </th>
</tr>
@foreach($tanggungansemasa as $index => $liabilities)
@if($liabilities->amaun != 0)
<tr>
<td width="20%">{{ $liabilities->glcode }}</td>
<td colspan="1" width="60%">{{ $liabilities->descpt }}</td>
<td width="20%">{{ number_format($liabilities->amaun,2) }}</td>
</tr>
@endif
@endforeach
<tr>
<td ><b>JUMLAH </b></td>
<td colspan="1"></td>
<td><b>{{ number_format($totaltanggungansemasa,2) }}</b></td>
</tr>
</table>
<br>
<br>
<br>
</body>
</html>
+1
View File
@@ -77,6 +77,7 @@ Route::get('/kelulusan',['as'=>'kelulusan','uses'=>'App\Http\Controllers\Kelulus
Route::get('/akaunhome/cetaklaporanlejeram',['as'=>'cetak.lejeram','uses'=>'App\Http\Controllers\AkaunController@viewlejeram'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetaklaporanimbangduga',['as'=>'cetak.imbangduga','uses'=>'App\Http\Controllers\AkaunController@cetakimbangduga'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetaklaporanimbangdugaextended',['as'=>'cetak.imbangdugaExtended','uses'=>'App\Http\Controllers\AkaunController@cetakimbangdugaExtended'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetaklaporanimbangdugaakru',['as'=>'cetak.imbangdugaAkru','uses'=>'App\Http\Controllers\AkaunController@cetakimbangdugaAkru'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetakgadaian',['as'=>'cetak.gadaian','uses'=>'App\Http\Controllers\AkaunController@cetakLaporanGadai'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetakpenebusan',['as'=>'cetak.penebusan','uses'=>'App\Http\Controllers\AkaunController@cetakLaporanPenebusan'])->middleware(['roleChecker:admin,akaun,operasi']);
Route::get('/akaunhome/cetakansuran',['as'=>'cetak.ansuran','uses'=>'App\Http\Controllers\AkaunController@cetakLaporanAnsuran'])->middleware(['roleChecker:admin,akaun,operasi']);