添加补贴明细统计
parent
26581d5cea
commit
eaa6a955df
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Admin\Controllers;
|
namespace App\Admin\Controllers;
|
||||||
|
|
||||||
use App\Admin\Repositories\DealerManageSubsidyLog;
|
use App\Admin\Repositories\DealerManageSubsidyLog;
|
||||||
|
use App\Models\DealerManageSubsidyLog as DealerManageSubsidyLogModel;
|
||||||
use Dcat\Admin\Form;
|
use Dcat\Admin\Form;
|
||||||
use Dcat\Admin\Grid;
|
use Dcat\Admin\Grid;
|
||||||
use Dcat\Admin\Http\Controllers\AdminController;
|
use Dcat\Admin\Http\Controllers\AdminController;
|
||||||
|
|
@ -33,7 +34,23 @@ class DealerManageSubsidyLogController extends AdminController
|
||||||
|
|
||||||
$grid->disableCreateButton();
|
$grid->disableCreateButton();
|
||||||
$grid->disableActions();
|
$grid->disableActions();
|
||||||
|
$grid->header(function ($collection) use ($grid) {
|
||||||
|
$query = DealerManageSubsidyLogModel::query();
|
||||||
|
|
||||||
|
// 拿到表格筛选 where 条件数组进行遍历
|
||||||
|
$grid->model()->getQueries()->unique()->each(function ($value) use (&$query) {
|
||||||
|
if (in_array($value['method'], ['paginate', 'get', 'orderBy', 'orderByDesc'], true)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = call_user_func_array([$query, $value['method']], $value['arguments'] ?? []);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 查出统计数据
|
||||||
|
$totalAmount = (clone $query)->sum('total_amount');
|
||||||
|
// 自定义组件
|
||||||
|
return "<div style='padding: 10px;'>金额:".$totalAmount.' 元</div>';
|
||||||
|
});
|
||||||
$grid->filter(function (Grid\Filter $filter) {
|
$grid->filter(function (Grid\Filter $filter) {
|
||||||
$filter->panel(false);
|
$filter->panel(false);
|
||||||
$filter->equal('user.phone', '手机号')->width(3);
|
$filter->equal('user.phone', '手机号')->width(3);
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,12 @@
|
||||||
namespace App\Admin\Controllers;
|
namespace App\Admin\Controllers;
|
||||||
|
|
||||||
use App\Admin\Repositories\DealerManagerSalesLog;
|
use App\Admin\Repositories\DealerManagerSalesLog;
|
||||||
|
use App\Models\DealerManagerSalesLog as DealerManagerSalesLogModel;
|
||||||
use Dcat\Admin\Form;
|
use Dcat\Admin\Form;
|
||||||
use Dcat\Admin\Grid;
|
use Dcat\Admin\Grid;
|
||||||
use Dcat\Admin\Http\Controllers\AdminController;
|
use Dcat\Admin\Http\Controllers\AdminController;
|
||||||
use Dcat\Admin\Show;
|
use Dcat\Admin\Show;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class DealerManagerSalesLogController extends AdminController
|
class DealerManagerSalesLogController extends AdminController
|
||||||
{
|
{
|
||||||
|
|
@ -33,6 +35,33 @@ class DealerManagerSalesLogController extends AdminController
|
||||||
$grid->disableCreateButton();
|
$grid->disableCreateButton();
|
||||||
$grid->disableActions();
|
$grid->disableActions();
|
||||||
|
|
||||||
|
$grid->header(function ($collection) use ($grid) {
|
||||||
|
$query = DealerManagerSalesLogModel::query()->with(['product'])
|
||||||
|
->select(['product_id', DB::raw('sum(sales_volume) as sales_volume')]);
|
||||||
|
|
||||||
|
// 拿到表格筛选 where 条件数组进行遍历
|
||||||
|
$grid->model()->getQueries()->unique()->each(function ($value) use (&$query) {
|
||||||
|
if (in_array($value['method'], ['paginate', 'get', 'orderBy', 'orderByDesc'], true)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = call_user_func_array([$query, $value['method']], $value['arguments'] ?? []);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 查出统计数据
|
||||||
|
$text = '';
|
||||||
|
foreach ($query->groupBy('product_id')->get() as $log) {
|
||||||
|
if ($text !== '') {
|
||||||
|
$text .= "\n";
|
||||||
|
}
|
||||||
|
$text .= $log->product->name.'销量:'.$log->sales_volume;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 自定义组件
|
||||||
|
return "<div style='padding: 10px;'>".$text.'</div>';
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
$grid->filter(function (Grid\Filter $filter) {
|
$grid->filter(function (Grid\Filter $filter) {
|
||||||
$filter->panel(false);
|
$filter->panel(false);
|
||||||
$filter->equal('user.phone', '手机号')->width(3);
|
$filter->equal('user.phone', '手机号')->width(3);
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Admin\Controllers;
|
namespace App\Admin\Controllers;
|
||||||
|
|
||||||
use App\Admin\Repositories\DealerPurchaseLog;
|
use App\Admin\Repositories\DealerPurchaseLog;
|
||||||
|
use App\Models\DealerPurchaseLog as DealerPurchaseLogModel;
|
||||||
use Dcat\Admin\Form;
|
use Dcat\Admin\Form;
|
||||||
use Dcat\Admin\Grid;
|
use Dcat\Admin\Grid;
|
||||||
use Dcat\Admin\Http\Controllers\AdminController;
|
use Dcat\Admin\Http\Controllers\AdminController;
|
||||||
|
|
@ -30,6 +31,24 @@ class DealerPurchaseLogController extends AdminController
|
||||||
$grid->column('order_completed_at');
|
$grid->column('order_completed_at');
|
||||||
$grid->column('created_at')->sortable();
|
$grid->column('created_at')->sortable();
|
||||||
|
|
||||||
|
$grid->header(function ($collection) use ($grid) {
|
||||||
|
$query = DealerPurchaseLogModel::query();
|
||||||
|
|
||||||
|
// 拿到表格筛选 where 条件数组进行遍历
|
||||||
|
$grid->model()->getQueries()->unique()->each(function ($value) use (&$query) {
|
||||||
|
if (in_array($value['method'], ['paginate', 'get', 'orderBy', 'orderByDesc'], true)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = call_user_func_array([$query, $value['method']], $value['arguments'] ?? []);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 查出统计数据
|
||||||
|
$totalAmount = (clone $query)->sum('total_amount');
|
||||||
|
// 自定义组件
|
||||||
|
return "<div style='padding: 10px;'>金额:".$totalAmount.' 元</div>';
|
||||||
|
});
|
||||||
|
|
||||||
$grid->filter(function (Grid\Filter $filter) {
|
$grid->filter(function (Grid\Filter $filter) {
|
||||||
$filter->panel(false);
|
$filter->panel(false);
|
||||||
$filter->equal('user.phone', '手机号')->width(3);
|
$filter->equal('user.phone', '手机号')->width(3);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue