tambah cronjob kemaskini:lelongujrah
This commit is contained in:
@@ -49,7 +49,7 @@ class kemaskiniLelong extends Command
|
||||
$currentdate = $currentdate->toDateTimeString();
|
||||
$data = [];
|
||||
|
||||
$lelongbids = LelongBid::where('status_jual',0)->get();
|
||||
$lelongbids = LelongBid::where('status_jual',0)->where('ujrah','0')->get();
|
||||
|
||||
foreach($lelongbids as $index=>$lelongbid){
|
||||
$gadai = Gadai::on($lelongbid->kodcaw)->where('norujukan',$lelongbid->norujukan)->first();
|
||||
|
||||
@@ -0,0 +1,176 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
use App\Models\LelongBid;
|
||||
use App\Models\Gadai;
|
||||
use Carbon\Carbon;
|
||||
use App\Models\TransaksiKeuntungan;
|
||||
use App\Models\LelongTebus;
|
||||
use App\Models\LogUser;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Http;
|
||||
|
||||
class kemaskiniLelongUjrah extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'kemaskini:lelongujrah';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Kemaskini data lelong ujrah';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$currentdate = Carbon::now();
|
||||
$currentdate = $currentdate->toDateTimeString();
|
||||
$data = [];
|
||||
|
||||
$lelongbids = LelongBid::where('status_jual',0)->where('ujrah','1')->get();
|
||||
// dd($lelongbids);
|
||||
|
||||
foreach($lelongbids as $index=>$lelongbid){
|
||||
$gadai = Gadai::on($lelongbid->kodcaw)->where('norujukan',$lelongbid->norujukan)->first();
|
||||
$keluar_lelong = false;
|
||||
$sebab_keluar = '';
|
||||
if($lelongbid->fasa == '1'){
|
||||
if($gadai->sttebus == 'T'){
|
||||
$keluar_lelong = true;
|
||||
$sebab_keluar = 'T';
|
||||
}elseif($gadai->sttebus == 'L'){
|
||||
$keluar_lelong = true;
|
||||
$sebab_keluar = 'L';
|
||||
}
|
||||
else{
|
||||
$telahbayar = $gadai->hargajualan - $gadai->bakihargajualan;
|
||||
$upah6bln_raw = $gadai->bakiupah - 0.5;
|
||||
if(bcdiv($telahbayar,1,1) >= bcdiv($upah6bln_raw,1,1)){
|
||||
$keluar_lelong = true;
|
||||
$sebab_keluar = 'A';
|
||||
$updategadai = Http::withOptions(['verify' => config('app.api_verify')])
|
||||
->post(config('app.api_url').'taglel/revert',[
|
||||
'kodcaw'=>$lelongbid->kodcaw,
|
||||
'norujukan'=>$lelongbid->norujukan
|
||||
])
|
||||
->json();
|
||||
}else{
|
||||
$total_untung_rebet = TransaksiKeuntungan::on('main')->where('norujukan',$lelongbid->norujukan)->sum('keuntungan_rebet');
|
||||
$total_untung_asal = TransaksiKeuntungan::on('main')->where('norujukan',$lelongbid->norujukan)->sum('bayaran_keuntungan');
|
||||
$beza_keuntungan = $total_untung_asal - $total_untung_rebet;
|
||||
if($gadai->tempohbayar == $gadai->tempoh ){
|
||||
$keuntungan = 0.00;
|
||||
}else{
|
||||
|
||||
//kiraan keuntungan ujrah
|
||||
$jeniskeuntungan = 'onepercent';
|
||||
$keuntungan = Http::get(config('app.api_url'). 'upahrebettawarruq/'.$lelongbid->kodcaw.'/'.$lelongbid->norujukan.'/'.$jeniskeuntungan)->json();
|
||||
|
||||
}
|
||||
$checkdataxlaku = LelongBid::where('norujukan', $lelongbid->norujukan)
|
||||
->where('xlaku', 1)
|
||||
->first();
|
||||
if (!$checkdataxlaku) {
|
||||
$lelongbid->jbg = $gadai->tempoh;
|
||||
$lelongbid->pinjaman = $gadai->bakipjm;
|
||||
$lelongbid->bakiupah = $keuntungan;
|
||||
$lelongbid->save();
|
||||
}
|
||||
}
|
||||
}
|
||||
}else{
|
||||
if($gadai->sttebus == 'T'){
|
||||
$keluar_lelong = true;
|
||||
$sebab_keluar = 'T';
|
||||
}elseif($gadai->sttebus == 'L'){
|
||||
$keluar_lelong = true;
|
||||
$sebab_keluar = 'L';
|
||||
}else{
|
||||
$total_untung_rebet = TransaksiKeuntungan::on('main')->where('norujukan',$lelongbid->norujukan)->sum('keuntungan_rebet');
|
||||
$total_untung_asal = TransaksiKeuntungan::on('main')->where('norujukan',$lelongbid->norujukan)->sum('bayaran_keuntungan');
|
||||
$beza_keuntungan = $total_untung_asal - $total_untung_rebet;
|
||||
if($gadai->tempohbayar == 12){
|
||||
$keuntungan = 0.00;
|
||||
}
|
||||
elseif($gadai->tempohbayar == $gadai->tempoh ){
|
||||
$keuntungan = 0.00;
|
||||
}
|
||||
else{
|
||||
|
||||
//kiraan keuntungan ujrah
|
||||
$jeniskeuntungan = 'onepercent';
|
||||
$keuntungan = Http::get(config('app.api_url'). 'upahrebettawarruq/'.$lelongbid->kodcaw.'/'.$lelongbid->norujukan.'/'.$jeniskeuntungan)->json();
|
||||
|
||||
}
|
||||
$checkdataxlaku = LelongBid::where('norujukan', $lelongbid->norujukan)
|
||||
->where('xlaku', 1)
|
||||
->first();
|
||||
if (!$checkdataxlaku) {
|
||||
$lelongbid->jbg = $gadai->tempoh;
|
||||
$lelongbid->pinjaman = $gadai->bakipjm;
|
||||
$lelongbid->bakiupah = $keuntungan;
|
||||
$lelongbid->save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($keluar_lelong == true){
|
||||
$lelongtebus = new LelongTebus;
|
||||
$lelongtebus->tarikh = $currentdate;
|
||||
$lelongtebus->kodcaw = $lelongbid->kodcaw;
|
||||
$lelongtebus->teller = 'System';
|
||||
$lelongtebus->norujukan = $lelongbid->norujukan;
|
||||
$lelongtebus->batch_no = $lelongbid->lelong_id;
|
||||
$lelongtebus->nilaimarhun = $lelongbid->nilaimarhun;
|
||||
$lelongtebus->pinjaman = $gadai->bakipjm;
|
||||
$lelongtebus->upah = $gadai->bakiupah;
|
||||
$lelongtebus->jbg = $gadai->tempoh;
|
||||
$lelongtebus->jenis_tebus = $sebab_keluar;
|
||||
$lelongtebus->save();
|
||||
|
||||
$loguser = new LogUser;
|
||||
$loguser->user_id = User::where('name','System')->first()->id;
|
||||
$loguser->date = $currentdate;
|
||||
$loguser->username = 'System';
|
||||
$loguser->nama_user = 'System';
|
||||
$loguser->norujukan = $gadai->norujukan;
|
||||
$loguser->nota = $sebab_keluar == 'A' ? ' KELUAR LELONG '.$lelongbid->lelong_id : ' TEBUS LELONG '.$lelongbid->lelong_id ;
|
||||
$loguser->save();
|
||||
|
||||
$lelongbid->delete();
|
||||
}else{
|
||||
$loguser = new LogUser;
|
||||
$loguser->user_id = User::where('name','System')->first()->id;
|
||||
$loguser->date = $currentdate;
|
||||
$loguser->username = 'System';
|
||||
$loguser->nama_user = 'System';
|
||||
$loguser->norujukan = $gadai->norujukan;
|
||||
$loguser->nota = $lelongbid->lelong_id.' Kemaskini Tempoh/Bakipjm/Keuntungan' ;
|
||||
$loguser->save();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,6 +19,8 @@ use App\Models\LelongTebus;
|
||||
use App\Models\LogUser;
|
||||
use App\Models\TransaksiKeuntungan;
|
||||
use App\Models\Customer;
|
||||
use App\Models\SimKarat_temp;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
@@ -909,5 +911,144 @@ class SimulasiUjrahController extends Controller
|
||||
return view('simulasiujrah.listsagbycust',compact('simulasilel','cawanganDetail','marhuns','simulasi_id','cawid','ktlhbyr'));
|
||||
}
|
||||
|
||||
public function kemaskini2(Request $request)
|
||||
{
|
||||
$user = Auth::user();
|
||||
|
||||
$currentNow = Carbon::now();
|
||||
|
||||
$sim_karats = SimKarat::where('simulasi_id', $request->idsimulasi)->get();
|
||||
|
||||
$insert_harga2 = $request->harga2;
|
||||
|
||||
$simkarat_temp_arr = [];
|
||||
$cases = '';
|
||||
|
||||
foreach ($sim_karats as $index => $sim_karat) {
|
||||
if ($insert_harga2[$index]) {
|
||||
$sim_karats[$index]['harga_baru'] = $insert_harga2[$index];
|
||||
}
|
||||
$sim_karat_temp_to_be_inserted = [
|
||||
'simulasi_id' => $request->idsimulasi,
|
||||
'karat' => $sim_karat->karat,
|
||||
'keterangan' => $sim_karat->keterangan,
|
||||
'harga' => $sim_karat->harga,
|
||||
'harga2' => $sim_karat->harga2,
|
||||
'created_at' => $currentNow,
|
||||
'updated_at' => $currentNow,
|
||||
];
|
||||
|
||||
array_push($simkarat_temp_arr, $sim_karat_temp_to_be_inserted);
|
||||
|
||||
$cases .= sprintf(' WHEN id = %d THEN %s ', $sim_karat->id, $sim_karat->harga_baru);
|
||||
}
|
||||
|
||||
$build_query = sprintf("CASE %s END", $cases);
|
||||
|
||||
SimKarat_temp::insert($simkarat_temp_arr);
|
||||
|
||||
SimKarat::query()->where('simulasi_id', $request->idsimulasi)->update(['harga2' => DB::raw($build_query)]);
|
||||
|
||||
Simulasi::find($request->idsimulasi)->update(['harga_emas_asas' => $request->harga2[3]]);
|
||||
|
||||
$new_sim_karat = SimKarat::where('simulasi_id', $request->idsimulasi)->select('simulasi_id', 'karat', 'harga2')->get()->keyBy('karat');
|
||||
|
||||
$simulasi_bid = SimulasiBid::with('simulasiBidMarhun')->where('simulasi_id', $request->idsimulasi)->select('id', 'kodcaw', 'norujukan')->get();
|
||||
|
||||
/** -------------UPDATE SIMULASI BID MARHUN------------- */
|
||||
$list_simulasi_bid_marhun = collect();
|
||||
foreach($simulasi_bid->keyBy('norujukan') as $index90 => $item)
|
||||
{
|
||||
foreach($item->simulasiBidMarhun as $index55 => $lel_bid_marhun_collect)
|
||||
{
|
||||
$item->simulasiBidMarhun[$index55]['norujukan'] = $index90;
|
||||
}
|
||||
$list_simulasi_bid_marhun = $list_simulasi_bid_marhun->concat($item->simulasiBidMarhun);
|
||||
}
|
||||
|
||||
$cases_update_harga = '';
|
||||
$cases_update_n_marhun = '';
|
||||
$cases_update_hargaasas = '';
|
||||
$simulasi_bid_marhun_array = [];
|
||||
|
||||
foreach($list_simulasi_bid_marhun as $index => $marhun)
|
||||
{
|
||||
array_push($simulasi_bid_marhun_array, $marhun->id);
|
||||
if ($new_sim_karat[$marhun->karat])
|
||||
{
|
||||
|
||||
$harga_to_be_inserted = $new_sim_karat[$marhun->karat]->harga2;
|
||||
$n_marhun_to_be_inserted = $marhun->berat * $new_sim_karat[$marhun->karat]->harga2;
|
||||
$harga_asas_to_be_inserted = round($marhun->berat * $new_sim_karat[$marhun->karat]->harga2);
|
||||
|
||||
$list_simulasi_bid_marhun[$index]['new_n_marhun'] = $n_marhun_to_be_inserted;
|
||||
$list_simulasi_bid_marhun[$index]['new_hargaasas'] = $harga_asas_to_be_inserted;
|
||||
|
||||
$cases_update_harga .= sprintf(' WHEN id = %d THEN %s ', $marhun->id, $harga_to_be_inserted);
|
||||
$cases_update_n_marhun .= sprintf(' WHEN id = %d THEN %s ', $marhun->id, $n_marhun_to_be_inserted);
|
||||
$cases_update_hargaasas .= sprintf(' WHEN id = %d THEN %s ', $marhun->id, $harga_asas_to_be_inserted);
|
||||
}
|
||||
|
||||
}
|
||||
$build_query_update_harga = sprintf("CASE %s END", $cases_update_harga);
|
||||
$build_query_update_n_marhun = sprintf("CASE %s END", $cases_update_n_marhun);
|
||||
$build_query_update_hargaasas = sprintf("CASE %s END", $cases_update_hargaasas);
|
||||
|
||||
SimulasiBidMarhun::query()->whereIn('id', $simulasi_bid_marhun_array)
|
||||
->update([
|
||||
'harga' => DB::raw($build_query_update_harga),
|
||||
'n_marhun' => DB::raw($build_query_update_n_marhun),
|
||||
'hargaasas' => DB::raw($build_query_update_hargaasas)
|
||||
]);
|
||||
|
||||
/** -------------UPDATE SIMULASI BID------------- */
|
||||
$list_simulasi_bid_marhun_updated = $list_simulasi_bid_marhun->groupBy('simulasibid_id');
|
||||
$collection_simulasi_bid_marhun_updated = collect();
|
||||
|
||||
foreach($list_simulasi_bid_marhun_updated as $index2 => $simulasi_bid_updated)
|
||||
{
|
||||
$array_to_be_inserted = [];
|
||||
$array_to_be_inserted['id'] = $index2;
|
||||
$array_to_be_inserted['norujukan'] = $simulasi_bid_updated[0]->norujukan;
|
||||
$array_to_be_inserted['total_n_marhun'] = $simulasi_bid_updated->sum('new_n_marhun');
|
||||
$array_to_be_inserted['total_hargaasas'] = $simulasi_bid_updated->sum('new_hargaasas');
|
||||
$collection_simulasi_bid_marhun_updated = $collection_simulasi_bid_marhun_updated->push($array_to_be_inserted);
|
||||
}
|
||||
|
||||
// $cases_update_n_marhuns_simulasi_bid = '';
|
||||
$cases_update_hargaasas_simulasi_bid = '';
|
||||
$log_user_array = [];
|
||||
|
||||
foreach($collection_simulasi_bid_marhun_updated as $collection_simulasi_bid)
|
||||
{
|
||||
$log_user_array_to_be_inserted = [
|
||||
"user_id" => $user->id,
|
||||
"date" => $currentNow->toDateTimeString(),
|
||||
"username" => $user->username,
|
||||
"nama_user" => $user->name,
|
||||
"norujukan" => $collection_simulasi_bid['norujukan'],
|
||||
"nota" => "Simulasi, Kemaskini Harga Asas RM" . $collection_simulasi_bid['total_hargaasas'],
|
||||
'created_at' => $currentNow,
|
||||
'updated_at' => $currentNow,
|
||||
];
|
||||
array_push($log_user_array, $log_user_array_to_be_inserted);
|
||||
// $cases_update_n_marhuns_simulasi_bid .= sprintf(' WHEN id = %d THEN %s ', $collection_simulasi_bid['id'], $collection_simulasi_bid['total_n_marhun']);
|
||||
$cases_update_hargaasas_simulasi_bid .= sprintf(' WHEN id = %d THEN %s ', $collection_simulasi_bid['id'], $collection_simulasi_bid['total_hargaasas']);
|
||||
}
|
||||
|
||||
// $build_query_update_nmarhuns_simulasi_bid = sprintf("CASE %s END", $cases_update_n_marhuns_simulasi_bid);
|
||||
$build_query_update_hargaasas_simulasi_bid = sprintf("CASE %s END", $cases_update_hargaasas_simulasi_bid);
|
||||
|
||||
SimulasiBid::query()->where('simulasi_id', $request->idsimulasi)
|
||||
->update([
|
||||
// 'nmarhuns' => DB::raw($build_query_update_nmarhuns_simulasi_bid),
|
||||
'hargaasas' => DB::raw($build_query_update_hargaasas_simulasi_bid),
|
||||
]);
|
||||
|
||||
LogUser::insert($log_user_array);
|
||||
|
||||
return redirect()->route('analisaujrah.show',$request->idsimulasi)->with('success','Kemaskini Harga Emas Berjaya');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -281,7 +281,7 @@
|
||||
</div>
|
||||
<div class="row ">
|
||||
<div class="col-10 mx-auto">
|
||||
<form action="{{ route('analisa.kemaskiniharga') }}" method="POST" id="formhargaasas">
|
||||
<form action="{{ route('analisaujrah.kemaskiniharga') }}" method="POST" id="formhargaasas">
|
||||
@csrf
|
||||
<div id='loader'><img id="loader-image" src="{{ asset('img/loadingmsg.gif') }}" alt="Sila Tunggu Sebentar..." /></div>
|
||||
<input type="hidden" name="idsimulasi" value="{{$simulasi_id}}">
|
||||
|
||||
@@ -128,6 +128,7 @@ Route::group(['middleware' => ['permission:analisaujrah'],'prefix'=>'analisaujra
|
||||
Route::get('/deletesimulasi/{id}',['as'=>'analisaujrah.delete','uses'=>'SimulasiUjrahController@delete']);
|
||||
Route::get('/senaraimarhunlel/{simulasi_id}/{cawid}',['as'=>'analisaujrah.senaraimarhunlel','uses'=>'SimulasiUjrahController@senaraimarhunlel']);
|
||||
Route::get('/listsagbycust/{simulasi_id}/{cawid}',['as'=>'analisaujrah.listsagbycust','uses'=>'SimulasiUjrahController@listsagbycust']);
|
||||
Route::post('/kemaskini',['as'=>'analisaujrah.kemaskiniharga','uses'=>'SimulasiUjrahController@kemaskini2']);
|
||||
});
|
||||
|
||||
Route::group(['middleware' => ['permission:sistem'],'prefix'=>'sistem'], function () {
|
||||
@@ -361,6 +362,9 @@ Route::group(['middleware' => ['permission:pengesahanpembida'],'prefix'=>'pembid
|
||||
Route::get('/statusserahanbidaan',['as'=>'pembida.statusserahanbidaan','uses'=>'PembidaController@statusserahanbidaan']);
|
||||
Route::get('/statusserahanbypembida',['as'=>'pembida.statusserahanbypembida','uses'=>'PembidaController@statusserahanbypembida']);
|
||||
|
||||
// Route::get('/pemenangkedua',['as'=>'pembida.pemenangkedua','uses'=>'PembidaController@pemenangkedua']);
|
||||
// Route::get('/senaraipemenangkedua/{lelong_id}/{kodcaw}',['as'=>'pembida.senaraipemenangkedua','uses'=>'PembidaController@senaraipemenangkedua']);
|
||||
// Route::get('/listpemenangkedua/{lelong_id}/{kodcaw}/{user_id}',['as'=>'pembida.listpemenangkedua','uses'=>'PembidaController@listpemenangkedua']);
|
||||
// Route::get('/grafpembida',['as'=>'pembida.grafpembida','uses'=>'PembidaController@grafpembida']);
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user