Laravel背包中的多个日期范围选择器过滤器重叠

时间:2019-12-03 17:29:41

标签: laravel date backpack-for-laravel laravel-backpack

我正在尝试按datedue_date进行过滤。 date过滤器处于活动状态,但改为由due_date过滤。出于某些奇怪的原因,它们重叠了,我不知道为什么。

我的控制器具有以下功能:

... 

private function setFiters()
    {
        $this->crud->addFilter([ // daterange filter
            'type' => 'date_range',
            'name' => 'date',
            'label' => 'Date range',
        ],
            false,
            function ($value) {
                $dates = json_decode($value);
                $this->crud->addClause('where', 'date', '>=', Carbon::createFromFormat('d-m-Y', $dates->from)->toDateTimeString());
                $this->crud->addClause('where', 'date', '<=', Carbon::createFromFormat('d-m-Y', $dates->to)->toDateTimeString() . ' 23:59:59');
            }
        );


        $this->crud->addFilter([ // daterange filter
            'type' => 'date_range',
            'name' => 'due_date',
            'label' => 'Due Date range',
        ],
            false,
            function ($value) {
                $dates = json_decode($value);
                $this->crud->addClause('where', 'due_date', '>=', Carbon::createFromFormat('d-m-Y', $dates->from)->toDateTimeString());
                $this->crud->addClause('where', 'due_date', '<=', Carbon::createFromFormat('d-m-Y', $dates->to)->toDateTimeString() . ' 23:59:59');
            }
        );

       ...

    }
...

date(第一个)过滤器处于活动状态时,查询参数显示如下:

  

https:// ...? 到期日期 =%7B“从”%3A“ 27-11-2019”%2C“到”%3A“ 03 -12-2019“%7D

它按due_date而不是date进行过滤。

0 个答案:

没有答案