TotalCourse.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace App\Admin\Metrics\Course;
  3. use App\Models\Course;
  4. use Dcat\Admin\Widgets\Metrics\Card;
  5. use Illuminate\Contracts\Support\Renderable;
  6. use Illuminate\Http\Request;
  7. class TotalCourse extends Card
  8. {
  9. /**
  10. * 卡片底部内容.
  11. *
  12. * @var string|Renderable|\Closure
  13. */
  14. protected $footer;
  15. /**
  16. * 初始化卡片.
  17. */
  18. protected function init()
  19. {
  20. parent::init();
  21. $this->title(trans('course.fields.Total_Courses'));
  22. $this->height='120';
  23. }
  24. /**
  25. * 处理请求.
  26. *
  27. * @param Request $request
  28. *
  29. * @return void
  30. */
  31. public function handle(Request $request)
  32. {
  33. $total = Course::query()->whereNull('deleted_at')->count();
  34. $this->content($total);
  35. }
  36. /**
  37. * 渲染卡片内容.
  38. *
  39. * @return string
  40. */
  41. public function renderContent()
  42. {
  43. $content = parent::renderContent();
  44. return <<<HTML
  45. <div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
  46. <h2 class="ml-1 font-lg-1">{$content}</h2>
  47. </div>
  48. HTML;
  49. }
  50. }