Merge remote-tracking branch 'origin/new-super' into afiqhamzah-feat-mykad-reader-registration
This commit is contained in:
+2
-1
@@ -13,6 +13,7 @@ class CawanganAR extends Model
|
||||
'kodcaw',
|
||||
'syarikat',
|
||||
'min',
|
||||
'max'
|
||||
'max',
|
||||
'penyelarasan'
|
||||
];
|
||||
}
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Exception;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
|
||||
class DailyAkru extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'akru:daily {--zone=1 : Choose which zone to update zone [1,2,3]}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Generate Daily Akrual For Trial Balance';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$zone = $this->option('zone');
|
||||
|
||||
|
||||
if($zone < 1 || $zone > 3)
|
||||
{
|
||||
throw new Exception('The zone is not in the range!');
|
||||
}
|
||||
|
||||
$updateAkruDaily = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/admin/laporan/akrual/generateDaily',[
|
||||
'zone' => $zone
|
||||
])->json();
|
||||
|
||||
if($updateAkruDaily == 'succesful')
|
||||
{
|
||||
return 0;
|
||||
}else{
|
||||
return 'failed';
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Exception;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
use App\Services\ImbangdugaServices;
|
||||
|
||||
class DailyImbangDuga extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'imbangduga:daily {--zone=1 : Choose which zone to update [1,2,3]}';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Save Trial Balance in Database Daily';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
private $imbangduga;
|
||||
|
||||
public function __construct(ImbangdugaServices $imbangduga)
|
||||
{
|
||||
$this->imbangduga = $imbangduga;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$array_cawangan = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/cawangan')->json();
|
||||
$zone = $this->option('zone');
|
||||
|
||||
if($zone < 1 || $zone > 3)
|
||||
{
|
||||
throw new Exception('The zone is not in the range!');
|
||||
}
|
||||
|
||||
foreach($array_cawangan as $caw)
|
||||
{
|
||||
if($caw['zone'] == $zone)
|
||||
{
|
||||
$response = $this->imbangduga->OperationImbangDuga($caw['kodcaw']);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@@ -13,11 +13,13 @@ class PendahuluanSerahan implements ShouldBroadcast
|
||||
|
||||
public $pengesahan;
|
||||
public $cawangan;
|
||||
public $kodlaluan;
|
||||
|
||||
public function __construct($pengesahan,$cawangan)
|
||||
public function __construct($pengesahan,$cawangan,$kodlaluan)
|
||||
{
|
||||
$this->pengesahan = $pengesahan;
|
||||
$this->cawangan = $cawangan;
|
||||
$this->kodlaluan = $kodlaluan;
|
||||
}
|
||||
|
||||
public function broadcastOn()
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Services\ImbangdugaServices as ImbanganDuga;
|
||||
|
||||
//Events
|
||||
use App\Events\StatusLiked;
|
||||
use App\Events\NotifikasiPembayaran;
|
||||
@@ -1149,7 +1151,7 @@ class KhazanahController extends Controller
|
||||
|
||||
]);
|
||||
|
||||
event(new PendahuluanSerahan("Lulus",$auth_user['cawangan']));
|
||||
event(new PendahuluanSerahan("Lulus",$auth_user['cawangan'],$request->teller));
|
||||
|
||||
$updaterequest=Http::withOptions(['verify' => config('app.api_verify')])->put(config('api.url').'/api/requestTeller/update/'. $auth_user['cawangan'],[
|
||||
'kodlaluan' => $request->teller,
|
||||
@@ -1229,7 +1231,7 @@ class KhazanahController extends Controller
|
||||
|
||||
]);
|
||||
|
||||
event(new PendahuluanSerahan("Lulus",$auth_user['cawangan']));
|
||||
event(new PendahuluanSerahan("Lulus",$auth_user['cawangan'],$request->teller));
|
||||
|
||||
$updaterequest=Http::withOptions(['verify' => config('app.api_verify')])->put(config('api.url').'/api/requestTeller/update/'. $auth_user['cawangan'],[
|
||||
'kodlaluan' => $request->teller,
|
||||
@@ -3079,7 +3081,7 @@ class KhazanahController extends Controller
|
||||
'kodlaluan'=>$kodlaluan
|
||||
]);
|
||||
|
||||
event(new PendahuluanSerahan("Batal",$auth_user['cawangan']));
|
||||
event(new PendahuluanSerahan("Batal",$auth_user['cawangan'],$kodlaluan));
|
||||
|
||||
return response('Berjaya');
|
||||
}
|
||||
@@ -4109,4 +4111,60 @@ class KhazanahController extends Controller
|
||||
return view('print.laporan_serahmarhun', compact('cawangan_detail','api_url','serahmarhun','cawangan_info','datemula','datehingga','tarikh_cetak'));
|
||||
}
|
||||
|
||||
public function ImbangDugaAkru(){
|
||||
$auth_user = Auth::user();
|
||||
$api_url = config('api.url');
|
||||
|
||||
$cawangan_info = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/cawangan/'. $auth_user['cawangan'])->json();
|
||||
|
||||
return view('khazanah.laporan.imbangduga_akru', compact('cawangan_info','api_url'));
|
||||
}
|
||||
|
||||
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/'. $auth_user['cawangan'])->json();
|
||||
$cawangan = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url').'/api/cawangan/detail/'.$auth_user['cawangan'])->json();
|
||||
$cawangan_detail=$cawangan[0];
|
||||
|
||||
$tarikh_cetak = $current->toDateString();
|
||||
|
||||
$tarikh_imbangan= $current->toDateString();
|
||||
$tarikh_imbangan2= $current->toDateString();
|
||||
|
||||
$tarikh_cetak = $current->toDateString();
|
||||
|
||||
if($request->datetimepicker2 == null){
|
||||
$tarikh_cetak = $current->toDateString();
|
||||
}else{
|
||||
$split_date = explode('-',$request->datetimepicker2);
|
||||
$tarikh_imbangan2 = $request->datetimepicker2;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if($tarikh_imbangan2 < $current->toDateString()){
|
||||
$response = (new ImbanganDuga())->GetImbangDugaBackup($auth_user['cawangan'],$request->datetimepicker2);
|
||||
}else{
|
||||
$response = (new ImbanganDuga())->ViewImbangDugaAROS($auth_user['cawangan'],$tarikh_imbangan2);
|
||||
}
|
||||
|
||||
if($response->getContent() == 'notfound')
|
||||
{
|
||||
return redirect()->route('laporan.imbangdugaakru')->with('error','Tiada Rekod Dijumpai Dalam Imbang Duga Backup!');
|
||||
}
|
||||
|
||||
$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('print.laporan_imbangduga-akru',compact('tarikh_imbangan', 'tarikh_imbangan2','hartasemasa','tanggungansemasa','totalhartasemasa','totaltanggungansemasa','tarikh_cetak','cawangan_info','cawangan','api_url','cawangan_detail'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -24,4 +24,35 @@ class UserController extends Controller
|
||||
return view('user.index_operasi',compact('cawangan_info','api_url','auth_user'));
|
||||
}
|
||||
}
|
||||
|
||||
public function edit(){
|
||||
$api_url = config('api.url');
|
||||
$auth_user = Auth::user();
|
||||
$cawangan_info = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/cawangan/'. $auth_user['cawangan'])->json();
|
||||
|
||||
if($auth_user->roles == 'teller' || $auth_user->roles == 'ppc' || $auth_user->roles == 'pc'){
|
||||
return view('user.edit',compact('cawangan_info','api_url','auth_user'));
|
||||
}else{
|
||||
return view('user.edit_operasi',compact('cawangan_info','api_url','auth_user'));
|
||||
}
|
||||
}
|
||||
|
||||
public function editStore(Request $request){
|
||||
|
||||
|
||||
$validated = $request->validate([
|
||||
'nama' => 'required|max:255',
|
||||
'notel' => 'required|numeric|min:10',
|
||||
]);
|
||||
|
||||
$auth_user = Auth::user();
|
||||
$user = User::find($auth_user->id);
|
||||
|
||||
$user->name = $request->nama;
|
||||
$user->no_telefon = $request->notel;
|
||||
|
||||
$user->save();
|
||||
|
||||
return redirect()->route('profile')->with('success', 'Perubahan Maklumat Pengguna Telah Dikemaskini.');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App;
|
||||
|
||||
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'
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,302 @@
|
||||
<?php
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use App\CawanganAR;
|
||||
use App\ImbangDuga;
|
||||
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 = CawanganAR::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 = CawanganAR::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');
|
||||
|
||||
$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'){
|
||||
$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']);
|
||||
}
|
||||
|
||||
}
|
||||
Vendored
+2
-4
@@ -465,8 +465,7 @@ async function openuptambahdanserah(e)
|
||||
|
||||
var channel = pusher.subscribe('pendahuluanserahan-notice');
|
||||
channel.bind('penserahan-event', function(data) {
|
||||
console.log(data);
|
||||
if(data.pengesahan === 'Lulus' && data.cawangan == kodcaw)
|
||||
if(data.pengesahan === 'Lulus' && data.cawangan == kodcaw && data.kodlaluan == teller)
|
||||
{
|
||||
Swal.fire({
|
||||
icon: 'success',
|
||||
@@ -630,9 +629,8 @@ function tambahdanserahanfunc(e)
|
||||
var channel = pusher.subscribe('pendahuluanserahan-notice');
|
||||
channel.bind('penserahan-event', function(data) {
|
||||
// let message = JSON.stringify(data);
|
||||
console.log(data);
|
||||
|
||||
if(data.pengesahan === 'Lulus' && data.cawangan == kodcaw)
|
||||
if(data.pengesahan === 'Lulus' && data.cawangan == kodcaw && data.kodlaluan == teller)
|
||||
{
|
||||
Swal.fire({
|
||||
icon: 'success',
|
||||
|
||||
@@ -8,13 +8,17 @@
|
||||
@if($countproses > 0)
|
||||
<script>
|
||||
Swal.fire({
|
||||
title: 'Memuatkan...',
|
||||
allowEscapeKey: false,
|
||||
title: 'Tunggu Pengesahan Daripada Khazanah.',
|
||||
icon: 'info',
|
||||
width: 600,
|
||||
padding: '3em',
|
||||
background: '#fffff',
|
||||
showCancelButton: false,
|
||||
showConfirmButton: false,
|
||||
allowOutsideClick: false,
|
||||
didOpen: () => {
|
||||
Swal.showLoading()
|
||||
}
|
||||
});
|
||||
allowEscapeKey: false,
|
||||
allowEnterKey: false
|
||||
})
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@@ -31,7 +35,7 @@
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">Home</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">Aliran Tunai</li>
|
||||
</ol>
|
||||
</nav>
|
||||
</nav>
|
||||
|
||||
|
||||
<div class="row justify-content-center">
|
||||
@@ -561,7 +565,6 @@
|
||||
|
||||
function cetakserahankeseluruhan()
|
||||
{
|
||||
console.log('ets');
|
||||
let urlroute = '{{ route("laporan.serahanteller") }}';
|
||||
|
||||
window.open(urlroute, '_blank');
|
||||
|
||||
@@ -260,6 +260,7 @@
|
||||
<script>
|
||||
var api_url = "<?php echo $api_url ?>";
|
||||
var cawangan = "{{ Auth::user()->cawangan }}";
|
||||
var teller = "{{ Auth::user()->name }}";
|
||||
|
||||
var total_marhun_pilih = 0;
|
||||
|
||||
@@ -630,10 +631,9 @@
|
||||
});
|
||||
|
||||
|
||||
var channel = pusher.subscribe('status-liked');
|
||||
channel.bind('my-event', function(data) {
|
||||
|
||||
if(cawangan == data.cawangan)
|
||||
var channel = pusher.subscribe('notice-ubahhapus');
|
||||
channel.bind('my-ubahhapus', function(data) {
|
||||
if(norujukan == data.norujukan && teller == data.teller && data.kelulusan == 'lulus')
|
||||
{
|
||||
Swal.fire({
|
||||
icon: 'success',
|
||||
@@ -641,6 +641,12 @@
|
||||
}).then(function(){
|
||||
$("#print_submit_belum_serah").submit();
|
||||
});
|
||||
}else{
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: 'Tidak Berjaya',
|
||||
text: data.komen
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<a class="btn btn-info btn-lg" href="#" onclick="pelangganclick()">PELANGGAN</a>
|
||||
<a class="btn btn-info btn-lg" href="{{ url('/harga_emas') }}">HARGA EMAS</a>
|
||||
<a class="btn btn-info btn-lg" href="{{ url('/aliran_tunai') }}">ALIRAN TUNAI</a>
|
||||
<a class="btn btn-info btn-lg" href="#">TETAPAN</a>
|
||||
{{-- <a class="btn btn-info btn-lg" href="#">TETAPAN</a> --}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -155,6 +155,7 @@
|
||||
<th>Margin</th>
|
||||
<th>Tempoh</th>
|
||||
<th>Keuntungan</th>
|
||||
<th>Lelong</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -170,6 +171,7 @@
|
||||
<th>Pembiayaan</th>
|
||||
<th>Margin</th>
|
||||
<th>Tempoh</th>
|
||||
<th>Lelong</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
@@ -507,6 +509,11 @@
|
||||
if(jenistebus == "belum_tebus"){
|
||||
var urlroute = '{{ route("penebusan.khazanah", ":id") }}';
|
||||
urlroute = urlroute.replace(':id', gadai_detail["norujukan"]);
|
||||
if(gadai_detail['taglel'] == 1){
|
||||
var taglel = 'Akan Dilelong';
|
||||
}else{
|
||||
var taglel = '';
|
||||
}
|
||||
if(gadai_detail["bakihargajualan"] == null){
|
||||
xtawarruq.row.add([
|
||||
'<input type="radio" value='+ gadai_detail["norujukan"] +' name="belum"/>',
|
||||
@@ -515,7 +522,8 @@
|
||||
gadai_detail['t_matang'],
|
||||
'RM '+formatter.format(gadai_detail['pinjaman']),
|
||||
(((Number(gadai_detail['pinjaman'])/Number(gadai_detail['nilaimarhun']))*100).toFixed(2)).toLocaleString("en-GB") + '%',
|
||||
gadai_detail['tempoh']
|
||||
gadai_detail['tempoh'],
|
||||
taglel
|
||||
]).draw();
|
||||
}else{
|
||||
if(gadai_detail['lelong_tawarruq'] == 0){
|
||||
@@ -532,7 +540,8 @@
|
||||
'RM '+formatter.format(gadai_detail['bakipjm']),
|
||||
(((Number(gadai_detail['pinjaman'])/Number(gadai_detail['nilaimarhun']))*100).toFixed(2)).toLocaleString("en-GB") + '%',
|
||||
gadai_detail['tempoh'],
|
||||
'RM '+ upahsemasa
|
||||
'RM '+ upahsemasa,
|
||||
taglel
|
||||
]).draw();
|
||||
}
|
||||
}else if(jenistebus == "sudah_tebus"){
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
|
||||
<div class="card">
|
||||
<nav aria-label="breadcrumb">
|
||||
<ol class="breadcrumb pb-3">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">Home</a></li>
|
||||
<li class="breadcrumb-item"><a href="{{ route('laporan') }}">Laporan</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">Imbang Duga Akru</li>
|
||||
</ol>
|
||||
</nav>
|
||||
|
||||
<div class="card-body text-center">
|
||||
@if(session()->has('error'))
|
||||
<div class="alert alert-danger">
|
||||
{{ session()->get('error') }}
|
||||
</div>
|
||||
@endif
|
||||
<div class="row form-group">
|
||||
<div class="col-md-2"></div>
|
||||
<div class="col-md-15"></div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<form method="post" onsubmit="loadingmodal()">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-sm-2">Tarikh</div>
|
||||
<div class="col-sm-4"><input type="text" class="form-control" placeholder="Pilih Tarikh" aria-label="Tarikh" id="datetimepicker2" name="datetimepicker2" autocomplete="off" aria-describedby="basic-addon1"></div>
|
||||
</div>
|
||||
<br>
|
||||
<div class="row">
|
||||
<div class="col-sm-3"></div>
|
||||
<div class="col-sm-1"> <input type="submit" class="btn btn-success ml-md-1" id="submit_button" name="submit_button" value="Cetak Laporan " formaction="{{route('imbangdugaakru.cetak')}}"></div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var api_url = "<?php echo $api_url ?>";
|
||||
var kodcaw = "<?php echo $cawangan_info['kodcaw'] ?>";
|
||||
|
||||
$(document).ready( function () {
|
||||
var dateToday = new Date();
|
||||
$('#datetimepicker2').datepicker({
|
||||
format: 'dd-mm-yyyy',
|
||||
});
|
||||
$('#datetimepicker2').datepicker('setStartDate', new Date(2022,11,19));
|
||||
$('#datetimepicker2').datepicker('setEndDate', new Date());
|
||||
|
||||
});
|
||||
|
||||
function loadingmodal()
|
||||
{
|
||||
Swal.fire({
|
||||
title: 'Memuatkan...',
|
||||
allowEscapeKey : false,
|
||||
allowOutsideClick: false,
|
||||
didOpen: function () {
|
||||
Swal.showLoading()
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
|
||||
@@ -111,6 +111,9 @@
|
||||
{{-- <div class="row">
|
||||
<a href="{{ route('laporan.auditcustomer') }}" class="btn btn-dark btn-lg btn-block mb-3">Audit Customer</a>
|
||||
</div> --}}
|
||||
<div class="row">
|
||||
<a href="{{ route('laporan.imbangdugaakru') }}" class="btn btn-dark btn-lg btn-block mb-3">Imbang Duga Akru</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -550,7 +550,7 @@ function ubahwakil(e)
|
||||
}
|
||||
|
||||
|
||||
let batchno = $('#batch').val();let teller = "{{ Auth::user()->name }}";let bakipjm = $('#pembiayaan').val().replace(/[^0-9.-]+/g,"");let bakiupah = $('#keuntungan').val();
|
||||
let batchno = $('#batch').val();let teller = "{{ Auth::user()->name }}";let bakipjm = $('#pembiayaan').val().replace(/[^0-9.-]+/g,"");let bakiupah = $('#keuntungan').val().replace(/[^0-9.-]+/g,"");
|
||||
let cajlain = 0.00; let cajlelong = $('#cajlelong').val();
|
||||
let jumlah = $('#jumlah').val().replace(/[^0-9.-]+/g,"");let hargajual = $('#hargajual').val().replace(/[^0-9.-]+/g,"");
|
||||
|
||||
|
||||
@@ -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>
|
||||
@@ -89,8 +89,8 @@
|
||||
|
||||
@endphp
|
||||
<tr>
|
||||
<td>di <b>{{ strtoupper($daerah['namadaerah']) }} </b> </td>
|
||||
<td class="tableright">)</td>
|
||||
<td></td>
|
||||
<td class="tableright"></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<nav aria-label="breadcrumb">
|
||||
<ol class="breadcrumb pb-3">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">Home</a></li>
|
||||
<li class="breadcrumb-item"><a href="{{ route('profile') }}">Maklumat Pengguna</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">Ubah Maklumat Pengguna</li>
|
||||
</ol>
|
||||
</nav>
|
||||
<div class="card">
|
||||
<form method="post" name="frmedit" action="{{ route('profile.editstore') }}">
|
||||
@csrf
|
||||
<div class="card-body text-center">
|
||||
<div class="col-md-12" style="margin-right:auto;margin-left:auto">
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">Nama</div>
|
||||
<div class="col-md-6"><input type="text" name="nama" class="form-control @error('nama') is-invalid @enderror" value="{{ strtoupper($auth_user->name) }}">
|
||||
@error('nama') <span class="text-danger">{{ $message }}</span> @enderror
|
||||
</div>
|
||||
<div class="col-md-6">No Telefon</div>
|
||||
<div class="col-md-6"><input type="text" name="notel" class="form-control @error('notel') is-invalid @enderror" value="{{ $auth_user->no_telefon }}">
|
||||
@error('notel') <span class="text-danger">{{ $message }}</span> @enderror
|
||||
</div>
|
||||
<div class="col-md-6">Email</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->email }}"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">No Kad Pengenalan</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->no_kp }}"></div>
|
||||
<div class="col-md-6">Jawatan</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ strtoupper($auth_user->role_harian) }}"></div>
|
||||
<div class="col-md-6">Baki Perubatan</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ 'RM '. number_format($auth_user->perubatan,2) }}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary">Kemaskini Profil</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -0,0 +1,49 @@
|
||||
@extends('layouts.app_operasi')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<nav aria-label="breadcrumb">
|
||||
<ol class="breadcrumb pb-3">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">Home</a></li>
|
||||
<li class="breadcrumb-item"><a href="{{ route('profile') }}">Maklumat Pengguna</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">Ubah Maklumat Pengguna</li>
|
||||
</ol>
|
||||
</nav>
|
||||
<div class="card">
|
||||
<div class="card-body text-center">
|
||||
<div class="col-md-12" style="margin-right:auto;margin-left:auto">
|
||||
<form action="{{ route('profile.editstore') }}" method="post">
|
||||
@csrf
|
||||
<div class="row form-group">
|
||||
<div class="col-md-12">
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">NAMA</div>
|
||||
<div class="col-md-6"><input type="text" name="nama" class="form-control @error('nama') is-invalid @enderror" value="{{ $auth_user->name }}">
|
||||
@error('nama') <span class="text-danger">{{ $message }}</span> @enderror
|
||||
</div>
|
||||
<div class="col-md-6">NO TELEFON</div>
|
||||
<div class="col-md-6"><input type="text" name="notel" class="form-control @error('notel') is-invalid @enderror" value="{{ $auth_user->no_telefon }}">
|
||||
@error('notel') <span class="text-danger">{{ $message }}</span> @enderror
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">NO KP</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->no_kp }}"></div>
|
||||
<div class="col-md-6">JAWATAN</div>
|
||||
<div class="col-md-6"><input type="text" class="form-control" readonly value="{{ $auth_user->roles }}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-primary">Kemaskini Profil</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@@ -13,6 +13,10 @@
|
||||
<div class="card">
|
||||
<div class="card-body text-center">
|
||||
<div class="col-md-12" style="margin-right:auto;margin-left:auto">
|
||||
|
||||
@if(Session::has('success'))
|
||||
<div class="alert alert-success mt-2">{{ Session::get('success') }} </div>
|
||||
@endif
|
||||
<div class="row form-group">
|
||||
<div class="col-md-6">
|
||||
<div class="row form-group">
|
||||
@@ -36,6 +40,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a href="{{ route('profile.edit') }}" class="btn btn-primary">Kemaskini Profil</a>
|
||||
<a href="{{ route('user.password') }}" class="btn btn-primary">Kemaskini Katalaluan</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a href="{{ route('profile.edit') }}" class="btn btn-primary">Kemaskini Profil</a>
|
||||
<a href="{{ route('user.password') }}" class="btn btn-primary">Kemaskini Katalaluan</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
@extends('layouts.app')
|
||||
@extends('layouts.app_operasi')
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
@@ -23,7 +23,7 @@
|
||||
@endforeach
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">Current Password</label>
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">Kata Laluan Semasa</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control" name="current_password" autocomplete="current-password">
|
||||
@@ -31,7 +31,7 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">New Password</label>
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">Kata Laluan Baru</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="new_password" type="password" class="form-control" name="new_password" autocomplete="current-password">
|
||||
@@ -39,7 +39,7 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">New Confirm Password</label>
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">Sahkan Kata Laluan Baru</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="new_confirm_password" type="password" class="form-control" name="new_confirm_password" autocomplete="current-password">
|
||||
|
||||
+10
-3
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
use App\Services\ImbangdugaServices;
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Web Routes
|
||||
@@ -15,9 +15,11 @@ use Illuminate\Support\Facades\Route;
|
||||
|
||||
Route::get('/',['as'=>'login','uses'=>'HomeController@index']);
|
||||
|
||||
Route::get('/testtry',function(){
|
||||
Route::get('/testtry',function(ImbangdugaServices $imbangduga){
|
||||
|
||||
return view('testing');
|
||||
// return view('testing');
|
||||
$test = $imbangduga->OperationImbangDuga('KB2');
|
||||
dd($test->getContent());
|
||||
});
|
||||
|
||||
|
||||
@@ -82,6 +84,8 @@ Route::put('/aliran_tunai/Tebusan',['as'=>'alirantunai.tebus','uses' => 'AliranT
|
||||
Route::put('/aliran_tunai/advansur',['as'=>'alirantunai.advansur','uses' => 'AliranTunaiController@alirantunaiUpahBknTawarruq'])->middleware('auth','teller');
|
||||
Route::get('/harga_emas','HargaEmasController@index')->middleware('auth','teller');
|
||||
Route::get('/profile',['as'=>'profile','uses'=>'UserController@index'])->middleware('auth');
|
||||
Route::get('/profile/edit',['as'=>'profile.edit','uses'=>'UserController@edit'])->middleware('auth');
|
||||
Route::post('/profile/edit/store',['as'=>'profile.editstore','uses'=>'UserController@editStore'])->middleware('auth');
|
||||
Route::get('/customer/search',['as'=>'customer.search','uses'=>'CustomersController@search'])->middleware('auth','teller');
|
||||
Route::post('/customer/store',['as'=>'customer.store','uses'=>'CustomersController@store'])->middleware('auth','teller');
|
||||
Route::post('/gadai/store',['as'=>'gadai.store','uses'=>'GadaianController@store'])->middleware('auth','teller');
|
||||
@@ -333,6 +337,9 @@ route::post('/cetaklejer_am',['as'=>'cetak.lejer_am', 'uses'=>'KhazanahControlle
|
||||
Route::get('laporan/dataimbangduga',['as'=> 'laporan.imbangduga' , 'uses'=>'KhazanahController@laporanImbangduga' ])->middleware('auth','khazanah');
|
||||
Route::post('/laporan/imbangduga',['as' =>'imbangduga.cetak', 'uses'=>'KhazanahController@cetakImbangDuga'])->middleware('auth', 'khazanah');
|
||||
|
||||
Route::get('laporan/imbangduga-akru',['as'=> 'laporan.imbangdugaakru' , 'uses'=>'KhazanahController@ImbangDugaAkru' ])->middleware('auth','khazanah');
|
||||
Route::post('/laporan/cetak/imbangduga-akru',['as' =>'imbangdugaakru.cetak', 'uses'=>'KhazanahController@cetakimbangdugaAkru'])->middleware('auth', 'khazanah');
|
||||
|
||||
Route::get('khazanah/jana_permohonan',['as'=> 'permohonan.jana' , 'uses'=>'KhazanahController@JanaPermohonan' ])->middleware('auth','khazanah');
|
||||
Route::post('khazanah/jana_permohonan/proses_permohonan',['as'=> 'permohonan.proses' , 'uses'=>'KhazanahController@ProsesPermohonan'])->middleware('auth','khazanah');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user