海南旅游SAAS
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.

95 lines
2.7 KiB

  1. <?php
  2. namespace App\AdminSupplier\Controllers;
  3. use App\AdminSupplier\Repositories\DepositLog;
  4. use App\Traits\StatementTraits;
  5. use Dcat\Admin\Admin;
  6. use Dcat\Admin\Grid;
  7. use Dcat\Admin\Layout\Column;
  8. use Dcat\Admin\Layout\Content;
  9. use Dcat\Admin\Layout\Row;
  10. use Dcat\Admin\Http\Controllers\AdminController;
  11. use Dcat\Admin\Widgets\Card;
  12. class DepositLogController extends AdminController
  13. {
  14. public function index(Content $content)
  15. {
  16. return $content
  17. ->body(
  18. <<<HTML
  19. <div class="content-header">
  20. <section class="content-header breadcrumbs-top">
  21. <h1 class=" float-left">
  22. <span class="text-capitalize">账户交易金</span>
  23. </h1>
  24. <div class="clearfix"></div>
  25. </section>
  26. </div>
  27. HTML
  28. )
  29. ->body(function (Row $row) {
  30. $row->column(4, function (Column $column) {
  31. $column->row(Card::make('正常', function () {
  32. $price = Admin::user()->deposit_normal ?? 0;
  33. return <<<HTML
  34. <div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
  35. <h2 class="ml-1 font-large-1 text-primary">$price</h2>
  36. </div>
  37. HTML;
  38. }));
  39. });
  40. $row->column(4, function (Column $column) {
  41. $column->row(Card::make('冻结', function () {
  42. $price = Admin::user()->deposit_frozen ?? 0;
  43. return <<<HTML
  44. <div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
  45. <h2 class="ml-1 font-large-1 text-primary">$price</h2>
  46. </div>
  47. HTML;
  48. }));
  49. });
  50. $row->column(4, function (Column $column) {
  51. $column->row(Card::make('消费', function () {
  52. $price = Admin::user()->deposit_used ?? 0;
  53. return <<<HTML
  54. <div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
  55. <h2 class="ml-1 font-large-1 text-primary">$price</h2>
  56. </div>
  57. HTML;
  58. }));
  59. });
  60. })
  61. ->body(
  62. Grid::make(new DepositLog('supplier'), function (Grid $grid) {
  63. $grid->model()->where('supplier_id', Admin::user()->id);
  64. $grid->column('id')->sortable();
  65. $grid->column('price');
  66. $grid->column('supplier.company_name', '供应商');
  67. $grid->column('type', '类型')->using(StatementTraits::$depositText);
  68. $grid->column('created_at');
  69. $grid->column('updated_at')->sortable();
  70. $grid->disableDeleteButton();
  71. $grid->disableRowSelector();
  72. $grid->disableCreateButton();
  73. $grid->disableActions();
  74. $grid->filter(function (Grid\Filter $filter) {
  75. $filter->equal('type', '状态')->width(2)->select(StatementTraits::$depositText);
  76. });
  77. })
  78. );
  79. }
  80. }