67 lines
2.5 KiB
PHP
67 lines
2.5 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Models\Kopi;
|
|
use App\Models\BarangMasuk;
|
|
use App\Models\BarangKeluar;
|
|
use App\Http\Controllers\Controller;
|
|
|
|
class DashboardController extends Controller
|
|
{
|
|
function kgToTon($kilograms) {
|
|
return $kilograms / 1000;
|
|
}
|
|
|
|
function calculateStockPercentage($stok) {
|
|
$kapasitasGudang = 50;
|
|
return ($stok / $kapasitasGudang) * 100;
|
|
}
|
|
|
|
public function index(){
|
|
|
|
//
|
|
$kopis = Kopi::all();
|
|
|
|
// gudang masuk
|
|
$stokKopiRobustamasuk = BarangMasuk::where('nama_kopi', 'like', '%robusta%')->sum('jumlah');
|
|
$stokKopiArabicamasuk = BarangMasuk::where('nama_kopi', 'like', '%arabica%')->sum('jumlah');
|
|
$totalStokMasuk = $stokKopiRobustamasuk + $stokKopiArabicamasuk;
|
|
$totalStokKopiTon2 = $this->kgToTon($totalStokMasuk);
|
|
|
|
// gudang keluar
|
|
$stokKopiRobustakeluar = BarangKeluar::where('nama_kopi', 'like', '%robusta%')->sum('jumlah');
|
|
$stokKopiArabicakeluar = BarangKeluar::where('nama_kopi', 'like', '%arabica%')->sum('jumlah');
|
|
$totalStokKeluar = $stokKopiRobustakeluar + $stokKopiArabicakeluar;
|
|
$totalStokKopiTon1 = $this->kgToTon($totalStokKeluar);
|
|
|
|
// rincian isi gudang
|
|
$stokKopiRobusta = Kopi::where('nama_kopi', 'like', '%robusta%')->sum('stok');
|
|
$stokKopiArabica = Kopi::where('nama_kopi', 'like', '%arabica%')->sum('stok');
|
|
$totalStokKopi = $stokKopiArabica + $stokKopiRobusta;
|
|
$totalStokKopiTon = $this->kgToTon($totalStokKopi);
|
|
|
|
// dd($stokKopiArabica);
|
|
|
|
// hitung kapasitas
|
|
$stokKopi = Kopi::sum('stok');
|
|
$stokKopi = $this->kgToTon($stokKopi);
|
|
$stokPersen = $this->calculateStockPercentage($stokKopi);
|
|
// dd($stokPersen);
|
|
$kapasitasGudangSaatIni = $stokPersen;
|
|
$sisaGudang = 100 - $stokPersen;
|
|
if($stokPersen > 100){
|
|
$stokPersen = 100;
|
|
$sisaGudang = 0;
|
|
}
|
|
$dataKapasitas = [
|
|
'sisaGudang' => $sisaGudang,
|
|
'stokPersen' => $stokPersen,
|
|
'stokKopi' => $stokKopi
|
|
];
|
|
return view('admin.pages.dashboard', ['type_menu' => 'user-module'], compact('dataKapasitas',
|
|
'stokKopiRobusta', 'stokKopiArabica', 'totalStokKopi', 'totalStokKopiTon', 'stokKopiRobustakeluar',
|
|
'stokKopiArabicakeluar', 'stokKopiRobustamasuk', 'stokKopiArabicamasuk','totalStokMasuk','totalStokKeluar','totalStokKopiTon1','totalStokKopiTon2', 'kapasitasGudangSaatIni', 'kopis'));
|
|
}
|
|
}
|