getPageParam();//获取请求参数中的页码+分页数 $page = $page_params['page']; $limit = $page_params['limit']; $model = new PhysicalTest(); //判断用没有员工id if (!empty($where['resource_id'])) { $model = $model->where('resource_id', $where['resource_id']); } $data = $model ->field($field) ->order('id','desc') ->append([ 'customerResources' ]) ->with([ 'customerResourcesHasOne' ]) ->paginate([ 'list_rows' => $limit, 'page' => $page, ])->toArray(); foreach ($data['data'] as &$v) { $age = $v['age'];//年龄 $gender = $v['customerResourcesHasOne']['gender'] == 'female' ? 2:1 ;//性别( 1:男,2:女) $height = $v['height'];//身高 $weight = $v['weight'];//体重 $v['calculateChildHealthScore'] = calculateChildHealthScore($age, $gender, $height, $weight);//综合评分 } return $data; } //查询详情 public function getInfo(array $where,string $field = '*') { $model = new PhysicalTest(); //判断用没有体测报告id if (!empty($where['id'])) { $model = $model->where('id', $where['id']); } $data = $model ->field($field) ->append([ 'customerResources' ]) ->with([ 'customerResourcesHasOne' ]) ->find(); if ($data) { $data = $data->toArray(); $age = $data['age'];//年龄 $gender = $data['customerResourcesHasOne']['gender'] == 'female' ? 2 : 1;//性别( 1:男,2:女) $height = $data['height'];//身高 $weight = $data['weight'];//体重 $data['calculateChildHealthScore'] = calculateChildHealthScore($age, $gender, $height, $weight);//综合评分 $res = [ 'code' => 1, 'msg' => '操作成功', 'data' => $data ]; return $res; } else { $res = [ 'code' => 0, 'msg' => '暂无数据', 'data' => [] ]; return $res; } } }