链街Dcat后台
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.

176 lines
4.5 KiB

6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Extensions\CheckRow;
  4. use App\Admin\Extensions\CouponTieEdit;
  5. use App\Admin\Extensions\OrderDetail;
  6. use App\Admin\Extensions\OrderPrint;
  7. use App\Admin\Extensions\OrderStateHandle;
  8. use App\Admin\Forms\CouponTieForm;
  9. use App\Admin\Repositories\ImsCjdcOrderMain;
  10. use Dcat\Admin\Admin;
  11. use Dcat\Admin\Form;
  12. use Dcat\Admin\Grid;
  13. use Dcat\Admin\Show;
  14. use Dcat\Admin\Controllers\AdminController;;
  15. class ImsCjdcOrderMainController extends AdminController
  16. {
  17. /**
  18. * Make a grid builder.
  19. *
  20. * @return Grid
  21. */
  22. protected function grid()
  23. {
  24. return Grid::make(new ImsCjdcOrderMain(), function (Grid $grid) {
  25. //>>1.只展示线上订单打√
  26. //>>2.不同服务站只能看到自己的市场订单
  27. //>>3.订单不允许有添加,编辑,删除
  28. //>>4.订单状态变更√
  29. //>>5.打印功能
  30. //>6.退款
  31. $grid->paginate(10);//每页展示数据10条
  32. //$grid->id;
  33. //$grid->user_id('用户信息');
  34. $grid->column('user_name','用户信息');
  35. $grid->order_num;
  36. $grid->state('订单状态')
  37. ->using(config('order.state'))
  38. ->label([1=>'dark',2=>'danger',3=>'indigo',4=>'success']);
  39. $grid->money;
  40. $grid->column('market.name','所属市场');
  41. $grid->time;
  42. $grid->pay_time;
  43. $grid->actions(new CheckRow('自送'));
  44. $grid->column('配送方式')
  45. ->if(function ($column){
  46. if ($this->state==3){
  47. return true;
  48. }
  49. return false;
  50. })
  51. ->display('站内自送')
  52. ->modal('站内自送',function ($modal){
  53. return CouponTieForm::make();
  54. })
  55. ->else()
  56. ->display('站内自送');
  57. $grid->actions(function (Grid\Displayers\Actions $actions) use ($grid){
  58. $state = $actions->row->state;
  59. if ($state==2){
  60. $actions->append(new OrderStateHandle('接单',3));
  61. $actions->append(new OrderPrint('打印'));
  62. }elseif ($state==31){
  63. $actions->append(new OrderStateHandle('完成',4));
  64. $actions->append(new OrderPrint('打印'));
  65. }elseif ($state==3){
  66. $actions->append(new OrderStateHandle('站内自送',30));
  67. }
  68. $actions->append(new OrderDetail('详情'));
  69. //$actions->append("<a class='btn btn-xs action-btn btn-danger grid-row-refuse' data-id='{$actions->getKey()}'><i class='fa fa-close' title='拒绝退款'>拒绝</i></a>&nbsp;&nbsp;");
  70. //$actions->append("<a class='btn btn-xs action-btn btn-success grid-row-pass' data-id='{$actions->getKey()}'><i class='fa fa-check' title='同意退款'>同意</i></a>");
  71. });
  72. //$grid->column('详情')->modal('详情',function ()use ($grid){
  73. // return view('orderdetail',['id'=>2]);
  74. //
  75. //});
  76. $grid->filter(function (Grid\Filter $filter) {
  77. $filter->equal('id');
  78. });
  79. $grid->disableViewButton();
  80. $grid->disableEditButton();
  81. $grid->disableDeleteButton();
  82. });
  83. }
  84. /**
  85. * Make a show builder.
  86. *
  87. * @param mixed $id
  88. *
  89. * @return Show
  90. */
  91. protected function detail($id)
  92. {
  93. return Show::make($id, new ImsCjdcOrderMain(), function (Show $show) {
  94. $show->id;
  95. $show->user_id;
  96. $show->order_num;
  97. $show->state;
  98. $show->time;
  99. $show->pay_time;
  100. $show->money;
  101. $show->tools(function (Show\Tools $tools) {
  102. $tools->append(new \App\Admin\Actions\Show\OrderDetail());
  103. });
  104. });
  105. }
  106. /**
  107. * Make a form builder.
  108. *
  109. * @return Form
  110. */
  111. protected function form()
  112. {
  113. return Form::make(new ImsCjdcOrderMain(), function (Form $form) {
  114. $form->display('id');
  115. $form->text('user_id');
  116. $form->text('order_num');
  117. $form->text('state');
  118. $form->text('time');
  119. $form->text('pay_time');
  120. $form->text('money');
  121. });
  122. }
  123. public function orderDetail()
  124. {
  125. echo 111;
  126. }
  127. }