'desc' ]; $count = thisModel::where($where)->count(); $list = thisModel::withCount(['reports'])->field(['id', 'name', 'create_time']) ->where($where) ->order($order) ->page($page,$limit) ->select() ->toArray(); $data = [ 'list' => $list, 'page_no' => $page, 'page_size' => $limit, 'count' => $count, ]; return JsonServer::success('获取成功', $data); } catch (\Exception $e) { return JsonServer::error('获取失败'); } } public function detail() { $id = input('id/d', 0); if (!$item = thisModel::withCount(['reports'])->where('id', $id)->find()) { return JsonServer::error('记录不存在'); } return JsonServer::success('获取成功', $item->toArray()); } public function report(): Json { $input = input('post.'); $rule = [ 'demand_id|需求' => 'require|number', 'name|姓名' => 'require|min:2|max:50', 'phone|手机' => 'require|mobile', // 'company|公司' => '', // 'price|报价' => '', ]; $validate = Validate::rule($rule); if (!$validate->check($input)) { return JsonServer::error($validate->getError()); } DemandReport::create([ 'demand_id' => $input['demand_id'], 'name' => $input['name'], 'phone' => $input['phone'], 'company' => $input['company'] ?: '', 'price' => $input['price'] ?: '', 'create_time' => time(), ]); return JsonServer::success('报名成功'); } }