MIF_E31211972/app/Http/Controllers/Admin/DashboardController.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'));
}
}