436 lines
14 KiB
PHP
436 lines
14 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Lelong;
|
|
use App\Cawangan;
|
|
use App\Gadai;
|
|
use App\TuntutBaki;
|
|
use App\WTD;
|
|
use App\GlCode;
|
|
use App\imbangdugalama;
|
|
use App\AnsRugi;
|
|
use App\SerahBaki;
|
|
use Illuminate\Http\Request;
|
|
|
|
|
|
use Carbon\Carbon;
|
|
|
|
class LelongController extends Controller
|
|
{
|
|
|
|
public function showAllLelongs()
|
|
{
|
|
$cawangan_all = Cawangan::on('mysql7')->get();
|
|
$lelong_all = [];
|
|
foreach ($cawangan_all as $index => $cawangan){
|
|
$lelong = Lelong::on($cawangan['mysql'])->get();
|
|
if(sizeof($lelong) != 0){
|
|
array_push($lelong_all,$lelong);
|
|
}
|
|
}
|
|
return response()->json($lelong_all);
|
|
}
|
|
|
|
public function showAllLelongByCawangan($kodcaw)
|
|
{
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
$lelong = Lelong::on($cawangan['mysql'])->get();
|
|
return response()->json($lelong);
|
|
}
|
|
|
|
public function showLelongByNoRujukan($kodcaw,$norujukan)
|
|
{
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$lelong = Lelong::on($cawangan['mysql'])
|
|
->where('norujukan','=',$norujukan)
|
|
->get();
|
|
|
|
return response()->json($lelong);
|
|
}
|
|
|
|
public function showBakiLelong($noic,$jenislelong)
|
|
{
|
|
$cawangan_all = Cawangan::on('mysql7')->get();
|
|
$bakilelongtotal = 0;
|
|
$rugilelongtotal = 0;
|
|
|
|
if($jenislelong == 'baki')
|
|
{
|
|
foreach($cawangan_all as $index=>$cawangan){
|
|
$bakilelong = Gadai::on($cawangan['mysql'])
|
|
->where([['gadai.sttebus','=', 'L'],['gadai.nokp','=',$noic],['lelong.baki','not like', '-%']])
|
|
->whereNull('lelong.trkhtuntut')
|
|
->rightJoin('lelong', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->sum('baki');
|
|
|
|
if($bakilelong != 0){
|
|
$bakilelongtotal += $bakilelong;
|
|
}
|
|
}
|
|
|
|
return response()->json($bakilelongtotal, 200);
|
|
|
|
}
|
|
|
|
else if($jenislelong == 'rugi')
|
|
{
|
|
foreach($cawangan_all as $index=>$cawangan){
|
|
$rugilelong = Gadai::on($cawangan['mysql'])
|
|
->where([['gadai.sttebus','=', 'L'],['gadai.nokp','=',$noic],['lelong.baki','like', '-%']])
|
|
->whereNull('lelong.trkhtuntut')
|
|
->rightJoin('lelong', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->sum('baki');
|
|
|
|
if($rugilelong != 0){
|
|
$rugilelongtotal += $rugilelong;
|
|
}
|
|
}
|
|
|
|
return response()->json($rugilelongtotal, 200);
|
|
}
|
|
|
|
}
|
|
|
|
public function showBakiLelongEachCawangan($kodcaw,$noic,$jenislelong)
|
|
{
|
|
$cawangan_all = Cawangan::on('mysql7')->get();
|
|
$bakilelongtotal = 0;
|
|
$rugilelongtotal = 0;
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
if($jenislelong == 'baki')
|
|
{
|
|
$bakilelong = Gadai::on($cawangan['mysql'])
|
|
->where([['gadai.sttebus','=', 'L'],['gadai.nokp','=',$noic],['lelong.baki','not like', '-%']])
|
|
->whereNull('lelong.trkhtuntut')
|
|
->rightJoin('lelong', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->sum('baki');
|
|
|
|
if($bakilelong != 0){
|
|
$bakilelongtotal += $bakilelong;
|
|
}
|
|
|
|
|
|
return response()->json($bakilelongtotal, 200);
|
|
|
|
}
|
|
|
|
else if($jenislelong == 'rugi')
|
|
{
|
|
$rugilelong = Gadai::on($cawangan['mysql'])
|
|
->where([['gadai.sttebus','=', 'L'],['gadai.nokp','=',$noic],['lelong.baki','like', '-%']])
|
|
->whereNull('lelong.trkhtuntut')
|
|
->rightJoin('lelong', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->sum('baki');
|
|
|
|
if($rugilelong != 0){
|
|
$rugilelongtotal += $rugilelong;
|
|
}
|
|
|
|
|
|
return response()->json($rugilelongtotal, 200);
|
|
}
|
|
|
|
}
|
|
|
|
public function BakiLelongCalculation($kodcaw,Request $request)
|
|
{
|
|
|
|
$tarikhbaru = $request->tarikh;
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
|
|
// $bakilelonglama = imbangdugalama::on($cawangan['mysql'])
|
|
// ->sum('baki_lelong');
|
|
|
|
// $rugilelonglama = imbangdugalama::on($cawangan['mysql'])
|
|
// ->sum('rugi_lelong');
|
|
|
|
|
|
if($kodcaw == 'KB2')
|
|
{
|
|
if($request->tarikh <= '2021-02-25')
|
|
{
|
|
$bakilelong = Lelong::on($cawangan['mysql'])
|
|
->where('t_jual','<=',$request->tarikh)
|
|
->where(function($query) use ($tarikhbaru){
|
|
$query->whereNull('trkhtuntut')
|
|
->orWhere('trkhtuntut','>',$tarikhbaru);
|
|
})
|
|
->where('baki','>=',0)
|
|
->sum('baki');
|
|
}else{
|
|
$bakilelong = Lelong::on($cawangan['mysql'])
|
|
->where('t_jual','<=',$request->tarikh)
|
|
->where(function($query) use ($tarikhbaru){
|
|
$query->whereNull('trkhtuntut')
|
|
->orWhere('trkhtuntut','>','2021-02-25');
|
|
})
|
|
->where('baki','>=',0)
|
|
->sum('baki');
|
|
}
|
|
}else{
|
|
$bakilelong = Lelong::on($cawangan['mysql'])
|
|
->where('t_jual','<=',$request->tarikh)
|
|
->where(function($query) use ($tarikhbaru){
|
|
$query->whereNull('trkhtuntut')
|
|
->orWhere('trkhtuntut','>',$tarikhbaru);
|
|
})
|
|
->where('baki','>=',0)
|
|
->sum('baki');
|
|
}
|
|
|
|
$ansrugi = AnsRugi::on($cawangan['mysql'])
|
|
->sum('bayaran');
|
|
|
|
$rugilelong = Lelong::on($cawangan['mysql'])
|
|
->where('t_jual','<=',$request->tarikh)
|
|
->where(function($query) use ($tarikhbaru)
|
|
{
|
|
$query->whereNull('trkhtuntut')
|
|
->orWhere('trkhtuntut','>',$tarikhbaru);
|
|
})
|
|
->where('baki','<',0)
|
|
->sum('baki');
|
|
|
|
$rugitotal=$rugilelong + $ansrugi;
|
|
|
|
if($kodcaw == 'APM')
|
|
$bakilelong += 4498.1;
|
|
|
|
if($kodcaw == '010617')
|
|
$rugitotal -= 6.1;
|
|
|
|
if($kodcaw == '011229'){
|
|
$rugitotal -= 919.7;
|
|
$bakilelong -= 144;
|
|
}
|
|
|
|
if($kodcaw == '011412')
|
|
$rugitotal -= 7248.4;
|
|
|
|
$arraylelong = ['bakilelong' => $bakilelong, 'rugilelong' => $rugitotal];
|
|
|
|
return response()->json($arraylelong,200);
|
|
}
|
|
|
|
public function BilAkanDilelong($noic)
|
|
{
|
|
$cawangan_all = Cawangan::on('mysql7')->get();
|
|
|
|
$akanlelongarray = [];
|
|
|
|
foreach($cawangan_all as $index=>$cawangan){
|
|
$akanlelong = Gadai::on($cawangan['mysql'])
|
|
->where([['sttebus','=', ''],['nokp','=',$noic],['hargajual','=', 0]])
|
|
->rightJoin('lelong', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->get();
|
|
|
|
if(sizeof($akanlelong) != 0){
|
|
array_push($akanlelongarray,$akanlelong);
|
|
}
|
|
}
|
|
|
|
return response()->json($akanlelongarray);
|
|
}
|
|
|
|
|
|
|
|
public function create(Request $request)
|
|
{
|
|
$lelong = Lelong::create($request->all());
|
|
|
|
return response()->json($lelong, 201);
|
|
}
|
|
|
|
public function update($id, Request $request)
|
|
{
|
|
$lelong = Lelong::findOrFail($id);
|
|
$lelong->update($request->all());
|
|
|
|
return response()->json($lelong, 200);
|
|
}
|
|
|
|
public function delete($id)
|
|
{
|
|
Lelong::findOrFail($id)->delete();
|
|
return response('Deleted Successfully', 200);
|
|
}
|
|
|
|
|
|
public function getLaporanLelongan($kodcaw,$tarikh){
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$lelong = Lelong::on($cawangan['mysql'])
|
|
->where('t_lelong','=',$tarikh)
|
|
->whereNotNull('t_jual')
|
|
->leftJoin('pembeli', 'pembeli.nopembeli', '=', 'Lelong.nopembeli')
|
|
->orderBy('t_lelong')
|
|
->get();
|
|
|
|
return response()->json($lelong);
|
|
}
|
|
|
|
public function simpantuntutbaki($kodcaw,Request $request){
|
|
|
|
$current = Carbon::now();
|
|
$current = new Carbon();
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$tuntutbaki = TuntutBaki::on($cawangan['mysql'])->create([
|
|
'batchno' => $request->batchno,
|
|
'jenis' => $request->jenis,
|
|
'kodcaw' => $kodcaw,
|
|
'norujukan' => $request->norujukan,
|
|
'tarikh' => $current->toDateString(),
|
|
'prkod' => "01",
|
|
'teller' => $request->teller,
|
|
'bakipjm' => $request->bakipjm,
|
|
'bakiupah' => $request->bakiupah,
|
|
'cajlain' => $request->cajlain,
|
|
'cajlelong' => $request->cajlelong,
|
|
'kodgl' => "1000/013",
|
|
'glcode' => "1000/010",
|
|
'terima' => "*",
|
|
'f_lulus' => "L",
|
|
'jumlah' => $request->jumlah,
|
|
'nowakil' => $request->nowakil,
|
|
'hargajual' => $request->hargajual
|
|
]);
|
|
|
|
return response()->json($tuntutbaki,200);
|
|
}
|
|
|
|
public function updatetagtbaki($kodcaw,$norujukan){
|
|
|
|
$current = Carbon::now();
|
|
$current = new Carbon();
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$gadai=Gadai::on($cawangan['mysql'])
|
|
->where('norujukan','=',$norujukan)
|
|
->update(
|
|
array('tagtbaki'=> 0));
|
|
|
|
$lelong=Lelong::on($cawangan['mysql'])
|
|
->where('norujukan','=',$norujukan)
|
|
->update(
|
|
array('trkhtuntut'=> $current->toDateString(),
|
|
't_update' => $current->toDateString()));
|
|
|
|
|
|
if($gadai == 1 && $lelong == 1)
|
|
{
|
|
return response('Berjaya', 200);
|
|
}else{
|
|
return response('Gagal', 200);
|
|
}
|
|
|
|
}
|
|
|
|
public function showTuntutBaki($kodcaw){
|
|
|
|
$current = Carbon::now();
|
|
$current = new Carbon();
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$tuntutbaki = TuntutBaki::on($cawangan['mysql'])
|
|
->where('tarikh','=', $current->toDateString())
|
|
->get();
|
|
|
|
return response()->json($tuntutbaki,200);
|
|
}
|
|
|
|
public function showTuntutBakiTeller($kodcaw,Request $request){
|
|
|
|
$current = Carbon::now();
|
|
$current = new Carbon();
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$tuntutbaki = TuntutBaki::on($cawangan['mysql'])
|
|
->where('tarikh','=', $current->toDateString())
|
|
->where('teller','=', $request->teller)
|
|
->get();
|
|
|
|
return response()->json($tuntutbaki,200);
|
|
}
|
|
|
|
public function resitLelong($kodcaw,$norujukan){
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$lelong = Lelong::on($cawangan['mysql'])
|
|
->select('tuntutbaki.batchno','tuntutbaki.tarikh','tuntutbaki.bakipjm','tuntutbaki.bakiupah','tuntutbaki.recno','lelong.t_lelong','tuntutbaki.norujukan','customer.nama','customer.kpbaru','tuntutbaki.hargajual','tuntutbaki.jumlah','tuntutbaki.cajlelong','lelong.pinjaman')
|
|
->where('lelong.norujukan','=',$norujukan)
|
|
->whereNotNull('lelong.trkhtuntut')
|
|
->leftJoin('tuntutbaki', 'tuntutbaki.norujukan', '=', 'lelong.norujukan')
|
|
->leftJoin('gadai', 'gadai.norujukan', '=', 'lelong.norujukan')
|
|
->leftJoin('customer', 'customer.kpbaru', '=', 'gadai.nokp')
|
|
->orderBy('tuntutbaki.tarikh')
|
|
->first();
|
|
|
|
return response()->json($lelong,200);
|
|
}
|
|
|
|
public function calculationwtd($kodcaw,Request $request)
|
|
{
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
|
|
$wtd = WTD::on($cawangan['mysql'])
|
|
->where('tarikh','<=', $request->tarikh)
|
|
->sum('wtd');
|
|
|
|
return response()->json($wtd,200);
|
|
}
|
|
|
|
public function calculationserahbaki($kodcaw,Request $request)
|
|
{
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
|
|
$serahbaki = SerahBaki::on($cawangan['mysql'])
|
|
->where('tarikh','<=', $request->tarikh)
|
|
->sum('baki');
|
|
|
|
return response()->json($serahbaki,200);
|
|
}
|
|
|
|
public function cajlelongcalculation($kodcaw,Request $request)
|
|
{
|
|
$current = Carbon::now();
|
|
|
|
$current = new Carbon($request->tarikh);
|
|
|
|
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$cajlelong = Lelong::on($cawangan['mysql'])
|
|
->whereNotNull('t_jual')
|
|
->where([['t_jual','<=', $request->tarikh],['t_jual','>','2014-12-31']])
|
|
->whereYear('t_jual','=',$current->year)
|
|
->sum('cajlelong');
|
|
|
|
return response()->json($cajlelong,200);
|
|
}
|
|
|
|
public function cajperkhidmatancalculation($kodcaw,Request $request)
|
|
{
|
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
|
|
|
$cajperkhidmatan = GlCode::on($cawangan['mysql'])
|
|
->where('glcode','=','7000/500')
|
|
->sum('amaun');
|
|
|
|
return response()->json($cajperkhidmatan,200);
|
|
}
|
|
|
|
}
|