94 lines
2.9 KiB
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');
|
|
});
|
|
}
|
|
}
|