where("id", $params['id']); })->when($params['userinfo'], function (Builder $query) use ($params) { //根据userinfo获取用户信息 if ($user = User::where("email", $params['userinfo'])->orWhere("phone", $params['userinfo'])->orWhere("id", $params['userinfo'])->first()) { $query->where("user_id", $user->id); } else { $query->where("id", 0); } })->orderByDesc("id")->paginate($params['page_size']); return [ "total" => $p->total(), "page_total" => $p->lastPage(), "list" => array_map(function (Order $model) { /** @var OrderGoods $firstGoods */ $firstGoods = $model->goods->first(); return [ "id" => $model->id, "no" => $model->goods->pluck("sn")->implode("\sn"), "goods_name" => $firstGoods->goods->name, "goods_sn" => $firstGoods->sn, "user_id" => $model->user_id, "thumb" => $firstGoods->goods->thumb, "email" => $model->user->email, "created_at" => $model->created_at->format("Y-m-d H:i:s"), ]; }, $p->items()), ]; } }