This commit is contained in:
afiq
2021-09-28 10:03:01 +08:00
parent 5ac8c01a71
commit fa7649d9d9
6 changed files with 335 additions and 74 deletions
+232 -60
View File
@@ -21,6 +21,8 @@ use App\Komuditi;
use App\KawalanStokLama;
use App\KawalanStok;
use App\Moratorium;
use App\Audit;
use App\Customer;
use Illuminate\Http\Request;
@@ -216,6 +218,9 @@ class GadaiController extends Controller
$cawangan = Cawangan::on('mysql7')
->where('kodcaw','=',$request->kodcaw)
->first();
if($request->transaction == 'Ubah Gadai'){
$old_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
}
$gadai = Gadai::on($cawangan['mysql'])
->where('norujukan','=',$norujukan)
->update(array(
@@ -244,6 +249,22 @@ class GadaiController extends Controller
'tempohbayar' => 0.00,
'lelong_tawarruq' => 1
));
$new_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
$audit = new Audit();
$audit->users = $request->teller;
$audit->actions = $request->transaction;
$audit->norujukan = $norujukan;
$audit->new_data = $new_data;
if($request->transaction == 'Ubah Gadai'){
$audit->old_data = $old_data;
}
$audit->kodcaw = $request->kodcaw;
$audit->created_at = $current;
$audit->updated_at = $current;
$audit->save();
return response()->json($gadai, 200);
}
@@ -384,6 +405,8 @@ class GadaiController extends Controller
$lelong_tawarruq = 1;
}
$old_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
$baki_hargajualan = $gadai['bakihargajualan'] - $request->bayaran;
$baki_bayaran = $request->bayaran - $upahsemasa;
@@ -418,6 +441,20 @@ class GadaiController extends Controller
'tempohbayar' => $gadai['tempoh'],
'lelong_tawarruq' => $lelong_tawarruq
));
$new_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
$audit = new Audit();
$audit->users = $request->teller;
$audit->actions = 'Bayaran Ansuran';
$audit->norujukan = $norujukan;
$audit->new_data = $new_data;
$audit->old_data = $old_data;
$audit->kodcaw = $kodcaw;
$audit->created_at = $current;
$audit->updated_at = $current;
$audit->save();
return response()->json($update_gadai, 200);
}
@@ -456,9 +493,21 @@ class GadaiController extends Controller
public function batalGadai($kodcaw, $norujukan){
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
$old_data = Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->first();
Gadai::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->delete();
Marhun::on($cawangan['mysql'])->where('norujukan','=',$norujukan)->delete();
$audit = new Audit();
$audit->users = $request->teller;
$audit->actions = $request->transaction;
$audit->norujukan = $norujukan;
$audit->old_data = $old_data;
$audit->kodcaw = $request->kodcaw;
$audit->created_at = $current;
$audit->updated_at = $current;
$audit->save();
return response('Batal Berjaya', 200);
}
@@ -575,17 +624,34 @@ class GadaiController extends Controller
public function getLaporanGadai($kodcaw,$tarikh){
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
$gadai = Gadai::on($cawangan['mysql'])
->select('gadai.t_gadai','gadai.norujukan','cust.nama','gadai.nokp','gadai.semakbarcode','gadai.masa','gadai.berat','gadai.nilaimarhun','gadai.pinjaman','gadai.upah12','gadai.percentpinj','cust.alamat1','gadai.teller')
->join('online_arrahn.customer as cust', function($join)
{
$join->on('gadai.nokp', '=', 'cust.kpbaru');
$join->orOn('gadai.nokp', '=', 'cust.kplama');
})
->where('gadai.t_gadai','=',$tarikh)
->orderBy('gadai.teller')
->orderBy('gadai.sirig')
->get();
$gadai_data = Gadai::on($cawangan['mysql'])->select('t_gadai','norujukan','nokp','semakbarcode','masa','berat','nilaimarhun','pinjaman','upah12','percentpinj','teller','nokp')
->where('t_gadai','=',$tarikh)
->orderBy('teller')
->orderBy('sirig')
->get();
$gadai = [];
if($gadai_data){
foreach($gadai_data as $index=>$gadaiData){
$customer_info = Customer::on('mysql7')->where('kplama','=',$gadaiData['nokp'])->orWhere('kpbaru','=',$gadaiData['nokp'])->first();
array_push($gadai,[
"t_gadai"=> $gadaiData['t_gadai'],
"norujukan"=> $gadaiData['norujukan'],
"nama"=> $customer_info['nama'],
"nokp"=> $gadaiData['nokp'],
"semakbarcode"=> $gadaiData['semakbarcode'],
"masa"=> $gadaiData['masa'],
"berat"=> $gadaiData['berat'],
"nilaimarhun"=> $gadaiData['nilaimarhun'],
"pinjaman"=> $gadaiData['pinjaman'],
"upah12"=> $gadaiData['upah12'],
"percentpinj"=> $gadaiData['percentpinj'],
"alamat1"=> $customer_info['alamat1'],
"teller"=> $gadaiData['teller']
]);
}
}
return response()->json($gadai);
}
@@ -935,8 +1001,8 @@ class GadaiController extends Controller
$dateans = new Carbon($request->tarikh);
$ansuran = Transaction::on('mysql7')
->select('transaction.norujukan','trans.tarikh_bayaran','transaction.nokp','transaction.kodcaw','transaction.trans_type','cust.nama','db2.tempoh','db2.bakipjm','trans.bayaran_pembiayaan','transaction.duit_masuk','trans.bayaran_keuntungan','transaction.teller')
$ansuran_data = Transaction::on('mysql7')
->select('transaction.norujukan','trans.tarikh_bayaran','transaction.nokp','transaction.kodcaw','transaction.trans_type','cust.nama','trans.bayaran_pembiayaan','transaction.duit_masuk','trans.bayaran_keuntungan','transaction.teller')
->leftJoin('transaksi_keuntungan as trans', function($join)
{
$join->on('transaction.norujukan', '=', 'trans.norujukan');
@@ -947,13 +1013,35 @@ class GadaiController extends Controller
$join->on('transaction.nokp', '=', 'cust.kpbaru');
$join->orOn('transaction.nokp', '=', 'cust.kplama');
})
->leftJoin($cawangan['db_name'].'.gadai as db2','transaction.norujukan','=','db2.norujukan')
->where('transaction.kodcaw','=',$kodcaw)
->where('transaction.trans_type','=','A')
->whereDate('transaction.created_at','=',$dateans)
->orderBy('transaction.teller')
->get();
$ansuran = [];
if($ansuran_data){
foreach($ansuran_data as $index=>$ansuranData){
$gadai = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuranData['norujukan'])->first();
array_push($ansuran,[
"norujukan" => $ansuranData['norujukan'],
"tarikh_bayaran" => $ansuranData['tarikh_bayaran'],
"nokp" => $ansuranData['nokp'],
"kodcaw" => $ansuranData['kodcaw'],
"trans_type" => $ansuranData['trans_type'],
"nama" => $ansuranData['nama'],
"tempoh" => $gadai['tempoh'],
"bakipjm" => $gadai['bakipjm'],
"bayaran_pembiayaan" => $ansuranData['bayaran_pembiayaan'],
"duit_masuk" => $ansuranData['duit_masuk'],
"bayaran_keuntungan" => $ansuranData['bayaran_keuntungan'],
"teller" => $ansuranData['teller']
]);
}
}
return response()->json($ansuran);
}
@@ -1271,91 +1359,150 @@ class GadaiController extends Controller
$daterequest = new Carbon($tarikh);
$ansuran1 = TransaksiKeuntungan::on('mysql7')
$ansuran1_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
->where('trans.created_at','<',$daterequest)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [1, 400.99])
->groupBy('trans.id')
->get();
$ansuranharini1 = TransaksiKeuntungan::on('mysql7')
$ansuran1 = [];
if($ansuran1_data){
foreach($ansuran1_data as $index=>$ansuran1Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuran1Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 1 && $gadaiData['nilaimarhun'] <= 400.99){
array_push($ansuran1,['bayaran_pembiayaan'=>$ansuran1Data['bayaran_pembiayaan']]);
}
}
}
}
$ansuranharini1_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
// ->where('trans.created_at','=',$daterequest)
->whereDate('trans.created_at','=',$tarikh)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [1, 400.99])
->groupBy('trans.id')
->get();
$ansuran2 = TransaksiKeuntungan::on('mysql7')
$ansuranharini1 = [];
if($ansuranharini1_data){
foreach($ansuranharini1_data as $index=>$ansuranharini1Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuranharini1Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 1 && $gadaiData['nilaimarhun'] <= 400.99){
array_push($ansuranharini1,['bayaran_pembiayaan'=>$ansuranharini1Data['bayaran_pembiayaan']]);
}
}
}
}
$ansuran2_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
->where('trans.created_at','<',$daterequest)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [401, 2000.99])
->groupBy('trans.id')
->get();
$ansuranharini2 = TransaksiKeuntungan::on('mysql7')
$ansuran2 = [];
if($ansuran2_data){
foreach($ansuran2_data as $index=>$ansuran2Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuran2Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 401 && $gadaiData['nilaimarhun'] <= 2000.99){
array_push($ansuran2,['bayaran_pembiayaan'=>$ansuran2Data['bayaran_pembiayaan']]);
}
}
}
}
$ansuranharini2_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
->whereDate('trans.created_at','=',$tarikh)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [401, 2000.99])
->groupBy('trans.id')
->get();
$ansuran3 = TransaksiKeuntungan::on('mysql7')
$ansuranharini2 = [];
if($ansuranharini2_data){
foreach($ansuranharini2_data as $index=>$ansuranharini2Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuranharini2Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 401 && $gadaiData['nilaimarhun'] <= 2000.99){
array_push($ansuranharini2,['bayaran_pembiayaan'=>$ansuranharini2Data['bayaran_pembiayaan']]);
}
}
}
}
$ansuran3_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
->where('trans.created_at','<',$daterequest)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [2001, 100000])
->groupBy('trans.id')
->get();
$ansuran3 = [];
if($ansuran3_data){
foreach($ansuran3_data as $index=>$ansuran3Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuran3Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 2001 && $gadaiData['nilaimarhun'] <= 100000){
array_push($ansuran3,['bayaran_pembiayaan'=>$ansuran3Data['bayaran_pembiayaan']]);
}
}
}
}
$ansuranharini3 = TransaksiKeuntungan::on('mysql7')
$ansuranharini3_data = TransaksiKeuntungan::on('mysql7')
->leftJoin('transaction as trans', function($join)
{
$join->on('transaksi_keuntungan.norujukan', '=', 'trans.norujukan');
$join->on('transaksi_keuntungan.tarikh_bayaran', '=', 'trans.created_at');
})
->join($cawangan['db_name'].'.gadai as db2','trans.norujukan','=','db2.norujukan')
->whereDate('trans.created_at','=',$tarikh)
->where('trans.trans_type','=','A')
->where('db2.sttebus','=','')
->whereBetween('nilaimarhun', [2001, 100000])
->groupBy('trans.id')
->get();
$ansuranharini3 = [];
if($ansuranharini3_data){
foreach($ansuranharini3_data as $index=>$ansuranharini3Data){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$ansuranharini3Data['norujukan'])->first();
if($gadaiData){
if($gadaiData['sttebus'] == '' && $gadaiData['nilaimarhun']>= 2001 && $gadaiData['nilaimarhun'] <= 100000){
array_push($ansuranharini3,['bayaran_pembiayaan'=>$ansuranharini3Data['bayaran_pembiayaan']]);
}
}
}
}
//Calculation Ansuran guna foreach
$totalans1 = 0;$totalharinians1 = 0;
@@ -2609,25 +2756,25 @@ class GadaiController extends Controller
$keuntungan = Gadai::on($cawangan['mysql'])
->where('t_gadai','<=',$request->tarikh)
// ->where('t_gadai','>=','2021-04-14')
->where('hargajualan','<>','null')
// ->where('sttebus','=','')
->orWhere([['t_update','>',$request->tarikh],['sttebus','!=',''],['t_gadai','<=',$request->tarikh],['t_gadai','>=','2021-04-14']])
->whereNotNull('upah12')
->sum('upah12');
$transaksi = TransaksiKeuntungan::on('mysql7')
->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
// ->where('transaksi_keuntungan.tarikh_bayaran' ,'>=', $datetawarruq)
$transaksi_data = TransaksiKeuntungan::on('mysql7')
->where('transaksi_keuntungan.tarikh_bayaran' ,'<=', $daterequest)
->whereYear('tarikh_bayaran','=',$current->year)
->whereNotNull('db2.hargajualan')
->sum('bayaran_keuntungan');
->get();
// $transaksi = TransaksiKeuntungan::on('mysql7')
// ->where('tarikh_bayaran' ,'>=', $datetawarruq)
// ->where('tarikh_bayaran' ,'<=', $daterequest)
// ->sum('bayaran_keuntungan');
$transaksi = 0;
if($transaksi_data){
foreach($transaksi_data as $index=>$transaksiData){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$transaksiData['norujukan'])->whereNotNull('hargajualan')->first();
if($gadaiData){
$transaksi += $transaksiData['bayaran_keuntungan'];
}
}
}
$totalkeuntungan = $keuntungan - $transaksi;
@@ -2675,11 +2822,24 @@ class GadaiController extends Controller
$current = Carbon::now();
$current = new Carbon();
$transaksi = TransaksiKeuntungan::on('mysql7')
->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
->where([['db2.sttebus','=',''],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'<=', $daterequest]])
->orWhere([['db2.sttebus','!=',''],['db2.t_update','>',$request->tarikh],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'<=', $daterequest]])
->sum('bayaran_pembiayaan');
$transaksi_data = TransaksiKeuntungan::on('mysql7')
->where('tarikh_bayaran' ,'<=', $daterequest)
// ->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
// ->where([['db2.sttebus','=',''],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'<=', $daterequest]])
// ->orWhere([['db2.sttebus','!=',''],['db2.t_update','>',$request->tarikh],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'<=', $daterequest]])
// ->sum('bayaran_pembiayaan');
->get();
$transaksi = 0;
if($transaksi_data){
foreach($transaksi_data as $index=>$transaksiData){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$transaksiData['norujukan'])->first();
if($gadaiData && (($gadaiData['sttebus'] == '' && $gadaiData['hargajualan'] != null) || ($gadaiData['sttebus'] != '' && $gadaiData['t_update'] > $request->tarikh && $gadaiData['hargajualan'] != null))){
$transaksi += $transaksiData['bayaran_pembiayaan'];
}
}
}
return response($transaksi);
}
@@ -2698,11 +2858,23 @@ class GadaiController extends Controller
$current = Carbon::now();
$current = new Carbon();
$transaksi = TransaksiKeuntungan::on('mysql7')
->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
->where([['db2.sttebus','=',''],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'>=', $datemula],['tarikh_bayaran' ,'<=', $datehingga]])
->orWhere([['db2.sttebus','!=',''],['db2.t_update','>',$request->mula],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'>=', $datemula],['tarikh_bayaran' ,'<=', $datehingga]])
->sum('bayaran_pembiayaan');
$transaksi_data = TransaksiKeuntungan::on('mysql7')
->where([['tarikh_bayaran' ,'>=', $datemula],['tarikh_bayaran' ,'<=', $datehingga]])
// ->join($cawangan['db_name'].'.gadai as db2','transaksi_keuntungan.norujukan','=','db2.norujukan')
// ->where([['db2.sttebus','=',''],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'>=', $datemula],['tarikh_bayaran' ,'<=', $datehingga]])
// ->orWhere([['db2.sttebus','!=',''],['db2.t_update','>',$request->mula],['db2.hargajualan','<>','null'],['tarikh_bayaran' ,'>=', $datemula],['tarikh_bayaran' ,'<=', $datehingga]])
// ->sum('bayaran_pembiayaan');
->get();
$transaksi = 0;
if($transaksi_data){
foreach($transaksi_data as $index=>$transaksiData){
$gadaiData = Gadai::on($cawangan['mysql'])->where('norujukan',$transaksiData['norujukan'])->first();
if($gadaiData && (($gadaiData['sttebus'] == '' && $gadaiData['hargajualan'] != null) || ($gadaiData['sttebus'] != '' && $gadaiData['t_update'] > $request->mula && $gadaiData['hargajualan'] != null))){
$transaksi += $transaksiData['bayaran_pembiayaan'];
}
}
}
return response($transaksi);
}