|
|
|
@ -0,0 +1,46 @@ |
|
|
|
<?php |
|
|
|
|
|
|
|
namespace App\AdminAgent\Renderable; |
|
|
|
use App\Common\ProductStatus; |
|
|
|
use App\AdminAgent\Repositories\AgentProduct; |
|
|
|
use Dcat\Admin\Admin; |
|
|
|
use Dcat\Admin\Grid; |
|
|
|
use Dcat\Admin\Grid\LazyRenderable; |
|
|
|
|
|
|
|
/** |
|
|
|
* 选择产品 |
|
|
|
* Class SelectProduct |
|
|
|
* @package App\AdminAgent\Renderable |
|
|
|
*/ |
|
|
|
class SelectAgentProduct extends LazyRenderable |
|
|
|
{ |
|
|
|
public function grid(): Grid |
|
|
|
{ |
|
|
|
// 获取外部传递的参数
|
|
|
|
// $id = $this->id;
|
|
|
|
Admin::translation('agent-product'); |
|
|
|
return Grid::make(new AgentProduct(['product.supplier:id,name']), function (Grid $grid) { |
|
|
|
$grid->disableActions(); |
|
|
|
$grid->disableBatchDelete(); |
|
|
|
$grid->disableBatchActions(); |
|
|
|
|
|
|
|
$grid->model()->where(['agent_id' => Admin::user()->id, 'status' => ProductStatus::ON_SALE]); |
|
|
|
$grid->quickSearch(['product.title', 'product.supplier.name'])->placeholder('搜索产品名称、供应商'); |
|
|
|
|
|
|
|
$grid->column('id'); |
|
|
|
$grid->column('product.supplier.name'); |
|
|
|
$grid->column('product.title'); |
|
|
|
$grid->column('product.picture')->image(60, 60); |
|
|
|
$grid->column('sale'); |
|
|
|
$grid->column('stock'); |
|
|
|
$grid->column('updated_at'); |
|
|
|
|
|
|
|
$grid->paginate(15); |
|
|
|
|
|
|
|
$grid->filter(function (Grid\Filter $filter) { |
|
|
|
$filter->like('product.title')->width(4); |
|
|
|
$filter->like('product.supplier.name', '供应商名称')->width(4); |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |