You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. @extends('layouts.main')
  2. @php
  3. $totalTargetAmount = 0;
  4. $totalTargetAmountYB = 0;
  5. $chartLabel = [];
  6. $chartPercent = [];
  7. $hasNotification = true;
  8. foreach ($status as $data) {
  9. $chartLabel[] = $data['name'];
  10. $chartPercent[] = $data['percent'];
  11. }
  12. foreach ($rekodKPIPelaburan as $index => $data) {
  13. $totalTargetAmount += $data['investment_target'];
  14. $totalTargetAmountYB += $data['investment_target_setting'];
  15. }
  16. @endphp
  17. @section('content')
  18. <div class="flex flex-col gap-4 bg-white rounded p-10 min-h-screen">
  19. <div class="flex justify-between items-center">
  20. <p class="flex items-center text-xs">
  21. <i class="fa-solid fa-house text-[#BD8736] mr-1"></i>
  22. <span>Dashboard</span>
  23. </p>
  24. <div class="relative cursor-pointer hidden md:block">
  25. @if ($hasNotification)
  26. <div class="absolute top-[2px] left-0 w-2 h-2 bg-[#E50A0A] rounded-full"></div>
  27. @endif
  28. <i class="fa-regular fa-bell text-md hover:text-[#BD8736]"></i>
  29. </div>
  30. </div>
  31. <div class="border rounded p-5">
  32. <h6 class="font-semibold mb-4">Senarai Agensi Mengikut Status</h6>
  33. <div class="mx-auto text-center" style="width:25%">
  34. <canvas id="agencyPieChart"></canvas>
  35. <h5 class="font-bold my-2">Status</h5>
  36. </div>
  37. </div>
  38. <div class="border rounded">
  39. <h5 class="font-semibold m-5">Rekod Penetapan KPI Pelaburan</h5>
  40. <div class="overflow-x-auto overflow-hidden rounded-[10px]">
  41. <table class="w-full text-sm text-left text-gray-700 border-collapse">
  42. <thead>
  43. <tr>
  44. <th class="text-xs px-4 py-2">Bil</th>
  45. <th class="text-xs px-4 py-2">S-GLC</th>
  46. <th class="text-xs px-4 py-2 text-right">Sasaran Pelaburan 2025 (RM)</th>
  47. <th class="text-xs px-4 py-2 text-right">Penetapan Sasaran Pelaburan (RM) oleh YB Dato’
  48. Pengerusi
  49. </th>
  50. </tr>
  51. </thead>
  52. <tbody>
  53. @foreach ($rekodKPIPelaburan as $index => $data)
  54. <tr>
  55. <td class="px-4 py-2 border">{{ $index + 1 }}</td>
  56. <td class="px-4 py-2 border ">
  57. <a href="#" class="text-blue-800 underline">{{ $data['name'] }}</a>
  58. </td>
  59. <td class="px-4 py-2 border text-right">{{ number_format($data['investment_target'], 2) }}
  60. </td>
  61. <td class="px-4 py-2 border text-right">
  62. {{ number_format($data['investment_target_setting'], 2) }}</td>
  63. </tr>
  64. @endforeach
  65. <tr class="bg-[#012961]">
  66. <td class="px-4 py-2 text-white" colspan="2">Jumlah</td>
  67. <td class="px-4 py-2 text-white text-right">{{ number_format($totalTargetAmount, 2) }}</td>
  68. <td class="px-4 py-2 text-white text-right">{{ number_format($totalTargetAmountYB, 2) }}</td>
  69. </tr>
  70. </tbody>
  71. </table>
  72. </div>
  73. </div>
  74. <div class="border rounded p-5">
  75. <h5 class="font-semibold mb-4">Rekod Penetapan KPI Pelaburan</h5>
  76. <p class="text-xs font-bold">YB Dato’ Pengerusi memohon agar sasaran adalah melebihi sasaran tahun 2024: <span
  77. class="text-[#BD8736]">DEADLINE, 2 WEEK from JPPP MEETING.</span></p>
  78. <p class="text-xs font-bold">15-04-2025 | Jumlah Pelaburan Komited telah dikemaskini berdasarkan data yang diisi
  79. oleh S-GLC. Jumlah pelaburan komited berjumlah RM 2,000,333.00.</p>
  80. </div>
  81. <button
  82. class="bg-[#012961] hover:bg-blue-700 text-white font-semibold w-fit text-xs py-2 px-4 rounded-lg shadow-md transition duration-200 ml-auto">
  83. <i class="fa-solid fa-edit text-white text-xs"></i>
  84. <span>Kemaskini</span>
  85. </button>
  86. </div>
  87. @endsection
  88. @section('scripts')
  89. <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
  90. <script>
  91. const ctx = document.getElementById('agencyPieChart').getContext('2d');
  92. const chartLabels = @json($chartLabel);
  93. const chartData = @json($chartPercent);
  94. new Chart(ctx, {
  95. type: 'pie',
  96. data: {
  97. labels: chartLabels,
  98. datasets: [{
  99. label: 'Status',
  100. data: chartData,
  101. backgroundColor: [
  102. '#F9DFF2 ',
  103. '#F9DFC0 ',
  104. '#E0C7FB',
  105. '#CDF6DE',
  106. '#FAEAB7',
  107. '#E0EEFE'
  108. ],
  109. borderWidth: 1
  110. }]
  111. },
  112. options: {
  113. responsive: true,
  114. plugins: {
  115. legend: false,
  116. tooltip: {
  117. callbacks: {
  118. label: function(context) {
  119. let label = context.label || '';
  120. let value = context.parsed;
  121. return `(${value}%)`;
  122. }
  123. }
  124. }
  125. }
  126. }
  127. });
  128. </script>
  129. @endsection