order-food-admin/app/Admin/Controllers/UserTicketController.php

94 lines
2.9 KiB
PHP

<?php
namespace App\Admin\Controllers;
use Carbon\Carbon;
use App\Admin\Repositories\UserTicket;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
use Dcat\Admin\Show;
use Dcat\Admin\Http\Controllers\AdminController;
use Illuminate\Support\Facades\Request;
class UserTicketController extends AdminController
{
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make(UserTicket::with(['quanTicket', 'user', 'adminUser']), function (Grid $grid) {
$quan_id = Request::get('quan_id', 0);
if($quan_id > 0){
$grid->model()->where('quan_id', $quan_id);
}
// $grid->column('id')->sortable();
$grid->column('quanTicket.quan_name', '优惠券名称');
$grid->column('user.phone', '领取人');
$grid->column('adminUser.name', '发放人');
$grid->column('ticket_status')->display(function(){
return ($this->ticket_status == 1 || $this->end_time <= Carbon::now()) ? '1':'0';
})->bool(['0' => true, '1' => false]);
$grid->column('start_time');
$grid->column('end_time');
$grid->column('ticket_desc');
$grid->column('created_at');
$grid->model()->orderBy('created_at', 'desc');
$grid->disableActions();
$grid->disableCreateButton();
$grid->filter(function (Grid\Filter $filter) use($quan_id) {
$filter->expand(false);
$filter->equal('quan_id', '优惠券')->select(admin_route('quan_ticket.api'));
// $filter->like('quan_name');
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new UserTicket(), function (Show $show) {
$show->field('id');
$show->field('user_id');
$show->field('quan_id');
$show->field('admin_user_id');
$show->field('ticket_status');
$show->field('start_time');
$show->field('end_time');
$show->field('ticket_desc');
$show->field('created_at');
$show->field('updated_at');
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new UserTicket(), function (Form $form) {
$form->display('id');
$form->text('user_id');
$form->text('quan_id');
$form->text('admin_user_id');
$form->text('ticket_status');
$form->text('start_time');
$form->text('end_time');
$form->text('ticket_desc');
$form->display('created_at');
$form->display('updated_at');
});
}
}