dcat-admin框架 筛选某个字段时候,统计总金额

dcat-admin 文档 数据表格,头部脚步文章内给出了 获取查询条件的方法.
我加一个,判断查询某个字段后,再查询总金额的功能

            $grid->header(function ($collection) use($grid) {
                $query = ModelsCostReimbursement::query();
                $searchArr = [];

                // 拿到表格筛选 where 条件数组进行遍历
                $grid->model()->getQueries()->unique()->each(function ($value) use (&$query,&$searchArr) {
                    if (in_array($value['method'], ['paginate', 'get', 'orderBy', 'orderByDesc'], true)) {
                        return;
                    }
                    //存储查询的字段名
                    $searchArr[] = $value['arguments'][0];

                    $query = call_user_func_array([$query, $value['method']], $value['arguments'] ?? []);
                });
                //筛选后 展示 统计数据
                //如果搜索了date,project_id,user_id则统计金额
                foreach(['date','project_id','user_id'] as $item){
                    if (in_array($item, $searchArr)) {
                        // 查出统计数据
                        $data = $query->sum('amount');
                        return Card::make('总额:' . $data);
                    }
                }
            });
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!