Files
api_arrahn/app/Http/Controllers/KomuditiController.php
T
2021-02-16 14:57:29 +08:00

181 lines
6.6 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Komuditi;
use App\KomuditiPurchase;
use App\KomuditiTransaksi;
use App\KomuditiProduk;
use Illuminate\Http\Request;
use Carbon\Carbon;
class KomuditiController extends Controller
{
public function checkKomuditi(){
$current = Carbon::now();
$current = new Carbon();
$komuditi = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
return response()->json($komuditi);
}
public function checkKomuditiDashboard(){
$current = Carbon::now();
$current = new Carbon();
$komuditi = KomuditiPurchase::on('mysql7')->select('unit_komuditi')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
return response()->json($komuditi['unit_komuditi']);
}
public function beliKomuditi(Request $request){
$current = Carbon::now();
$current = new Carbon();
$komuditi_purchase = KomuditiPurchase::on('mysql7')->create([
'unit_komuditi' => $request->unit_komuditi,
'nilai' => $request->nilai,
'no_sijil' => $request->nosijil,
'kodproduct' => $request->kodproduct,
'purchased_by' => $request->purchased_by,
'date_purchase' => $current->toDateString(),
'time_purchase' => $current->toTimeString()
]);
$komuditi_history= Komuditi::on('mysql7')->create([
'unit_komuditi' => $request->unit_komuditi,
'transaction_by' => $request->purchased_by,
'date_purchase' => $current->toDateString(),
'transaction_type' => 'Beli Komoditi',
'time_purchase' => $current->toTimeString(),
'nosijil' => $request->nosijil,
'kodproduk' => $request->kodproduct,
'harga'=> $request->nilai
]);
return response()->json($komuditi_purchase);
}
public function jualKomuditi(Request $request){
$current = Carbon::now();
$current = new Carbon();
$komuditi_asal = KomuditiPurchase::on('mysql7')->where('no_sijil','=',$request->nosijil)->first();
$komuditi_purchase = KomuditiPurchase::on('mysql7')->where('no_sijil','=',$request->nosijil)->update(['unit_komuditi' => 0]);
$komuditi_history= Komuditi::on('mysql7')->create([
'unit_komuditi' => $komuditi_asal['unit_komuditi'],
'transaction_by' => $request->purchased_by,
'date_purchase' => $current->toDateString(),
'transaction_type' => 'Jual Komoditi',
'time_purchase' => $current->toTimeString(),
'nosijil' => $request->nosijil,
'kodproduk' => $komuditi_asal['kodproduct'],
'harga'=> $komuditi_asal['nilai']
]);
return response()->json($komuditi_purchase);
}
public function rekodKomuditi(){
$rekodkomuditi = Komuditi::on('mysql7')->orderBy('date_purchase','desc')->orderBy('time_purchase','desc')->get();
return response()->json($rekodkomuditi);
}
public function updateKomuditi(Request $request){
$current = Carbon::now();
$current = new Carbon();
$komuditi = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
$transaksi_asal = KomuditiTransaksi::on('mysql7')->where('norujukan','=',$request->norujukan)->first();
$unit_baru = $transaksi_asal['unit_komuditi'] - $request->unit_komuditi;
$unit_current = $komuditi['unit_komuditi'];
$update_unit = $unit_current + $unit_baru;
$komuditi_purchase = KomuditiPurchase::on('mysql7')->where('id','=',$komuditi['id'])->update([
'unit_komuditi' => $update_unit
]);
$komuditi_transaksi = KomuditiTransaksi::on('mysql7')->where('norujukan','=',$request->norujukan)->update([
'unit_komuditi' => $request->unit_komuditi
]);
return response()->json($komuditi_transaksi);
}
public function transaksiKomuditi(Request $request){
$current = Carbon::now();
$current = new Carbon();
$komuditi_current = KomuditiPurchase::on('mysql7')->where('date_purchase','=',$current->toDateString())->orderBy('created_at','desc')->first();
$unit_current = $komuditi_current['unit_komuditi'];
$update_unit = $unit_current - $request->unit_komuditi;
$update_komuditi = KomuditiPurchase::on('mysql7')->where('id','=',$komuditi_current['id'])->update([
'unit_komuditi' => $update_unit
]);
$komuditi_transaksi = KomuditiTransaksi::on('mysql7')->create([
'unit_komuditi' => $request->unit_komuditi,
'norujukan' => $request->norujukan,
'kodcaw' => $request->kodcaw ,
'teller' => $request->teller ,
'masa' => $current->toTimeString(),
'tarikh' => $current->toDateString()
]);
return response()->json($komuditi_transaksi);
}
public function batalKomuditi(Request $request){
$komuditi_current = KomuditiPurchase::on('mysql7')->orderBy('created_at','desc')->first();
$transaksi_asal = KomuditiTransaksi::on('mysql7')->where('norujukan','=',$request->norujukan)->first();
$unit_current = $komuditi_current['unit_komuditi'];
$update_unit = $unit_current + $transaksi_asal['unit_komuditi'];
$update_komuditi = KomuditiPurchase::on('mysql7')->where('id','=',$komuditi_current['id'])->update([
'unit_komuditi' => $update_unit
]);
$komuditi_transaksi = KomuditiTransaksi::on('mysql7')->where('norujukan','=',$request->norujukan)->delete();
return response()->json($komuditi_transaksi);
}
public function getKomuditiProduct(){
$produk = KomuditiProduk::on('mysql7')->get();
return response()->json($produk);
}
public function getKomuditiProductUnit(Request $request){
$produk = KomuditiProduk::on('mysql7')->where('kodproduk','=',$request->kodproduk)->first();
return response()->json($produk['unit']);
}
public function getKomuditiProductDescription(Request $request){
$produk = KomuditiProduk::on('mysql7')->where('kodproduk','=',$request->kodproduk)->first();
return response()->json($produk);
}
public function rekodTransaksiHarian(){
$current = Carbon::now();
$current = new Carbon();
$komuditi_transaksi = KomuditiTransaksi::on('mysql7')->where('tarikh','=',$current->toDateString())->get();
return response()->json($komuditi_transaksi);
}
}