Add telescope, fix kemaskini in lelong page

This commit is contained in:
Amir
2023-01-15 09:52:35 +08:00
parent d65279ebe5
commit 11b84bbe62
13 changed files with 477 additions and 5 deletions
+126
View File
@@ -50,6 +50,7 @@ use App\Models\Tetapan;
use App\Models\TransaksiKeuntungan;
use DateTime;
// use Nexmo\Laravel\Facade\Nexmo;
use Illuminate\Support\Facades\DB;
class LelongController extends Controller
{
@@ -939,6 +940,131 @@ class LelongController extends Controller
->with('success','Kemaskini Berjaya');
}
public function kemaskini2(Request $request)
{
/*
read LelKarat, done
create LelKarat_temp, done
update LelKarat, done
read LelongBid, done
read TransaksiKeuntungan - sum keuntungan_rebet, done
read TransaksiKeuntungan - sum bayaran_keuntungan, done
read Gadai, done
read LelongBidMarhun, done
update LelongBidMarhun, done
update LelongBid
create LogUser
update Lelong, done
*/
$currentNow = Carbon::now();
$lel_karats = LelKarat::where('lelong_id', $request->idlelong)->get();
$insert_harga2 = $request->harga2;
$lelkarat_temp_arr = [];
$cases = '';
foreach ($lel_karats as $index => $lel_karat) {
if ($insert_harga2[$index]) {
$lel_karats[$index]['harga_baru'] = $insert_harga2[$index];
}
$lel_karat_temp_to_be_inserted = [
'lelong_id' => $request->idlelong,
'karat' => $lel_karat->karat,
'keterangan' => $lel_karat->keterangan,
'harga' => $lel_karat->harga,
'harga2' => $lel_karat->harga2,
'created_at' => $currentNow,
'updated_at' => $currentNow,
];
array_push($lelkarat_temp_arr, $lel_karat_temp_to_be_inserted);
$cases .= sprintf(' WHEN id = %d THEN %s ', $lel_karat->id, $lel_karat->harga_baru);
}
$build_query = sprintf("CASE %s END", $cases);
// LelKarat_temp::insert($lelkarat_temp_arr);
// LelKarat::query()->where('lelong_id', $request->idlelong)->update(['harga2' => DB::raw($build_query)]);
// Lelong::find($request->idlelong)->update(['harga_emas_asas' => $request->harga2[3]]);
$new_lel_karat = LelKarat::where('lelong_id', $request->idlelong)->select('lelong_id', 'karat', 'harga2')->get()->keyBy('karat');
$lelong_bid = LelongBid::with('lelongBidMarhun')->where('lelong_id', $request->idlelong)->select('id', 'kodcaw', 'norujukan')->get();
/** -------------UPDATE LELONG BID MARHUN------------- */
$list_lelong_bid_marhun = collect();
foreach($lelong_bid as $item)
{
$list_lelong_bid_marhun = $list_lelong_bid_marhun->concat($item->lelongBidMarhun);
}
$cases_update_harga = '';
$cases_update_n_marhun = '';
$cases_update_hargaasas = '';
foreach($list_lelong_bid_marhun as $index => $marhun)
{
if ($new_lel_karat[$marhun->karat])
{
$harga_to_be_inserted = $new_lel_karat[$marhun->karat]->harga2;
$n_marhun_to_be_inserted = $marhun->berat * $new_lel_karat[$marhun->karat]->harga2;
$harga_asas_to_be_inserted = round($marhun->berat * $new_lel_karat[$marhun->karat]->harga2);
$list_lelong_bid_marhun[$index]['new_n_marhun'] = $n_marhun_to_be_inserted;
$list_lelong_bid_marhun[$index]['new_hargaasas'] = $harga_asas_to_be_inserted;
// UPDATE HARGA, N_MARHUN, HARGAASAS
$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);
}
}
dd($list_lelong_bid_marhun[100]->toArray());
$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);
LelongBidMarhun::query()
->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 LELONG BID------------- */
$lelong_bid_group_by_kodcaw = $lelong_bid->groupBy('kodcaw');
$list_gadai = [];
foreach($lelong_bid_group_by_kodcaw as $index => $cawangan)
{
$cawangan = $cawangan->pluck('norujukan');
$detail_gadai = Gadai::on($index)->whereIn('norujukan', $cawangan)->select('norujukan','tempoh', 'tempohbayar')->get();
$list_gadai = array_merge($list_gadai, $detail_gadai->keyBy('norujukan')->toArray());
}
$lelong_bid_pluck_norujukan = $lelong_bid->pluck('norujukan');
$transaksi_keuntungans = TransaksiKeuntungan::whereIn('norujukan', $lelong_bid_pluck_norujukan)->select('norujukan', 'keuntungan_rebet', 'bayaran_keuntungan')->get();
// update bakiupah@keuntungan
// create loguser
// update hargaasas
// update nmarhuns
return redirect()->route('home');
}
public function janapemenang($id){
$current = Carbon::now();