重新建立0523
This commit is contained in:
parent
554e2c0a2c
commit
394eeaefb8
|
|
@ -169,17 +169,19 @@ class Base extends Controller{
|
|||
// 第一种:用户详情(所有数据都有)
|
||||
// 第二种:手动记录(只有最新体重)
|
||||
// 第三种:修改原始体重(只有原始体重)
|
||||
// dump($data);
|
||||
if(count($data) > 0){
|
||||
$result_data['target_weight'] = $data['target_weight'];
|
||||
$result_data['initial_weight'] = $data['initial_weight'];
|
||||
$result_data['cumulative_weight'] = $data['weight'] - $data['initial_weight'];
|
||||
$result_data['cumulative_day'] = $this->daysSince($user_data['initial_date']);
|
||||
$result_data['cumulative_weight'] = bcsub($data['weight'],$data['initial_weight'],2);
|
||||
$result_data['cumulative_day'] = $data['initial_date'] == 0?0:$this->daysSince($data['initial_date']);
|
||||
}else{
|
||||
$result_data['target_weight'] = 0;
|
||||
$result_data['initial_weight'] = 0;
|
||||
$result_data['cumulative_weight'] = 0;
|
||||
$result_data['cumulative_day'] = 0;
|
||||
}
|
||||
// dump($result_data);
|
||||
return $result_data;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -13,13 +13,13 @@ use app\app\controller\Skip;
|
|||
class Card extends Base{
|
||||
|
||||
protected $color = ['#FF5656','#FFAB00','#5AD06D','#6492F6','#3967D6'];
|
||||
protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data'];
|
||||
protected $db_content = [
|
||||
'2'=>'height as v1,weight as v2,bmi as v3',
|
||||
'6'=>'jump_num as v1,jump_time as v2,jump_kcal as v3'
|
||||
];
|
||||
// protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data'];
|
||||
// protected $db_content = [
|
||||
// '2'=>'height as v1,weight as v2,bmi as v3',
|
||||
// '6'=>'jump_num as v1,jump_time as v2,jump_kcal as v3'
|
||||
// ];
|
||||
protected $age_limit = 16;
|
||||
protected $unit_symbol = ['score'=>'分','height'=>'CM','weight'=>'公斤','fat_r'=>'%','fat_w'=>'kg','muscle'=>'%','muscleval'=>'kg','water'=>'kg','bone'=>'kg','protein'=>'%','proteinval'=>'kg','kcal'=>'kcal','sfr'=>'%',];
|
||||
protected $unit_symbol = ['score'=>'分','height'=>'CM','weight'=>'公斤','bmi'=>'','fat_r'=>'%','fat_w'=>'kg','muscle'=>'%','muscleval'=>'kg','water'=>'kg','bone'=>'kg','protein'=>'%','proteinval'=>'kg','kcal'=>'kcal','visceral'=>'','sfr'=>'%',];
|
||||
protected $unit_name = ['score'=>'身体得分','height'=>'身高','weight'=>'体重','bmi'=>'BMI','fat_r'=>'脂肪率','fat_w'=>'脂肪量','muscle'=>'肌肉率','muscleval'=>'肌肉量','water'=>'水分','bone'=>'骨重','protein'=>'蛋白率','proteinval'=>'蛋白量','kcal'=>'基础代谢','visceral'=>'内脏指数','sfr'=>'皮下脂肪','body_level'=>'肥胖等级','body_type'=>'身体类型'];
|
||||
protected $bhw_list = [
|
||||
'bmi'=>[
|
||||
|
|
@ -68,6 +68,9 @@ class Card extends Base{
|
|||
protected $card_body_curve_arr2 = ['体重','BMI','肌肉率','脂肪率'];
|
||||
protected $card_body_curve_arr3 = ['#fb7b92','#6bb0fe','#ff9f40','#3fcba7'];
|
||||
|
||||
|
||||
|
||||
|
||||
################################################################接口################################################################
|
||||
################################################################接口################################################################
|
||||
################################################################接口################################################################
|
||||
|
|
@ -75,7 +78,7 @@ class Card extends Base{
|
|||
|
||||
// 详细卡片信息
|
||||
// $data = ['id'=>'2']
|
||||
public function card_data_detailed($data=['aud_id'=>'11','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
public function card_data_detailed($data=['aud_id'=>'25','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
|
|
@ -127,11 +130,14 @@ class Card extends Base{
|
|||
}
|
||||
|
||||
// 修改初始体重/目标体重
|
||||
public function card_modify_weight($data = ['aud_id'=>'25','data'=>'25','type'=>1,'token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
public function card_modify_weight($data = ['aud_id'=>'25','weight'=>'25','type'=>1,'time'=>'','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
if(!array_key_exists('aud_id', $data) || !array_key_exists('data', $data) || !array_key_exists('type', $data) || !array_key_exists('token', $data)){
|
||||
if(!is_array($data)){
|
||||
return $this->msg(10005);
|
||||
}
|
||||
if(!array_key_exists('aud_id', $data) || !array_key_exists('weight', $data) || !array_key_exists('type', $data) || !array_key_exists('time', $data) || !array_key_exists('token', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
if($this->token_time_validate($data['token']) === false){
|
||||
|
|
@ -142,23 +148,39 @@ class Card extends Base{
|
|||
return $this->modify_weight_action($data);
|
||||
}
|
||||
|
||||
// 获取记录信息列表
|
||||
public function get_card_record_data($data = ['aud_id'=>'25','s_time'=>'2024-04-01 10:10:10','e_time'=>'2024-06-12 10:10:10','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
// // 获取记录信息列表
|
||||
// public function get_card_record_data_group($data = ['aud_id'=>'25','s_time'=>'2024-04-01 10:10:10','e_time'=>'2024-06-12 10:10:10','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
// if(count(input('post.')) > 0){
|
||||
// $data = input('post.');
|
||||
// }
|
||||
// if(!array_key_exists('aud_id', $data) || !array_key_exists('s_time', $data) || !array_key_exists('e_time', $data) || !array_key_exists('token', $data)){
|
||||
// return $this->msg(10001);
|
||||
// }
|
||||
// if($this->token_time_validate($data['token']) === false){
|
||||
// return $this->msg(20001);
|
||||
// }
|
||||
// unset($data['token']);
|
||||
// $data['acd_id'] = '2';
|
||||
// return $this->get_all_record_data($data,'group');
|
||||
|
||||
if(!array_key_exists('aud_id', $data) || !array_key_exists('s_time', $data) || !array_key_exists('e_time', $data) || !array_key_exists('token', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
if($this->token_time_validate($data['token']) === false){
|
||||
return $this->msg(20001);
|
||||
}
|
||||
unset($data['token']);
|
||||
$data['acd_id'] = '2';
|
||||
return $this->get_all_record_data($data);
|
||||
// }
|
||||
// // 获取记录信息列表
|
||||
// public function get_card_record_data_page($data = ['aud_id'=>'25','page'=>1,'token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
// if(count(input('post.')) > 0){
|
||||
// $data = input('post.');
|
||||
// }
|
||||
|
||||
}
|
||||
// if(!array_key_exists('aud_id', $data) || !array_key_exists('page', $data) || !array_key_exists('token', $data)){
|
||||
// return $this->msg(10001);
|
||||
// }
|
||||
// if($this->token_time_validate($data['token']) === false){
|
||||
// return $this->msg(20001);
|
||||
// }
|
||||
// unset($data['token']);
|
||||
// $data['acd_id'] = '2';
|
||||
// return $this->get_all_record_data($data,'page');
|
||||
|
||||
// }
|
||||
// 删除历史数据
|
||||
public function card_del_record_data($data = ['id'=>'16','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
if(count(input('post.')) > 0){
|
||||
|
|
@ -180,11 +202,11 @@ class Card extends Base{
|
|||
}
|
||||
|
||||
// 数据对比
|
||||
public function card_data_contrast($data = ['id_arr'=>'24,25','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
public function card_data_contrast($data = ['before_id'=>'24','after_id'=>'25','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
if(!array_key_exists('id_arr', $data) || !array_key_exists('token', $data)){
|
||||
if(!array_key_exists('before_id', $data) || !array_key_exists('after_id', $data) || !array_key_exists('token', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
if($this->token_time_validate($data['token']) === false){
|
||||
|
|
@ -202,18 +224,30 @@ class Card extends Base{
|
|||
################################################card_data_detailed
|
||||
// 用户身体数据卡片获取
|
||||
public function get_user_body_data($data){
|
||||
$result = Db::table('app_card_body_data')
|
||||
->alias('acbd')
|
||||
->join('app_user_data aud','acbd.aud_id = aud.id','LEFT')
|
||||
->where(['acbd.aud_id'=>$data['aud_id']])
|
||||
->order('acbd.record_time desc')
|
||||
->field('acbd.*,aud.birthday,aud.gender,aud.target_weight,aud.initial_weight,aud.initial_date')
|
||||
->find();
|
||||
// $result = Db::table('app_card_body_data')
|
||||
// ->alias('acbd')
|
||||
// ->join('app_user_data aud','acbd.aud_id = aud.id','LEFT')
|
||||
// ->where(['acbd.aud_id'=>$data['aud_id']])
|
||||
// ->order('acbd.record_time desc')
|
||||
// ->field('acbd.*,aud.birthday,aud.gender,aud.target_weight,aud.initial_weight,aud.initial_date')
|
||||
// ->find();
|
||||
// dump($data);
|
||||
$result = Db::query("
|
||||
select
|
||||
Top 1
|
||||
acbd.*,aud.birthday,aud.gender,aud.target_weight,aud.initial_weight,aud.initial_date
|
||||
from app_card_body_data as acbd
|
||||
left join app_user_data as aud on acbd.aud_id=aud.id
|
||||
where acbd.aud_id='".$data['aud_id']."'
|
||||
order by acbd.record_time desc
|
||||
");
|
||||
// dump($result);
|
||||
// die;
|
||||
if(!$result){
|
||||
return $this->msg(10004);
|
||||
}else{
|
||||
// $curve_bottom = $this->card_curve_target_action($result);
|
||||
$result_end = $this->processing_return_data_new($result);
|
||||
$result_end = $this->processing_return_data_new($result[0]);
|
||||
return $this->msg($result_end);
|
||||
}
|
||||
}
|
||||
|
|
@ -303,18 +337,35 @@ class Card extends Base{
|
|||
// 曲线图动作函数
|
||||
public function curve_chart_action($data){
|
||||
$card_body_curve_arr = implode(',',$this->card_body_curve_arr);
|
||||
$user_data_list = Db::query("
|
||||
select
|
||||
record_time,
|
||||
$card_body_curve_arr
|
||||
from app_card_body_data
|
||||
where aud_id='".$data['aud_id']."'
|
||||
and record_time between '".$data['s_time']."'
|
||||
and '".$data['e_time']."'
|
||||
order by record_time desc
|
||||
");
|
||||
// $user_data_list = Db::query("
|
||||
// select
|
||||
// record_time,
|
||||
// $card_body_curve_arr
|
||||
// from app_card_body_data
|
||||
// where aud_id='".$data['aud_id']."'
|
||||
// and record_time between '".$data['s_time']."'
|
||||
// and '".$data['e_time']."'
|
||||
// order by record_time desc
|
||||
// ");
|
||||
$user_data_list = Db::table('app_card_body_data')
|
||||
->where('aud_id', $data['aud_id'])
|
||||
->whereTime('record_time', 'between', [$data['s_time'], $data['e_time']])
|
||||
->field("record_time,REPLACE(CONVERT(varchar(10), record_time, 23), '-', '/') AS b_time,$card_body_curve_arr")
|
||||
->order('record_time desc')
|
||||
->select();
|
||||
$data_arr = [];
|
||||
$record_arr1 = [];
|
||||
$record_arr2 = [];
|
||||
if(count($user_data_list)>0){
|
||||
foreach ($user_data_list as $key => $value) {
|
||||
if(!in_array($value['b_time'],$record_arr1)){
|
||||
array_push($record_arr1,$value['b_time']);
|
||||
$user_data_list[$key]['muscle'] = explode(',',$user_data_list[$key]['muscle'])[0];
|
||||
$user_data_list[$key]['fat_r'] = explode(',',$user_data_list[$key]['fat_r'])[0];
|
||||
array_push($record_arr2,$user_data_list[$key]);
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($this->card_body_curve_arr as $key => $value) {
|
||||
$temporary_arr = [];
|
||||
$temporary_arr['title'] = $this->card_body_curve_arr2[$key];
|
||||
|
|
@ -322,9 +373,9 @@ class Card extends Base{
|
|||
$temporary_arr['line']['categories'] = [];
|
||||
$temporary_arr['line']['series'][0]['color'] = $this->card_body_curve_arr3[$key];
|
||||
$temporary_arr['line']['series'][0]['data'] = [];
|
||||
foreach ($user_data_list as $k => $v) {
|
||||
array_push($temporary_arr['line']['categories'],$user_data_list[$k]['record_time']);
|
||||
array_push($temporary_arr['line']['series'][0]['data'],$user_data_list[$k][$value]);
|
||||
foreach ($record_arr2 as $k => $v) {
|
||||
array_push($temporary_arr['line']['categories'],$record_arr2[$k]['b_time']);
|
||||
array_push($temporary_arr['line']['series'][0]['data'],$record_arr2[$k][$value]);
|
||||
}
|
||||
array_push($data_arr,$temporary_arr);
|
||||
}
|
||||
|
|
@ -498,6 +549,10 @@ class Card extends Base{
|
|||
|
||||
################################################card_modify_weight
|
||||
public function modify_weight_action($data){
|
||||
// $data['aud_id'] = 26;
|
||||
// $data['weight'] = 60;
|
||||
// dump($data);
|
||||
// die;
|
||||
|
||||
$result = Db::query("
|
||||
select
|
||||
|
|
@ -511,22 +566,29 @@ class Card extends Base{
|
|||
where acbd.aud_id = ".$data['aud_id']."
|
||||
order by acbd.record_time desc
|
||||
");
|
||||
// $result = Db::table('app_card_body_data')->where(['id'=>$data['aud_id']])->order('record_time desc')->field('weight')->find();
|
||||
if($data['type'] == 1){
|
||||
// 修改目标体重
|
||||
$bhw_date = ['target_weight'=>$data['data']];
|
||||
$bhw_date = ['target_weight'=>$data['weight']];
|
||||
}else if($data['type'] == 2){
|
||||
// 修改原始体重
|
||||
$bhw_date = ['initial_weight'=>$data['data'],'initial_date' => $data['time']];
|
||||
$bhw_date = ['initial_weight'=>$data['weight'],'initial_date' => $data['time']];
|
||||
}else{
|
||||
return $this->msg(10005);
|
||||
}
|
||||
$result_update = Db::table('app_user_data')->where(['id'=>$data['aud_id']])->update($bhw_date);
|
||||
// dump($result_update);
|
||||
// dump($result[0]['weight']);
|
||||
// dump($result);
|
||||
|
||||
if($result_update){
|
||||
$target_current = $this->base_target_initial_cumulative_weight([
|
||||
'weight'=>$result['weight'],
|
||||
'target_weight'=>$data['type'] == 1?$data['data']:$result[0]['target_weight'],
|
||||
'initial_weight'=>$data['type'] == 2?$data['data']:$result[0]['initial_weight'],
|
||||
'initial_date'=>$data['type'] == 2?$data['time']:$result[0]['initial_date'],
|
||||
'weight'=>$result[0]['weight'],
|
||||
'target_weight'=>$data['type'] == 1?$data['weight']:$result[0]['target_weight'],
|
||||
'initial_weight'=>$data['type'] == 1?$result[0]['initial_weight']:$data['weight'],
|
||||
'initial_date'=>$data['type'] == 1?$result[0]['initial_date']:$data['time'],
|
||||
]);
|
||||
// die;
|
||||
// dump($target_current);
|
||||
return $this->msg($target_current);
|
||||
}else{
|
||||
return $this->msg(10002);
|
||||
|
|
@ -536,35 +598,55 @@ class Card extends Base{
|
|||
|
||||
################################################get_card_record_data
|
||||
// 获取历史数据记录信息列表
|
||||
public function get_all_record_data($data){
|
||||
// public function get_all_record_data($data,$type){
|
||||
// $return_result = [];
|
||||
// if($type == 'group'){
|
||||
// $result = Db::query("
|
||||
// select
|
||||
// id,
|
||||
// CONVERT(varchar(10), record_time, 120) AS r_t,
|
||||
// CONVERT(varchar(19), record_time, 120) AS record_time,
|
||||
// height as v1,
|
||||
// weight as v2,
|
||||
// bmi as v3
|
||||
// from app_card_body_data
|
||||
// where aud_id='".$data['aud_id']."'
|
||||
// and record_time between '".$data['s_time']."' and '".$data['e_time']."'
|
||||
// and is_del = 0
|
||||
// order by record_time desc");
|
||||
// foreach ($result as $key => $value) {
|
||||
// if(array_key_exists($value['r_t'], $return_result)){
|
||||
// array_push($return_result[$value['r_t']], ['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']);
|
||||
// }else{
|
||||
// $return_result[$value['r_t']] = [['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']];
|
||||
// }
|
||||
// }
|
||||
// }else{
|
||||
// $result = Db::table('app_card_body_data')->where(['aud_id'=>$data['aud_id']])->field('id,record_time,height,weight,bmi')->order('record_time desc')->page($data['page'],$this->pagesize)->select();
|
||||
// $return_result['totalrows'] = Db::table('app_card_body_data')->where(['aud_id'=>$data['aud_id']])->count();
|
||||
// $return_result['rows'] = [];
|
||||
// $return_result['pageno'] = $data['page'];
|
||||
// $return_result['pagesize'] = $this->pagesize;
|
||||
// $return_result['totalpage'] = ceil($return_result['totalrows']/$this->pagesize);
|
||||
|
||||
$result = Db::query("
|
||||
select
|
||||
id,
|
||||
CONVERT(varchar(10), record_time, 120) AS r_t,
|
||||
CONVERT(varchar(19), record_time, 120) AS record_time,
|
||||
".$this->db_content[$data['acd_id']]."
|
||||
from ".$this->db_name[$data['acd_id']]."
|
||||
where aud_id='".$data['aud_id']."'
|
||||
and record_time between '".$data['s_time']."' and '".$data['e_time']."'
|
||||
and is_del = 0
|
||||
order by record_time desc");
|
||||
// dump($result);
|
||||
// die;
|
||||
$return_result = [];
|
||||
foreach ($result as $key => $value) {
|
||||
$result[$key]['v1_name'] = '身高';
|
||||
$result[$key]['v2_name'] = '体重';
|
||||
$result[$key]['v3_name'] = 'BMI';
|
||||
if(array_key_exists($value['r_t'], $return_result)){
|
||||
array_push($return_result[$value['r_t']], ['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']);
|
||||
}else{
|
||||
$return_result[$value['r_t']] = [['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']];
|
||||
}
|
||||
}
|
||||
return $this->msg(['original'=>$result,'optimization'=>$return_result]);
|
||||
// return ;
|
||||
}
|
||||
|
||||
// foreach ($result as $key => $value) {
|
||||
// array_push($return_result['rows'],[
|
||||
// 'id'=>$value['id'],
|
||||
// 'v1_name'=>'身高',
|
||||
// 'v1'=>$value['height'],
|
||||
// 'v2_name'=>'体重',
|
||||
// 'v2'=>$value['weight'],
|
||||
// 'v3_name'=>'BMI',
|
||||
// 'v3'=>$value['bmi'],
|
||||
// ]);
|
||||
// }
|
||||
|
||||
|
||||
|
||||
// }
|
||||
// return $this->msg($return_result);
|
||||
// }
|
||||
|
||||
|
||||
################################################################其他接口################################################################
|
||||
|
|
@ -578,56 +660,92 @@ class Card extends Base{
|
|||
|
||||
// 身体数据对比
|
||||
public function body_data_contrast($data){
|
||||
|
||||
$data2 = explode(',',$data['id_arr']);
|
||||
// dump($data);
|
||||
$data2 = [$data['before_id'],$data['after_id']];
|
||||
$data3 = implode(',',$data2);
|
||||
// dump($data2);
|
||||
// die;
|
||||
$calculate_arr = [];
|
||||
$result = Db::query("
|
||||
select
|
||||
acbd.id,
|
||||
acbd.height,
|
||||
acbd.weight,
|
||||
acbd.bmi,
|
||||
acbd.height_data as height,
|
||||
acbd.weight_data as weight,
|
||||
acbd.bmi_data as bmi,
|
||||
acbd.fat_r,
|
||||
acbd.fat_w,
|
||||
acbd.muscle,
|
||||
acbd.muscleval,
|
||||
acbd.water,
|
||||
acbd.proteinval,
|
||||
acbd.bone,
|
||||
acbd.protein,
|
||||
acbd.kcal,
|
||||
acbd.visceral,
|
||||
acbd.sfr,
|
||||
acbd.record_time,
|
||||
REPLACE(CONVERT(varchar(10), acbd.record_time, 23), '-', '/') AS b_time,
|
||||
aud.nickname,
|
||||
aud.gender,
|
||||
aud.birthday
|
||||
aud.birthday,
|
||||
aud.head_pic
|
||||
from app_card_body_data as acbd
|
||||
left join app_user_data as aud on acbd.aud_id=aud.id
|
||||
where acbd.id in (".$data['id_arr'].")
|
||||
where acbd.id in ($data3)
|
||||
");
|
||||
// dump($result);
|
||||
// die;
|
||||
if(!$result || count($result)<2){
|
||||
return $this->msg(10004);
|
||||
}
|
||||
foreach ($data2 as $key => $value) {
|
||||
foreach ($result as $k => $v) {
|
||||
if($value == $v['id']){
|
||||
array_push($calculate_arr, $v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$return_data['nickname'] = $calculate_arr[0]['nickname'];
|
||||
if($calculate_arr[0]['gender']==1){
|
||||
$return_data['gender'] = '男';
|
||||
}else if ($calculate_arr[0]['gender']==2) {
|
||||
$return_data['gender'] = '女';
|
||||
// 调整顺序
|
||||
foreach ($result as $key => $value) {
|
||||
if($value['id'] == $data2[0]){
|
||||
$calculate_arr['before'] = $value;
|
||||
}else{
|
||||
$return_data['gender'] = '保密';
|
||||
$calculate_arr['after'] = $value;
|
||||
}
|
||||
// bcsub(,,20)
|
||||
$return_data['age'] = $this->calculate_age($calculate_arr[0]['birthday']);
|
||||
$return_data['time'] = $this->daysSince($calculate_arr[0]['record_time'],$calculate_arr[1]['record_time']);
|
||||
$return_data['weight_loss'] = bcsub($calculate_arr[0]['weight'],$calculate_arr[1]['weight'],1);
|
||||
$return_data['reduce_fat'] = bcsub(explode(',',$calculate_arr[0]['fat_w'])[0],explode(',',$calculate_arr[1]['fat_w'])[0],2);
|
||||
$return_data['between_time'] = $calculate_arr[0]['b_time'].'-'.$calculate_arr[1]['b_time'];
|
||||
$return_data['execl_data']['height'] = ['身高',bcsub($calculate_arr[0]['height'],$calculate_arr[1]['height'],1),$calculate_arr[0]['height'],$calculate_arr[1]['height']];
|
||||
$return_data['execl_data']['weight'] = ['体重',bcsub($calculate_arr[0]['weight'],$calculate_arr[1]['weight'],1),$calculate_arr[0]['weight'],$calculate_arr[1]['weight']];
|
||||
$return_data['execl_data']['bmi'] = ['BMI',bcsub($calculate_arr[0]['bmi'],$calculate_arr[1]['bmi'],1),$calculate_arr[0]['bmi'],$calculate_arr[1]['bmi']];
|
||||
}
|
||||
// dump($calculate_arr);
|
||||
// die;
|
||||
|
||||
$return_data['time'] = $calculate_arr['before']['b_time'].'-'.$calculate_arr['after']['b_time'];
|
||||
$return_data['headimg'] = $calculate_arr['before']['head_pic'];
|
||||
$return_data['name'] = $calculate_arr['before']['nickname'];
|
||||
$return_data['gender'] = $calculate_arr['before']['gender'];
|
||||
$return_data['age'] = $this->calculate_age($calculate_arr['before']['birthday']);
|
||||
$return_data['day'] = abs($this->daysSince($calculate_arr['before']['record_time'],$calculate_arr['after']['record_time']));
|
||||
|
||||
$return_data['list'] = [];
|
||||
|
||||
foreach ($calculate_arr['before'] as $key => $value) {
|
||||
if(in_array($key, ['height','weight','bmi','fat_r','fat_w','muscle','muscleval','water','proteinval','bone','protein','kcal','visceral','sfr'])){
|
||||
$before_arr = explode(',', $value);
|
||||
$after_arr = explode(',', $calculate_arr['after'][$key]);
|
||||
// $calculate_arr['before'][$key] = explode(',', $value);
|
||||
|
||||
array_push($return_data['list'], [
|
||||
'firstresult'=>[
|
||||
'color'=>'',
|
||||
'level'=>$before_arr[1],
|
||||
'value'=>$before_arr[0],
|
||||
'title'=>$this->unit_name[$key],
|
||||
'unit'=>$this->unit_symbol[$key],
|
||||
'name'=>$key,
|
||||
],
|
||||
'secondresult'=>[
|
||||
'color'=>'',
|
||||
'level'=>$after_arr[1],
|
||||
'value'=>$after_arr[0],
|
||||
'title'=>$this->unit_name[$key],
|
||||
'unit'=>$this->unit_symbol[$key],
|
||||
'name'=>$key,
|
||||
],
|
||||
'diffval'=>$before_arr[0]-$after_arr[0],
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
// dump($return_data);
|
||||
// die;
|
||||
return $this->msg($return_data);
|
||||
|
|
|
|||
|
|
@ -12,14 +12,203 @@ use app\app\controller\Skip;
|
|||
|
||||
class Cardparts extends Base{
|
||||
|
||||
protected $color = ['#FF5656','#FFAB00','#5AD06D','#6492F6','#3967D6'];
|
||||
protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data'];
|
||||
protected $color = ['#FF5656','#FF5656','#5AD06D','#6492F6','#3967D6'];
|
||||
// 脂肪率&脂肪量
|
||||
protected $fat_r_w = [
|
||||
'man'=>[
|
||||
'young'=>[
|
||||
['min_val'=>'0','max_val'=>'10','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'10','max_val'=>'21','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'21','max_val'=>'26','text'=>'偏高','color'=>'#5ad06d'],
|
||||
['min_val'=>'26','max_val'=>'50','text'=>'高','color'=>'#6492f6'],
|
||||
],
|
||||
'aging'=>[
|
||||
['min_val'=>'0','max_val'=>'11','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'11','max_val'=>'22','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'22','max_val'=>'27','text'=>'偏高','color'=>'#5ad06d'],
|
||||
['min_val'=>'27','max_val'=>'50','text'=>'高','color'=>'#6492f6'],
|
||||
],
|
||||
],
|
||||
'woman'=>[
|
||||
'young'=>[
|
||||
['min_val'=>'0','max_val'=>'20','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'20','max_val'=>'31','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'31','max_val'=>'38','text'=>'偏高','color'=>'#5ad06d'],
|
||||
['min_val'=>'38','max_val'=>'80','text'=>'高','color'=>'#6492f6'],
|
||||
],
|
||||
'aging'=>[
|
||||
['min_val'=>'0','max_val'=>'21','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'21','max_val'=>'32','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'32','max_val'=>'39','text'=>'偏高','color'=>'#5ad06d'],
|
||||
['min_val'=>'39','max_val'=>'80','text'=>'高','color'=>'#6492f6'],
|
||||
]
|
||||
]
|
||||
];
|
||||
// 肌肉率&肌肉量
|
||||
protected $muscle_muscleval = [
|
||||
'man'=>[
|
||||
['min_val'=>'0','max_val'=>'40','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'40','max_val'=>'60','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'60','max_val'=>'100','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'woman'=>[
|
||||
['min_val'=>'0','max_val'=>'30','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'30','max_val'=>'50','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'50','max_val'=>'100','text'=>'优','color'=>'#5ad06d'],
|
||||
]
|
||||
];
|
||||
// 水分
|
||||
protected $water = [
|
||||
'man'=>[
|
||||
['min_val'=>'0','max_val'=>'55','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'55','max_val'=>'65','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'65','max_val'=>'100','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'woman'=>[
|
||||
['min_val'=>'0','max_val'=>'45','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'45','max_val'=>'60','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'60','max_val'=>'100','text'=>'优','color'=>'#5ad06d'],
|
||||
]
|
||||
];
|
||||
// 蛋白量&蛋白率
|
||||
protected $proteinval_protein = [
|
||||
'man'=>[
|
||||
['min_val'=>'0','max_val'=>'16','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'16','max_val'=>'18','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'18','max_val'=>'50','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'woman'=>[
|
||||
['min_val'=>'0','max_val'=>'14','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'14','max_val'=>'16','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'16','max_val'=>'50','text'=>'优','color'=>'#5ad06d'],
|
||||
]
|
||||
];
|
||||
// 骨重
|
||||
protected $bone = [
|
||||
'man'=>[
|
||||
'60'=>[
|
||||
['min_val'=>'0','max_val'=>'2.4','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'2.4','max_val'=>'2.6','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'2.6','max_val'=>'6','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'60_75'=>[
|
||||
['min_val'=>'0','max_val'=>'2.8','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'2.8','max_val'=>'3','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'3','max_val'=>'6','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'75'=>[
|
||||
['min_val'=>'0','max_val'=>'3.1','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'3.1','max_val'=>'3.3','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'3.3','max_val'=>'7','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
],
|
||||
'woman'=>[
|
||||
'45'=>[
|
||||
['min_val'=>'0','max_val'=>'1.7','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'1.7','max_val'=>'1.9','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'1.9','max_val'=>'5','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'45_60'=>[
|
||||
['min_val'=>'0','max_val'=>'2.1','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'2.1','max_val'=>'2.3','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'2.3','max_val'=>'5','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'60'=>[
|
||||
['min_val'=>'0','max_val'=>'2.4','text'=>'不足','color'=>'#ff5656'],
|
||||
['min_val'=>'2.4','max_val'=>'2.6','text'=>'标准','color'=>'#ffab00'],
|
||||
['min_val'=>'2.6','max_val'=>'5','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
]
|
||||
];
|
||||
|
||||
// 基础代谢
|
||||
protected $kcal = [
|
||||
'man'=>[
|
||||
'3'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'3_10'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'10_18'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'18_30'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'30'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
],
|
||||
'woman'=>[
|
||||
'3'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'3_10'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'10_18'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'18_30'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
'30'=>[
|
||||
['min_val'=>'0','max_val'=>'','text'=>'偏低','color'=>'#ff5656'],
|
||||
['min_val'=>'','max_val'=>'9999','text'=>'优','color'=>'#5ad06d'],
|
||||
],
|
||||
]
|
||||
];
|
||||
|
||||
// BMR标准值(男) BMR标准值(女)
|
||||
// 60.9*体重(kg)-54 61.0*体重(kg)-51
|
||||
// 22.7*体重(kg)+495 22.5*体重(kg)+499
|
||||
// 17.5*体重(kg)+651 12.2*体重(kg)+746
|
||||
// 15.3*体重(kg)+679 14.7*体重(kg)+496
|
||||
// 11.6*体重(kg)+879 8.7*体重(kg)+820
|
||||
|
||||
|
||||
// 内脏指数
|
||||
protected $visceral = [
|
||||
'man'=>[
|
||||
['min_val'=>'0','max_val'=>'9','text'=>'标准','color'=>'#ff5656'],
|
||||
['min_val'=>'9','max_val'=>'14','text'=>'警惕','color'=>'#ffab00'],
|
||||
['min_val'=>'14','max_val'=>'50','text'=>'危险','color'=>'#5ad06d'],
|
||||
],
|
||||
'woman'=>[
|
||||
['min_val'=>'0','max_val'=>'9','text'=>'标准','color'=>'#ff5656'],
|
||||
['min_val'=>'9','max_val'=>'14','text'=>'警惕','color'=>'#ffab00'],
|
||||
['min_val'=>'14','max_val'=>'50','text'=>'危险','color'=>'#5ad06d'],
|
||||
]
|
||||
];
|
||||
// 皮下脂肪
|
||||
protected $sfr = [
|
||||
'man'=>[
|
||||
['min_val'=>'0','max_val'=>'7','text'=>'标准','color'=>'#ff5656'],
|
||||
['min_val'=>'7','max_val'=>'15','text'=>'警惕','color'=>'#ffab00'],
|
||||
['min_val'=>'15','max_val'=>'50','text'=>'危险','color'=>'#5ad06d'],
|
||||
],
|
||||
'woman'=>[
|
||||
['min_val'=>'0','max_val'=>'11','text'=>'标准','color'=>'#ff5656'],
|
||||
['min_val'=>'11','max_val'=>'17','text'=>'警惕','color'=>'#ffab00'],
|
||||
['min_val'=>'17','max_val'=>'50','text'=>'危险','color'=>'#5ad06d'],
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
|
||||
// 计算部分内容的横线标准以及说明文字
|
||||
public function hwb_standard($data){
|
||||
public function conversion_interval($data){
|
||||
|
||||
// dump($data);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -13,9 +13,9 @@ class Index extends Base{
|
|||
protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data','8'=>'app_card_vitalcapacity_data'];
|
||||
// protected $card_key = ['2'=>'body','6'=>'skip','8'=>'vitalcapacity'];
|
||||
protected $card_data = [
|
||||
'2'=>['身体数据','body_data',['height'=>['身高','cm'],'weight'=>['体重','公斤'],'bmi'=>['BMI','无']]],
|
||||
'2'=>['身体数据','body',['height'=>['身高','cm'],'weight'=>['体重','公斤'],'bmi'=>['BMI','无']]],
|
||||
// 'skip'=>['跳绳数据',['height,weight,bmi,record_time']],
|
||||
'8'=>['肺活量','vitalcapacity_data',['average'=>['本次数据','ml']]],
|
||||
'8'=>['肺活量','vitalcapacity',['average'=>['本次数据','ml']]],
|
||||
];
|
||||
|
||||
protected $data_name_unit = [
|
||||
|
|
@ -110,6 +110,10 @@ class Index extends Base{
|
|||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
// dump(input('post.'));
|
||||
// dump(input('get.'));
|
||||
// // dump($data);
|
||||
// die;
|
||||
if(!array_key_exists('token', $data) || !array_key_exists('aud_id', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
|
|
@ -127,14 +131,17 @@ class Index extends Base{
|
|||
$result['card_order'] = [];
|
||||
$result['card_data_list'] = [];
|
||||
$result['target_current'] = $this->base_target_initial_cumulative_weight([]);
|
||||
|
||||
}else{
|
||||
$result['card_order'] = explode(',',$result['card_order']);
|
||||
$calculation_results = $this->get_user_card_data_list($result,$result['id']);
|
||||
// dump($calculation_results);
|
||||
$result['card_data_list'] = $calculation_results[0];
|
||||
$result['target_current'] = $calculation_results[1];
|
||||
}
|
||||
// base_target_initial_cumulative_weight
|
||||
|
||||
// dump($result);
|
||||
// die;
|
||||
$result['birthday'] = str_replace('-', '/', $result['birthday']);
|
||||
foreach ($result['card_data_list'] as $key => $value) {
|
||||
$result['card_data_list'][$key]['record_time'] = str_replace('-', '/', $result['card_data_list'][$key]['record_time']);
|
||||
|
|
@ -233,18 +240,28 @@ class Index extends Base{
|
|||
unset($db_arr[$value]);
|
||||
}
|
||||
}
|
||||
// 添加目标体重于当前体重差数据
|
||||
if($data['initial_date'] == null){
|
||||
$target_current = $this->base_target_initial_cumulative_weight([]);
|
||||
}else{
|
||||
$target_current = $this->base_target_initial_cumulative_weight([
|
||||
'weight'=>$db_arr['2']['weight'],
|
||||
'target_weight'=>$data['target_weight'],
|
||||
'initial_weight'=>$data['initial_weight'],
|
||||
'initial_date'=>$data['initial_date'],
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
// 添加目标体重于当前体重差数据
|
||||
$target_current = $this->base_target_initial_cumulative_weight([
|
||||
'weight'=>$db_arr['2']['weight']>0?$db_arr['2']['weight']:0,
|
||||
'target_weight'=>$data['target_weight']>0?$data['target_weight']:0,
|
||||
'initial_weight'=>$data['initial_weight']>0?$data['initial_weight']:0,
|
||||
'initial_date'=>$data['initial_date']!=null?$data['initial_date']:0,
|
||||
]);
|
||||
|
||||
// if($data['initial_date'] == null){
|
||||
// $target_current = $this->base_target_initial_cumulative_weight([]);
|
||||
// }else{
|
||||
// $target_current = $this->base_target_initial_cumulative_weight([
|
||||
// 'weight'=>$db_arr['2']['weight'],
|
||||
// 'target_weight'=>$data['target_weight'],
|
||||
// 'initial_weight'=>$data['initial_weight'],
|
||||
// 'initial_date'=>$data['initial_date'],
|
||||
// ]);
|
||||
// }
|
||||
// dump($target_current);
|
||||
// die;
|
||||
if(count($db_arr) <= 0){
|
||||
// 没有数据,传递一个空的卡片
|
||||
return [
|
||||
|
|
@ -291,6 +308,7 @@ class Index extends Base{
|
|||
$temporary_arr['record_time'] = $value['record_time'];
|
||||
// $temporary_arr['value'] = $value['record_time'];
|
||||
$temporary_arr['card_name'] = $this->card_data[$value['acd_id']][0];
|
||||
$temporary_arr['card_key'] = $this->card_data[$value['acd_id']][1];
|
||||
$temporary_arr['inside_data'] = [];
|
||||
if(array_key_exists($value['acd_id'],$this->card_data)){
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,124 @@
|
|||
<?php
|
||||
|
||||
namespace app\app\controller;
|
||||
|
||||
use think\Controller;
|
||||
use think\Db;
|
||||
use \think\Validate;
|
||||
use app\app\controller\Calculatebody;
|
||||
use app\app\controller\Skip;
|
||||
|
||||
class Pagingcontrast extends Base{
|
||||
|
||||
protected $color = ['#FF5656','#FFAB00','#5AD06D','#6492F6','#3967D6'];
|
||||
protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data','8'=>'app_card_vitalcapacity_data'];
|
||||
protected $request_name = ['2'=>'get_body_record_data','6'=>'app_card_skip_data','8'=>'app_card_vitalcapacity_data'];
|
||||
protected $pagesize = 10;
|
||||
|
||||
################################################请求接口################################################
|
||||
################################################请求接口################################################
|
||||
################################################请求接口################################################
|
||||
// 获取记录信息(分组)(包含身体、跳绳、肺活量)
|
||||
public function get_all_record_data_group($data = ['aud_id'=>'25','s_time'=>'2024-04-01 10:10:10','e_time'=>'2024-06-12 10:10:10','token'=>'0dafb98a10995c98b5a33b7d59d986ca','type'=>'2']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
if(!array_key_exists('aud_id', $data) || !array_key_exists('s_time', $data) || !array_key_exists('e_time', $data) || !array_key_exists('token', $data) || !array_key_exists('type', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
if($this->token_time_validate($data['token']) === false){
|
||||
return $this->msg(20001);
|
||||
}
|
||||
unset($data['token']);
|
||||
if(array_key_exists($data['type'],$this->request_name)){
|
||||
return $this->jump_transfer_interface($data,'group');
|
||||
}else{
|
||||
return $this->msg(10005);
|
||||
}
|
||||
}
|
||||
// 获取记录信息(分页)(包含身体、跳绳、肺活量)
|
||||
public function get_all_record_data_page($data = ['aud_id'=>'25','page'=>1,'token'=>'0dafb98a10995c98b5a33b7d59d986ca','type'=>'2']){
|
||||
if(count(input('post.')) > 0){
|
||||
$data = input('post.');
|
||||
}
|
||||
if(!array_key_exists('aud_id', $data) || !array_key_exists('page', $data) || !array_key_exists('token', $data) || !array_key_exists('type', $data)){
|
||||
return $this->msg(10001);
|
||||
}
|
||||
if($this->token_time_validate($data['token']) === false){
|
||||
return $this->msg(20001);
|
||||
}
|
||||
unset($data['token']);
|
||||
if(array_key_exists($data['type'],$this->request_name)){
|
||||
return $this->jump_transfer_interface($data,'page');
|
||||
}else{
|
||||
return $this->msg(10005);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
################################################请求接口################################################
|
||||
################################################请求接口################################################
|
||||
################################################请求接口################################################
|
||||
|
||||
public function jump_transfer_interface($data,$str){
|
||||
if($data['type'] == '2'){
|
||||
return $this->get_body_record_data($data,$str);
|
||||
}else if($data['type'] == '6'){
|
||||
return $this->get_body_record_data($data,$str);
|
||||
}else if($data['type'] == '8'){
|
||||
return $this->get_body_record_data($data,$str);
|
||||
}
|
||||
}
|
||||
|
||||
################################################业务部分################################################
|
||||
|
||||
// 获取记录信息列表(分组)-身体
|
||||
// 获取记录信息列表(分页)-身体
|
||||
public function get_body_record_data($data,$type){
|
||||
$return_result = [];
|
||||
if($type == 'group'){
|
||||
$result = Db::query("
|
||||
select
|
||||
id,
|
||||
CONVERT(varchar(10), record_time, 120) AS r_t,
|
||||
CONVERT(varchar(19), record_time, 120) AS record_time,
|
||||
height as v1,
|
||||
weight as v2,
|
||||
bmi as v3
|
||||
from app_card_body_data
|
||||
where aud_id='".$data['aud_id']."'
|
||||
and record_time between '".$data['s_time']."' and '".$data['e_time']."'
|
||||
and is_del = 0
|
||||
order by record_time desc");
|
||||
foreach ($result as $key => $value) {
|
||||
if(array_key_exists($value['r_t'], $return_result)){
|
||||
array_push($return_result[$value['r_t']], ['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']);
|
||||
}else{
|
||||
$return_result[$value['r_t']] = [['id'=>$value['id'],'v1'=>$value['v1'],'v2'=>$value['v2'],'v3'=>$value['v3'],'v1_name'=>'身高','v2_name'=>'体重','v3_name'=>'BMI']];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$result = Db::table('app_card_body_data')->where(['aud_id'=>$data['aud_id']])->field('id,record_time,height,weight,bmi')->order('record_time desc')->page($data['page'],$this->pagesize)->select();
|
||||
$return_result['totalrows'] = Db::table('app_card_body_data')->where(['aud_id'=>$data['aud_id']])->count();
|
||||
$return_result['rows'] = [];
|
||||
$return_result['pageno'] = $data['page'];
|
||||
$return_result['pagesize'] = $this->pagesize;
|
||||
$return_result['totalpage'] = ceil($return_result['totalrows']/$this->pagesize);
|
||||
foreach ($result as $key => $value) {
|
||||
array_push($return_result['rows'],[
|
||||
'id'=>$value['id'],
|
||||
'v1_name'=>'身高',
|
||||
'v1'=>$value['height'],
|
||||
'v2_name'=>'体重',
|
||||
'v2'=>$value['weight'],
|
||||
'v3_name'=>'BMI',
|
||||
'v3'=>$value['bmi'],
|
||||
]);
|
||||
}
|
||||
}
|
||||
return $this->msg($return_result);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -36,6 +36,12 @@ Route::any('/admin/index', 'admin/index/index');
|
|||
|
||||
// // ################################################################APP接口################################################################
|
||||
// // ################################################################APP接口################################################################
|
||||
// ################################公共接口################################
|
||||
// 注册接口12
|
||||
Route::any('/get_all_record_data_group', 'app/pagingcontrast/get_all_record_data_group');
|
||||
// 注册接口12
|
||||
Route::any('/get_all_record_data_page', 'app/pagingcontrast/get_all_record_data_page');
|
||||
|
||||
// ################################登录接口################################
|
||||
// 注册接口12
|
||||
Route::any('/register_action', 'app/login/register_action');
|
||||
|
|
@ -67,8 +73,10 @@ Route::any('/card_manual_recording', 'app/card/card_manual_recording');
|
|||
// 修改初始体重/目标体重
|
||||
Route::any('/card_modify_weight', 'app/card/card_modify_weight');
|
||||
|
||||
// 获取所有记录接口
|
||||
Route::any('/get_card_record_data', 'app/card/get_card_record_data');
|
||||
// 获取所有记录接口(分组)
|
||||
Route::any('/get_card_record_data_group', 'app/card/get_card_record_data_group');
|
||||
// 获取所有记录接口(分页)
|
||||
Route::any('/get_card_record_data_page', 'app/card/get_card_record_data_page');
|
||||
// 删除某个历史数据
|
||||
Route::any('/card_del_record_data', 'app/card/card_del_record_data');
|
||||
|
||||
|
|
|
|||
80
route.php
80
route.php
|
|
@ -1,80 +0,0 @@
|
|||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: liu21st <liu21st@gmail.com>
|
||||
// +----------------------------------------------------------------------
|
||||
|
||||
// var_dump(10);
|
||||
use think\Route;
|
||||
// // ################################################################下载################################################################
|
||||
// // ################################################################下载################################################################
|
||||
|
||||
//下载页
|
||||
Route::get('/download', 'app/download/demo');
|
||||
// // ################################################################管理后台################################################################
|
||||
// // ################################################################管理后台################################################################
|
||||
|
||||
// // // 管理后台登录
|
||||
// // Route::get('/admin/login', 'admin/login/login');
|
||||
// // Route::post('/admin/login_action', 'admin/login/login_action');
|
||||
// // // 管理后台首页
|
||||
// // Route::get('/admin/index', 'admin/index/index');
|
||||
// // Route::get('/admin/welcome', 'admin/index/welcome');
|
||||
// // // APP账号角色管理
|
||||
// // // APP账号数据列表
|
||||
// // Route::get('/admin/member_list', 'admin/member/member_list');
|
||||
// // Route::get('/admin/user_list', 'admin/member/user_list');
|
||||
|
||||
|
||||
|
||||
// // ################################################################APP接口################################################################
|
||||
// // ################################################################APP接口################################################################
|
||||
// ################################身体接口################################
|
||||
// 查找设备
|
||||
Route::any('/get_card_record_data', 'app/card/get_card_record_data');
|
||||
// // 今日数据
|
||||
// Route::any('/skip_today_data', 'app/skip/skip_today_data');
|
||||
// // 数据记录
|
||||
// Route::any('/skip_record_data', 'app/skip/skip_record_data');
|
||||
// // 运动曲线
|
||||
// Route::any('/skip_motion_curve', 'app/skip/skip_motion_curve');
|
||||
// Route::any('/generateRandomJumpData', 'app/skip/generateRandomJumpData');
|
||||
// ################################跳绳接口################################
|
||||
// 查找设备
|
||||
Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// 今日数据
|
||||
Route::any('/skip_today_data', 'app/skip/skip_today_data');
|
||||
// 数据记录
|
||||
Route::any('/skip_record_data', 'app/skip/skip_record_data');
|
||||
// 运动曲线
|
||||
Route::any('/skip_motion_curve', 'app/skip/skip_motion_curve');
|
||||
Route::any('/generateRandomJumpData', 'app/skip/generateRandomJumpData');
|
||||
|
||||
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
// Route::any('/skip_device_check', 'app/skip/skip_device_check');
|
||||
|
||||
// // ################################################################其它测试################################################################
|
||||
// // ################################################################其它测试################################################################
|
||||
Route::any('/generateRandomJumpData', 'app/skip/generateRandomJumpData');
|
||||
Route::any('/setdb', 'app/skip/setdb');
|
||||
|
||||
// 处理404错误 z
|
||||
Route::miss(function(){
|
||||
return '404 Not Found(out)';
|
||||
// 或者你可以重定向到一个错误页面,或者进行其他处理
|
||||
});
|
||||
Loading…
Reference in New Issue