diff --git a/application/NewReedaw/controller/app/Role.php b/application/NewReedaw/controller/app/Role.php index 5e34b4b..9c31503 100644 --- a/application/NewReedaw/controller/app/Role.php +++ b/application/NewReedaw/controller/app/Role.php @@ -164,7 +164,7 @@ class Role extends Base{ } } - // 修改密码 + // 修改账号信息 public function set_my_account_msg(){ $data = input('post.'); try { @@ -362,7 +362,7 @@ class Role extends Base{ // 获取指定用户详细信息 public function get_user_data_information(){ $data = input('post.'); - // try { + try { if(!array_key_exists('token', $data)){ return $this->msg(10001); @@ -377,22 +377,51 @@ class Role extends Base{ return $this->msg(10005); } return $this->get_user_data_information_action($data); - // } catch (\Exception $e) { - // // 捕获异常 - // $logContent["flie"] = $e->getFile(); - // $logContent["line"] = $e->getLine(); - // $logContent['all_content'] = "异常信息:\n"; - // $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; - // $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; - // $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; - // $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; - // $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; - // $this->record_api_log($data, $logContent, null); - // return $this->msg(99999); - // } + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } + + } + // 删除角色 + public function del_member(){ + + $data = input('post.'); + try { + if(!array_key_exists('aud_id', $data) || !array_key_exists('token', $data)){ + return $this->msg(10001); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005); + } + if(!$this->verify_data_is_ok($data['aud_id'],'intnum')){ + return $this->msg(10005); + } + return $this->del_member_action($data); + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } } - ################################################################action################################################################ ################################################################action################################################################ @@ -802,6 +831,20 @@ class Role extends Base{ } return $this->msg($user_all_data); } + + public function del_member_action($data){ + // $zh_data = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->field('id,token')->find(); + + $result = Db::table($this->role_db_name['juese'])->where(['id'=>$data['aud_id']])->update([ + 'is_del'=>1 + ]); + if($result){ + return $this->msg([]); + }else{ + return $this->msg(10002); + } + } + diff --git a/application/NewReedaw/controller/app/Userbody.php b/application/NewReedaw/controller/app/Userbody.php index 15c645b..4856749 100644 --- a/application/NewReedaw/controller/app/Userbody.php +++ b/application/NewReedaw/controller/app/Userbody.php @@ -708,7 +708,7 @@ class Userbody extends Base{ // 获取角色报告(深度) public function body_report_depth(){ $data = input('post.'); - // try { + try { if(!array_key_exists('token', $data) || !array_key_exists('aud_id', $data)){ return $this->msg(10001); } @@ -719,20 +719,20 @@ class Userbody extends Base{ return $this->msg(10005,'aud_id type error'); } return $this->body_report_depth_action($data); - // } catch (\Exception $e) { - // // 捕获异常 - // $logContent["flie"] = $e->getFile(); - // $logContent["line"] = $e->getLine(); - // $logContent['all_content'] = "异常信息:\n"; - // $logContent['all_content'] .= "函数: body_report_detailed" . "\n"; - // $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; - // $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; - // $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; - // $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; - // $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; - // $this->record_api_log($data, $logContent, null); - // return $this->msg(99999); - // } + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "函数: body_report_detailed" . "\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } } // 修改目标体重 public function set_target_weight(){ @@ -768,7 +768,127 @@ class Userbody extends Base{ return $this->msg(99999); } } + // 修改初始体重 + public function set_initial_weight(){ + $data = input('post.'); + try { + if(!array_key_exists('aud_id', $data) || !array_key_exists('weight', $data) || !array_key_exists('token', $data)){ + return $this->msg(10001); + } + if(!$this->verify_data_is_ok($data['aud_id'],'intnum')){ + return $this->msg(10005,'aud_id type error'); + } + if(!$this->verify_data_is_ok($data['weight'],'num')){ + return $this->msg(10005,'weight type error'); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005,'token type error'); + } + $data['time'] = date('Y-m-d H:i:s'); + return $this->set_initial_weight_action($data); + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "函数: set_initial_weight" . "\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } + } + // 获取历史列表(分页) + public function history_list_page(){ + try { + $data = input('post.'); + if(!array_key_exists('token', $data) || !array_key_exists('aud_id', $data) || !array_key_exists('page', $data)){ + return $this->msg(10001); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005,'token type error'); + } + if(!$this->verify_data_is_ok($data['aud_id'],'intnum')){ + return $this->msg(10005,'aud_id type error'); + } + if(!$this->verify_data_is_ok($data['page'],'intnum')){ + return $this->msg(10005,'page type error'); + } + return $this->history_list_page_action($data,'page'); + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } + } + // 历史记录(详细) + public function history_detailed(){ + try { + $data = input('post.'); + if(!array_key_exists('token', $data) || !array_key_exists('id', $data)){ + return $this->msg(10001); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005,'token type error'); + } + if(!$this->verify_data_is_ok($data['id'],'intnum')){ + return $this->msg(10005,'id type error'); + } + return $this->history_detailed_action($data); + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } + } + // 历史记录删除 + public function history_del(){ + try { + $data = input('post.'); + if(!array_key_exists('token', $data) || !array_key_exists('id', $data)){ + return $this->msg(10001); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005,'token type error'); + } + if(!$this->verify_data_is_ok($data['id'],'intnum')){ + return $this->msg(10005,'id type error'); + } + return $this->history_del_action($data); + } catch (\Exception $e) { + // 捕获异常 + $logContent["flie"] = $e->getFile(); + $logContent["line"] = $e->getLine(); + $logContent['all_content'] = "异常信息:\n"; + $logContent['all_content'] .= "消息: " . $e->getMessage() . "\n"; + $logContent['all_content'] .= "代码: " . $e->getCode() . "\n"; + $logContent['all_content'] .= "文件: " . $e->getFile() . "\n"; + $logContent['all_content'] .= "行号: " . $e->getLine() . "\n"; + $logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n"; + $this->record_api_log($data, $logContent, null); + return $this->msg(99999); + } + } ################################################################action################################################################ @@ -1839,13 +1959,6 @@ class Userbody extends Base{ return $this->msg($result_return); - - - - - - - } public function set_target_weight_action($data){ $user_data = Db::table($this->body_db_name['juese'])->where(['id'=>$data['aud_id']])->update(['target_weight'=>$data['weight']]); @@ -1855,139 +1968,248 @@ class Userbody extends Base{ return $this->msg(10002); } } - - ################################################################工具################################################################ - ################################################################工具################################################################ - - // 处理身高体重BMI的标准 - public function process_hwb_standard_action($birthday,$key_name,$age,$gender_val){ - $month_num = $this->calculateAgeInMonthsWithPrecision($birthday); - if($age < $this->age_limit){ - $result_data = $this->merged_data[$key_name]['standard_list']; - if($key_name == 'bmi'){ - $bhw_date = Db::table($this->body_db_name['bmi'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - - if($bhw_date){ - $result_data[0]['max_val'] = $bhw_date[0]['f1sd']; - $result_data[0]['max_val'] = $bhw_date[0]['f1sd']; - $result_data[1]['min_val'] = $bhw_date[0]['f1sd']; - $result_data[1]['max_val'] = $bhw_date[0]['z1sd']; - $result_data[2]['min_val'] = $bhw_date[0]['z1sd']; - $result_data[2]['max_val'] = $bhw_date[0]['z2sd']; - $result_data[3]['min_val'] = $bhw_date[0]['z2sd']; - } - }else if($key_name == 'height'){ - $bhw_date = Db::table($this->body_db_name['heigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - if($bhw_date){ - $result_data[0]['max_val'] = $bhw_date[0]['f2sd']; - $result_data[1]['min_val'] = $bhw_date[0]['f2sd']; - $result_data[1]['max_val'] = $bhw_date[0]['f1sd']; - $result_data[2]['min_val'] = $bhw_date[0]['f1sd']; - $result_data[2]['max_val'] = $bhw_date[0]['z1sd']; - $result_data[3]['min_val'] = $bhw_date[0]['z1sd']; - $result_data[3]['max_val'] = $bhw_date[0]['z2sd']; - $result_data[4]['min_val'] = $bhw_date[0]['z2sd']; - $result_data[4]['max_val'] = $bhw_date[0]['z3sd']; - } - }else if($key_name == 'weight'){ - $bhw_date = Db::table($this->body_db_name['weigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - // dump($bhw_date); - if($bhw_date){ - $result_data[0]['max_val'] = $bhw_date[0]['f2sd']; - $result_data[1]['min_val'] = $bhw_date[0]['f2sd']; - $result_data[1]['max_val'] = $bhw_date[0]['f1sd']; - $result_data[2]['min_val'] = $bhw_date[0]['f1sd']; - $result_data[2]['max_val'] = $bhw_date[0]['z1sd']; - $result_data[3]['min_val'] = $bhw_date[0]['z1sd']; - $result_data[3]['max_val'] = $bhw_date[0]['z2sd']; - $result_data[4]['min_val'] = $bhw_date[0]['z2sd']; - $result_data[4]['max_val'] = $bhw_date[0]['z3sd']; - } - } + public function set_initial_weight_action($data){ + $user_data = Db::table($this->body_db_name['juese'])->where(['id'=>$data['aud_id']])->update(['initial_weight'=>$data['weight']]); + if($user_data){ + return $this->msg([]); }else{ + return $this->msg(10002); + } + } + public function history_list_page_action($data,$type){ + $return_result = []; + $result = Db::table($this->body_db_name['body_data_new']) + ->where(['aud_id'=>$data['aud_id'],'is_del'=>0]) + ->field("id,record_time,REPLACE(record_time, '-', '-') AS b_time,height,weight,bmi") + ->order('record_time desc') + ->page($data['page'],$this->pagesize) + ->select(); + $return_result['totalrows'] = Db::table($this->body_db_name['body_data_new'])->where(['aud_id'=>$data['aud_id'],'is_del'=>0])->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'=>floatval($value['height']), + 'v2'=>floatval($value['weight']), + 'v3'=>floatval($value['bmi']), + 'v1_name'=>'身高', + 'v2_name'=>'体重', + 'v3_name'=>'BMI', + 'record_time'=>$value['b_time'], + ]); + } + return $this->msg($return_result); + } + public function history_detailed_action($data){ + // 加 bcadd(,,20) + // 减 bcsub(,,20) + // 乘 bcmul(,,20) + // 除 bcdiv(,,20) + // 设置排除在外的数据类型start + $exclude_data_arr = ['height','weight','age','bmi']; + // 设置排除在外的数据类型end + $result = Db::table($this->body_db_name['body_data_new'])->where(['id'=>$data['id']])->find(); + $for_data_arr = ['height'=>['身高','cm'],'weight'=>['体重','kg'],'age'=>['年龄','岁'],'bmi'=>['BMI',''],'head'=>['头围',''],'fat_w'=>['脂肪量','kg'],'fat_r'=>['脂肪率','%'],'muscleval'=>['肌肉量','kg'],'muscle'=>['肌肉率','%'],'proteinval'=>['蛋白量','kg'],'protein'=>['蛋白率','%'],'water'=>['水分',''],'bone'=>['骨重','kg'],'visceral'=>['内脏指数',''],'sfr'=>['皮下脂肪','%'],'kcal'=>['基础代谢','kcal'],'un_fat_w_weight'=>['去脂体重','kg'],'body_age'=>['体龄',''],'body_level'=>['肥胖等级',''],'body_type'=>['体型','']]; + if($result){ $result_data = []; + foreach ($for_data_arr as $key => $value) { + + $temporary_arr['key_name'] = $key; + $temporary_arr['name'] = $value[0]; + // 身体数据处理,如果没有阻抗,则只显示四项$exclude_data_arr + if($result['record_type'] != 'by_device_adc'){ + if(!in_array($key, $exclude_data_arr)){ + continue; + }else{ + $temporary_arr['value'] = $result[$key]; + } + }else{ + if($key == 'un_fat_w_weight'){ + $temporary_arr['value'] = bcsub($result['weight'],$result['fat_w'],2); + }else{ + if(array_key_exists($key,$result)){ + $temporary_arr['value'] = $result[$key]; + } + + } + } + $temporary_arr['unit'] = $value[1]; + array_push($result_data,$temporary_arr); + } + // + // 添加头围详细start + if($result['head_circumference']){ + array_unshift($result_data,[ + 'key_name'=>'head_circumference', + 'name'=>'头围', + 'value'=>json_decode($result['head_circumference'],true)['value'] == 0?"0":json_decode($result['head_circumference'],true)['value'], + 'unit'=>'cm', + ]); + } + // 添加头围详细end + // 添加心率详细start + if($result['heart_rate']){ + array_unshift($result_data,[ + 'key_name'=>'heart_rate', + 'name'=>'心率', + 'value'=>$result['heart_rate'], + 'unit'=>'跳/分钟', + ]); + } + // 添加心率详细end + return $this->msg($result_data); + }else{ + return $this->msg(10004); } - return $result_data; + + } + public function history_del_action($data){ + + $result = Db::table($this->body_db_name['body_data_new'])->where(['id'=>$data['id']])->update(['is_del'=>1]); + if($result){ + // 添加心率详细end + return $this->msg([]); + }else{ + return $this->msg(10002); + } + } - // 处理其他的标注列表 - public function process_other_standard_action($data,$key_name){ - if($key_name == 'body_age'){ - $result_data = [ - ['min_val'=>'0','max_val'=>$data['age'],'text'=>'年轻','color'=>'#14CBAD'], //淡黄 - ['min_val'=>$data['age'],'max_val'=>bcadd(bcsub($data['age'],0,2),$data['age'],2),'text'=>'偏大','color'=>'#F53F31'], //绿 - ]; - }else if($key_name == 'score'){ - $result_data = $this->merged_data['score']['standard_list']; - }else{ - $gender_val = $data['gender'] == 2?'woman':'man'; - if($key_name == 'fat_r'){ - if($data['age'] < 30){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['29']; - }else{ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['30']; - } - }else if($key_name == 'fat_w'){ - if($data['age'] < 30){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['29']; - }else{ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['30']; - } - $result_data = $this->calculate_new_standard($result_data,$data['weight_val'],$key_name,$data['age'],$gender_val); - }else if($key_name == 'muscle' || $key_name == 'protein' || $key_name == 'water' || $key_name == 'sfr' || $key_name == 'visceral'){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]; - }else if($key_name == 'muscleval' || $key_name == 'proteinval'){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]; - $result_data = $this->calculate_new_standard($result_data,$data['weight_val'],$key_name,$data['age'],$gender_val); - }else if($key_name == 'bone'){ - if($gender_val == 'man'){ - if($data['weight_val'] < 60){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60']; - }else if($data['weight_val'] >= 60 && $data['weight_val'] < 75){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60_75']; - }else{ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['75']; - } - }else{ - if($data['weight_val'] < 45){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['45']; - }else if($data['weight_val'] >= 45 && $data['weight_val'] < 60){ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['45_60']; - }else{ - $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60']; - } - } - } - } - return $result_data; - } + ################################################################工具################################################################ + ################################################################工具################################################################ + + // // 处理身高体重BMI的标准 + // public function process_hwb_standard_action($birthday,$key_name,$age,$gender_val){ + // $month_num = $this->calculateAgeInMonthsWithPrecision($birthday); + // if($age < $this->age_limit){ + // $result_data = $this->merged_data[$key_name]['standard_list']; + // if($key_name == 'bmi'){ + // $bhw_date = Db::table($this->body_db_name['bmi'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + + // if($bhw_date){ + // $result_data[0]['max_val'] = $bhw_date[0]['f1sd']; + // $result_data[0]['max_val'] = $bhw_date[0]['f1sd']; + // $result_data[1]['min_val'] = $bhw_date[0]['f1sd']; + // $result_data[1]['max_val'] = $bhw_date[0]['z1sd']; + // $result_data[2]['min_val'] = $bhw_date[0]['z1sd']; + // $result_data[2]['max_val'] = $bhw_date[0]['z2sd']; + // $result_data[3]['min_val'] = $bhw_date[0]['z2sd']; + // } + // }else if($key_name == 'height'){ + // $bhw_date = Db::table($this->body_db_name['heigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + // if($bhw_date){ + // $result_data[0]['max_val'] = $bhw_date[0]['f2sd']; + // $result_data[1]['min_val'] = $bhw_date[0]['f2sd']; + // $result_data[1]['max_val'] = $bhw_date[0]['f1sd']; + // $result_data[2]['min_val'] = $bhw_date[0]['f1sd']; + // $result_data[2]['max_val'] = $bhw_date[0]['z1sd']; + // $result_data[3]['min_val'] = $bhw_date[0]['z1sd']; + // $result_data[3]['max_val'] = $bhw_date[0]['z2sd']; + // $result_data[4]['min_val'] = $bhw_date[0]['z2sd']; + // $result_data[4]['max_val'] = $bhw_date[0]['z3sd']; + // } + // }else if($key_name == 'weight'){ + // $bhw_date = Db::table($this->body_db_name['weigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + // // dump($bhw_date); + // if($bhw_date){ + // $result_data[0]['max_val'] = $bhw_date[0]['f2sd']; + // $result_data[1]['min_val'] = $bhw_date[0]['f2sd']; + // $result_data[1]['max_val'] = $bhw_date[0]['f1sd']; + // $result_data[2]['min_val'] = $bhw_date[0]['f1sd']; + // $result_data[2]['max_val'] = $bhw_date[0]['z1sd']; + // $result_data[3]['min_val'] = $bhw_date[0]['z1sd']; + // $result_data[3]['max_val'] = $bhw_date[0]['z2sd']; + // $result_data[4]['min_val'] = $bhw_date[0]['z2sd']; + // $result_data[4]['max_val'] = $bhw_date[0]['z3sd']; + // } + // } + // }else{ + // $result_data = []; + // } + // return $result_data; + // } + + // // 处理其他的标注列表 + // public function process_other_standard_action($data,$key_name){ + // if($key_name == 'body_age'){ + // $result_data = [ + // ['min_val'=>'0','max_val'=>$data['age'],'text'=>'年轻','color'=>'#14CBAD'], //淡黄 + // ['min_val'=>$data['age'],'max_val'=>bcadd(bcsub($data['age'],0,2),$data['age'],2),'text'=>'偏大','color'=>'#F53F31'], //绿 + // ]; + // }else if($key_name == 'score'){ + // $result_data = $this->merged_data['score']['standard_list']; + // }else{ + // $gender_val = $data['gender'] == 2?'woman':'man'; + // if($key_name == 'fat_r'){ + // if($data['age'] < 30){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['29']; + // }else{ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['30']; + // } + // }else if($key_name == 'fat_w'){ + // if($data['age'] < 30){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['29']; + // }else{ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['30']; + // } + // $result_data = $this->calculate_new_standard($result_data,$data['weight_val'],$key_name,$data['age'],$gender_val); + // }else if($key_name == 'muscle' || $key_name == 'protein' || $key_name == 'water' || $key_name == 'sfr' || $key_name == 'visceral'){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]; + // }else if($key_name == 'muscleval' || $key_name == 'proteinval'){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]; + // $result_data = $this->calculate_new_standard($result_data,$data['weight_val'],$key_name,$data['age'],$gender_val); + // }else if($key_name == 'bone'){ + // if($gender_val == 'man'){ + // if($data['weight_val'] < 60){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60']; + // }else if($data['weight_val'] >= 60 && $data['weight_val'] < 75){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60_75']; + // }else{ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['75']; + // } + // }else{ + // if($data['weight_val'] < 45){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['45']; + // }else if($data['weight_val'] >= 45 && $data['weight_val'] < 60){ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['45_60']; + // }else{ + // $result_data = $this->merged_data[$key_name]['standard_list'][$gender_val]['60']; + // } + // } + // } + // } + // return $result_data; + // } - // 处理特殊落点下的标准值 - public function process_special_offset_action($val, $list) { - $return_data['standard'] = ''; - $return_data['standard_color'] = '#000000'; - if($val<$list[0]['min_val']){ - $return_data['standard'] = $list[0]['text']; - $return_data['standard_color'] = $list[0]['color']; - return $return_data; - } + // // 处理特殊落点下的标准值 + // public function process_special_offset_action($val, $list) { + // $return_data['standard'] = ''; + // $return_data['standard_color'] = '#000000'; + // if($val<$list[0]['min_val']){ + // $return_data['standard'] = $list[0]['text']; + // $return_data['standard_color'] = $list[0]['color']; + // return $return_data; + // } - if($val>$list[count($list)-1]['max_val']){ - $return_data['standard'] = $list[count($list)-1]['text']; - $return_data['standard_color'] = $list[count($list)-1]['color']; - return $return_data; - } - foreach ($list as $key => $value) { - if($val >= $value['min_val'] && $val <= $value['max_val']){ - $return_data['standard'] = $value['text']; - $return_data['standard_color'] = $value['color']; - break; - } - } - return $return_data; - } + // if($val>$list[count($list)-1]['max_val']){ + // $return_data['standard'] = $list[count($list)-1]['text']; + // $return_data['standard_color'] = $list[count($list)-1]['color']; + // return $return_data; + // } + // foreach ($list as $key => $value) { + // if($val >= $value['min_val'] && $val <= $value['max_val']){ + // $return_data['standard'] = $value['text']; + // $return_data['standard_color'] = $value['color']; + // break; + // } + // } + // return $return_data; + // } // 计算新标准 public function calculate_new_standard($data,$w,$k,$age=0,$gender='man'){ @@ -2048,103 +2270,103 @@ class Userbody extends Base{ } // - public function hwb_standard($data){ - $linshi_data = []; - $month_num = $this->calculateAgeInMonthsWithPrecision($data['birthday']); - $gender_val = $data['gender']; - if($data['age'] < $this->age_limit){ - foreach ($data as $key => $value) { - if($key =='身高'){ - $linshi_data['身高'] = $this->merged_data['height']['standard_list']; - $bhw_date = Db::table($this->body_db_name['heigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + // public function hwb_standard($data){ + // $linshi_data = []; + // $month_num = $this->calculateAgeInMonthsWithPrecision($data['birthday']); + // $gender_val = $data['gender']; + // if($data['age'] < $this->age_limit){ + // foreach ($data as $key => $value) { + // if($key =='身高'){ + // $linshi_data['身高'] = $this->merged_data['height']['standard_list']; + // $bhw_date = Db::table($this->body_db_name['heigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - if($bhw_date){ - $linshi_data['身高'][0]['max_val'] = $bhw_date[0]['f2sd']; - $linshi_data['身高'][1]['min_val'] = $bhw_date[0]['f2sd']; - $linshi_data['身高'][1]['max_val'] = $bhw_date[0]['f1sd']; - $linshi_data['身高'][2]['min_val'] = $bhw_date[0]['f1sd']; - $linshi_data['身高'][2]['max_val'] = $bhw_date[0]['z1sd']; - $linshi_data['身高'][3]['min_val'] = $bhw_date[0]['z1sd']; - $linshi_data['身高'][3]['max_val'] = $bhw_date[0]['z2sd']; - $linshi_data['身高'][4]['min_val'] = $bhw_date[0]['z2sd']; - $linshi_data['身高'][4]['max_val'] = $bhw_date[0]['z3sd']; - } + // if($bhw_date){ + // $linshi_data['身高'][0]['max_val'] = $bhw_date[0]['f2sd']; + // $linshi_data['身高'][1]['min_val'] = $bhw_date[0]['f2sd']; + // $linshi_data['身高'][1]['max_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['身高'][2]['min_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['身高'][2]['max_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['身高'][3]['min_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['身高'][3]['max_val'] = $bhw_date[0]['z2sd']; + // $linshi_data['身高'][4]['min_val'] = $bhw_date[0]['z2sd']; + // $linshi_data['身高'][4]['max_val'] = $bhw_date[0]['z3sd']; + // } - }else if($key =='体重'){ - $linshi_data['体重'] = $this->merged_data['weight']['standard_list']; - $bhw_date = Db::table($this->body_db_name['weigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - if($bhw_date){ - $linshi_data['体重'][0]['max_val'] = $bhw_date[0]['f2sd']; - $linshi_data['体重'][1]['min_val'] = $bhw_date[0]['f2sd']; - $linshi_data['体重'][1]['max_val'] = $bhw_date[0]['f1sd']; - $linshi_data['体重'][2]['min_val'] = $bhw_date[0]['f1sd']; - $linshi_data['体重'][2]['max_val'] = $bhw_date[0]['z1sd']; - $linshi_data['体重'][3]['min_val'] = $bhw_date[0]['z1sd']; - $linshi_data['体重'][3]['max_val'] = $bhw_date[0]['z2sd']; - $linshi_data['体重'][4]['min_val'] = $bhw_date[0]['z2sd']; - $linshi_data['体重'][4]['max_val'] = $bhw_date[0]['z3sd']; - } - }else if($key =='BMI'){ - $linshi_data['BMI'] = $this->merged_data['bmi']['standard_list']; - $bhw_date = Db::table($this->body_db_name['bmi'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); - if($bhw_date){ - $linshi_data['BMI'][0]['max_val'] = $bhw_date[0]['f1sd']; - $linshi_data['BMI'][1]['min_val'] = $bhw_date[0]['f1sd']; - $linshi_data['BMI'][1]['max_val'] = $bhw_date[0]['z1sd']; - $linshi_data['BMI'][2]['min_val'] = $bhw_date[0]['z1sd']; - $linshi_data['BMI'][2]['max_val'] = $bhw_date[0]['z2sd']; - $linshi_data['BMI'][3]['min_val'] = $bhw_date[0]['z2sd']; - } - } - } - foreach ($linshi_data as $key => $value) { - foreach ($value as $k => $v) { - if($data[$key] >= $v['min_val'] && $data[$key] < $v['max_val']){ - // 如果落在区间内 - $data[$key.'2'] = $data[$key].','.$v['text'].','.$v['color']; - break; - } - } - // 如果$key.'2'没有被设置 - if(!array_key_exists($key.'2', $data)){ - if($data[$key] < $value[0]['min_val']){ - // 如果小于最小值 - $data[$key.'2'] = $data[$key].','.$value[0]['text'].','.$value[0]['color']; - }else if($data[$key] >= $value[count($value)-1]['max_val']){ - // 如果大于最大值 - $data[$key.'2'] = $data[$key].','.$value[count($value)-1]['text'].','.$value[count($value)-1]['color']; - } - } - } - // die; - }else{ - $data['身高2'] = $data['身高'].',无,无'; - $data['体重2'] = $data['体重'].',无,无'; - $data['BMI2'] = $data['BMI'].',无,无'; - } - return $data; - } + // }else if($key =='体重'){ + // $linshi_data['体重'] = $this->merged_data['weight']['standard_list']; + // $bhw_date = Db::table($this->body_db_name['weigh'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + // if($bhw_date){ + // $linshi_data['体重'][0]['max_val'] = $bhw_date[0]['f2sd']; + // $linshi_data['体重'][1]['min_val'] = $bhw_date[0]['f2sd']; + // $linshi_data['体重'][1]['max_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['体重'][2]['min_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['体重'][2]['max_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['体重'][3]['min_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['体重'][3]['max_val'] = $bhw_date[0]['z2sd']; + // $linshi_data['体重'][4]['min_val'] = $bhw_date[0]['z2sd']; + // $linshi_data['体重'][4]['max_val'] = $bhw_date[0]['z3sd']; + // } + // }else if($key =='BMI'){ + // $linshi_data['BMI'] = $this->merged_data['bmi']['standard_list']; + // $bhw_date = Db::table($this->body_db_name['bmi'])->where("Month <= $month_num and Sex = '$gender_val'")->order('Month desc')->limit(1)->select(); + // if($bhw_date){ + // $linshi_data['BMI'][0]['max_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['BMI'][1]['min_val'] = $bhw_date[0]['f1sd']; + // $linshi_data['BMI'][1]['max_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['BMI'][2]['min_val'] = $bhw_date[0]['z1sd']; + // $linshi_data['BMI'][2]['max_val'] = $bhw_date[0]['z2sd']; + // $linshi_data['BMI'][3]['min_val'] = $bhw_date[0]['z2sd']; + // } + // } + // } + // foreach ($linshi_data as $key => $value) { + // foreach ($value as $k => $v) { + // if($data[$key] >= $v['min_val'] && $data[$key] < $v['max_val']){ + // // 如果落在区间内 + // $data[$key.'2'] = $data[$key].','.$v['text'].','.$v['color']; + // break; + // } + // } + // // 如果$key.'2'没有被设置 + // if(!array_key_exists($key.'2', $data)){ + // if($data[$key] < $value[0]['min_val']){ + // // 如果小于最小值 + // $data[$key.'2'] = $data[$key].','.$value[0]['text'].','.$value[0]['color']; + // }else if($data[$key] >= $value[count($value)-1]['max_val']){ + // // 如果大于最大值 + // $data[$key.'2'] = $data[$key].','.$value[count($value)-1]['text'].','.$value[count($value)-1]['color']; + // } + // } + // } + // // die; + // }else{ + // $data['身高2'] = $data['身高'].',无,无'; + // $data['体重2'] = $data['体重'].',无,无'; + // $data['BMI2'] = $data['BMI'].',无,无'; + // } + // return $data; + // } - // 处理异常 - public function handling_exceptions($data){ - for ($i=0; $i < count($data['list']); $i++) { - if($data['value']>=$data['list'][$i]['min_val'] && $data['value']<$data['list'][$i]['max_val']){ - $data['standard'] = $data['list'][$i]['text']; - $data['color'] = $data['list'][$i]['color']; - break; - } - } - if($data['standard'] == '异常'){ - if($data['value'] <= $data['list'][0]['min_val']){ - $data['standard'] = $data['list'][0]['text']; - $data['color'] = $data['list'][0]['color']; - }else if($data['value'] >= $data['list'][count($data['list'])-1]['max_val']){ - $data['standard'] = $data['list'][count($data['list'])-1]['text']; - $data['color'] = $data['list'][count($data['list'])-1]['color']; - } - } - return $data; - } + // // 处理异常 + // public function handling_exceptions($data){ + // for ($i=0; $i < count($data['list']); $i++) { + // if($data['value']>=$data['list'][$i]['min_val'] && $data['value']<$data['list'][$i]['max_val']){ + // $data['standard'] = $data['list'][$i]['text']; + // $data['color'] = $data['list'][$i]['color']; + // break; + // } + // } + // if($data['standard'] == '异常'){ + // if($data['value'] <= $data['list'][0]['min_val']){ + // $data['standard'] = $data['list'][0]['text']; + // $data['color'] = $data['list'][0]['color']; + // }else if($data['value'] >= $data['list'][count($data['list'])-1]['max_val']){ + // $data['standard'] = $data['list'][count($data['list'])-1]['text']; + // $data['color'] = $data['list'][count($data['list'])-1]['color']; + // } + // } + // return $data; + // } diff --git a/application/route.php b/application/route.php index d797103..99a8719 100644 --- a/application/route.php +++ b/application/route.php @@ -887,7 +887,14 @@ Route::any('/reedaw/manual_record', 'app/NewReedaw/app.Userbody/manual_record'); Route::any('/reedaw/device_record', 'app/NewReedaw/app.Userbody/device_record'); // 修改目标体重 Route::any('/reedaw/set_target_weight', 'app/NewReedaw/app.Userbody/set_target_weight'); - +// 修改初始体重 +Route::any('/reedaw/set_initial_weight', 'app/NewReedaw/app.Userbody/set_initial_weight'); +// 历史数据(分页) +Route::any('/reedaw/history_list_page', 'app/NewReedaw/app.Userbody/history_list_page'); +// 历史详情 +Route::any('/reedaw/history_detailed', 'app/NewReedaw/app.Userbody/history_detailed'); +// 删除历史数据 +Route::any('/reedaw/history_del', 'app/NewReedaw/app.Userbody/history_del'); ################################################################首页(饮食数据) @@ -931,16 +938,6 @@ Route::any('/reedaw/current_food_statistics', 'app/NewReedaw/app.Kitchenscale/cu - - - - - - - - - - // 使用国内轻厨记的 ################################################################首页(健康工具) // 卡片列表 @@ -979,6 +976,8 @@ Route::any('/reedaw/skip/del_record', 'app/NewReedaw/app.skip/del_record'); Route::any('/reedaw/add_member', 'app/NewReedaw/app.role/add_member'); // 更新角色 Route::any('/reedaw/update_member', 'app/NewReedaw/app.role/update_member'); +// 删除角色 +Route::any('/reedaw/del_member', 'app/NewReedaw/app.role/del_member'); // 获取指定角色详细信息(含厨房秤的当日信息) Route::any('/reedaw/get_user_data_information', 'app/NewReedaw/app.role/get_user_data_information'); // 修改账号昵称