You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
102 lines
3.1 KiB
102 lines
3.1 KiB
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | Niucloud-admin 企业快速开发的多应用管理平台
|
|
// +----------------------------------------------------------------------
|
|
// | 官方网址:https://www.niucloud.com
|
|
// +----------------------------------------------------------------------
|
|
// | niucloud团队 版权所有 开源版本可自由商用
|
|
// +----------------------------------------------------------------------
|
|
// | Author: Niucloud Team
|
|
// +----------------------------------------------------------------------
|
|
|
|
namespace app\service\api\apiService;
|
|
|
|
use app\model\campus\Campus;
|
|
use app\model\campus_person_role\CampusPersonRole;
|
|
use app\model\chat_friends\ChatFriends;
|
|
use app\model\physical_test\PhysicalTest;
|
|
use core\base\BaseApiService;
|
|
|
|
/**
|
|
* 体测报告-控制器服务层
|
|
* Class MemberService
|
|
* @package app\service\api\member
|
|
*/
|
|
class PhysicalTestService extends BaseApiService
|
|
{
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
}
|
|
|
|
//查询列表
|
|
public function getList(array $where,string $field = '*')
|
|
{
|
|
$page_params = $this->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['customerResourcesHasOne']['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 getTestInfo(array $where)
|
|
{
|
|
$model = new ChatFriends();
|
|
//判断用没有员工id
|
|
if (!empty($where['personnel_id'])) {
|
|
$model = $model->where('personnel_id', $where['personnel_id']);
|
|
}
|
|
if (!empty($where['customer_resources_id'])) {
|
|
$model = $model->where('customer_resources_id', $where['customer_resources_id']);
|
|
}
|
|
$data = $model->find();
|
|
|
|
|
|
if ($data) {
|
|
$data = $data->toArray();
|
|
$res = [
|
|
'code' => 1,
|
|
'msg' => '操作成功',
|
|
'data' => $data
|
|
];
|
|
return $res;
|
|
} else {
|
|
$res = [
|
|
'code' => 0,
|
|
'msg' => '暂无数据',
|
|
'data' => []
|
|
];
|
|
return $res;
|
|
}
|
|
}
|
|
}
|
|
|