调整后台砍价订单记录查询
parent
078a52f206
commit
4055e850f4
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace App\Admin\Controllers;
|
namespace App\Admin\Controllers;
|
||||||
|
|
||||||
|
use App\Admin\Renderable\Grid\Filter\BargainOrderSnIn;
|
||||||
use App\Admin\Repositories\BargainOrder;
|
use App\Admin\Repositories\BargainOrder;
|
||||||
use App\Models\BargainOrder as BargainOrderModel;
|
use App\Models\BargainOrder as BargainOrderModel;
|
||||||
use App\Models\BargainOrderLog;
|
use App\Models\BargainOrderLog;
|
||||||
|
|
@ -35,9 +36,20 @@ class BargainOrderController extends AdminController
|
||||||
$grid->column('bargain_price')->display(function ($v) {
|
$grid->column('bargain_price')->display(function ($v) {
|
||||||
return bcdiv($v, 100, 2);
|
return bcdiv($v, 100, 2);
|
||||||
})->prepend('¥');
|
})->prepend('¥');
|
||||||
$grid->column('status');
|
$grid->column('status')->using([
|
||||||
|
0=>'未开始',
|
||||||
|
1=>'砍价中',
|
||||||
|
2=>'已砍完',
|
||||||
|
])->dot([
|
||||||
|
0=>'primary',
|
||||||
|
1=>'warning',
|
||||||
|
2=>'success',
|
||||||
|
]);
|
||||||
$grid->column('expire_at');
|
$grid->column('expire_at');
|
||||||
$grid->column('mallOrder.sn');
|
$grid->column('mallOrder.sn')->filter(BargainOrderSnIn::make([
|
||||||
|
0 => '未下单',
|
||||||
|
1 => '已下单',
|
||||||
|
]));
|
||||||
$grid->column('remark');
|
$grid->column('remark');
|
||||||
$grid->column('created_at');
|
$grid->column('created_at');
|
||||||
$grid->column('updated_at')->sortable();
|
$grid->column('updated_at')->sortable();
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Admin\Renderable\Grid\Filter;
|
||||||
|
|
||||||
|
use Dcat\Admin\Grid\Column\Filter;
|
||||||
|
use Dcat\Admin\Grid\Column\Filter\Checkbox;
|
||||||
|
use Dcat\Admin\Grid\Model;
|
||||||
|
|
||||||
|
class BargainOrderSnIn extends Filter
|
||||||
|
{
|
||||||
|
use Checkbox;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
protected $options = [];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CheckFilter constructor.
|
||||||
|
*
|
||||||
|
* @param array $options
|
||||||
|
*/
|
||||||
|
public function __construct(array $options)
|
||||||
|
{
|
||||||
|
$this->options = $options;
|
||||||
|
|
||||||
|
$this->class = [
|
||||||
|
'all' => uniqid('column-filter-all-'),
|
||||||
|
'item' => uniqid('column-filter-item-'),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a binding to the query.
|
||||||
|
*
|
||||||
|
* @param array $value
|
||||||
|
* @param Model $model
|
||||||
|
*/
|
||||||
|
public function addBinding($value, Model $model)
|
||||||
|
{
|
||||||
|
if (empty($value)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$all = [0, 1];
|
||||||
|
|
||||||
|
if (array_diff($all, $value)) {//无差别则直接跳过
|
||||||
|
//判断查询的状态有哪些;
|
||||||
|
$model->where(function ($query) use ($value) {
|
||||||
|
foreach ($value as $status) {
|
||||||
|
switch ($status) {
|
||||||
|
case 0:
|
||||||
|
$query->orWhere(function ($q) {
|
||||||
|
return $q->whereNull('order_id')->orWhere('order_id', 0);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
$query->orWhereNotNull('order_id');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Render this filter.
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function render()
|
||||||
|
{
|
||||||
|
return $this->renderCheckbox();
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue