From 88a87903a57339808bcadda4ff1dab493945faab Mon Sep 17 00:00:00 2001 From: tsf Date: Wed, 15 Apr 2026 18:35:17 +0800 Subject: [PATCH] 260415-1835 --- application/DeviceEnter/controller/Wechat.php | 10 +- .../NewReedaw2/controller/app/Card.php | 306 +++++++++++------- .../NewReedaw2/controller/app/Index.php | 5 +- .../controller/app/Kitchenscale.php | 51 +-- 4 files changed, 234 insertions(+), 138 deletions(-) diff --git a/application/DeviceEnter/controller/Wechat.php b/application/DeviceEnter/controller/Wechat.php index a866115..f891954 100644 --- a/application/DeviceEnter/controller/Wechat.php +++ b/application/DeviceEnter/controller/Wechat.php @@ -44,19 +44,23 @@ class Wechat extends Base{ $device_enter = Db::connect('device_enter_db'); - $user_find = $device_enter->table('device_user')->where(['openid'=>$data['openid']])->find(); + $user_find = $device_enter->table('device_user')->where(['openid'=>$data['openid']])->field('id,token,nickname,permission,notes')->find(); if($user_find){ - return $this->msg(['token' => $user_find['token']]); + + $nickname = $user_find['notes']?$user_find['nickname'].'('.$user_find['notes'].')':$user_find['nickname']; + return $this->msg(['token' => $user_find['token'],'nickname'=>$nickname,'permission'=>$user_find['permission']]); }else{ $token = md5($data['openid']); + $nickname = $this->generateRandomString(3).time(); $user_result = $device_enter->table('device_user') ->insert([ 'openid'=>$data['openid'], 'token'=>$token, + 'nickname'=>$nickname, 'create_time'=>date('Y-m-d H:i:s') ]); if($user_result){ - return $this->msg(['token' => $token]); + return $this->msg(['token' => $token,'nickname'=>$nickname,'permission'=>0]); } } } catch (\Exception $e) { diff --git a/application/NewReedaw2/controller/app/Card.php b/application/NewReedaw2/controller/app/Card.php index 2f24524..6005a1f 100644 --- a/application/NewReedaw2/controller/app/Card.php +++ b/application/NewReedaw2/controller/app/Card.php @@ -51,15 +51,15 @@ class Card extends Base{ $data = input('post.'); try { // 你的业务逻辑 - if(!array_key_exists('token', $data) || !array_key_exists('aud_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['aud_id'],'intnum')){ - return $this->msg(10005,'aud_id type error'); - } + // if(!array_key_exists('token', $data) || !array_key_exists('aud_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['aud_id'],'intnum')){ + // return $this->msg(10005,'aud_id type error'); + // } // dump($data); return $this->card_list_all_action($data); @@ -523,6 +523,8 @@ class Card extends Base{ return $this->data_compare_skip_action($data); }else if($data['type'] == 'vitalcapacity'){//肺活 return $this->data_compare_vitalcapacity_action($data); + }else if(in_array($data['type'],['walk_slow','walk_fast','running_slow','running_fast','cycling','climb_stairs','plank'])){//一般项目 + return $this->data_compare_exercise_type1_action($data,'group'); }else{ return $this->msg(10005,'type data error'); } @@ -567,6 +569,8 @@ class Card extends Base{ return $this->record_list_group_skip_action($data,'page'); }else if($data['type'] == 'vitalcapacity'){//肺活 return $this->record_list_group_vitalcapacity_action($data,'page'); + }else if(in_array($data['type'],['walk_slow','walk_fast','running_slow','running_fast','cycling','climb_stairs','plank'])){//一般项目 + return $this->record_list_group_exercise_type1_action($data,'page'); }else{ return $this->msg(10005,'type data error'); } @@ -652,6 +656,13 @@ class Card extends Base{ }else{ return $this->msg(10002); } + }else if(in_array($data['type'],['walk_slow','walk_fast','running_slow','running_fast','cycling','climb_stairs','plank'])){//一般项目 + $user_data = Db::table($this->card_db_name['card_log'])->where(['id'=>$data['id']])->update(['is_del'=>1]); + if($user_data){ + return $this->msg([]); + }else{ + return $this->msg(10002); + } }else{ return $this->msg(10005,'type data error'); } @@ -757,102 +768,102 @@ class Card extends Base{ return $this->msg(99999); } } - public function exercise_type1_list(){ - $data = input('post.'); - try { - if(!array_key_exists('token', $data)){ - return $this->msg(10001); - } - if(!array_key_exists('aud_id', $data)){ - return $this->msg(10001); - } - if(!array_key_exists('page_num', $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_num'],'intnum')){ - return $this->msg(10005,'page_num type error'); - } + // public function exercise_type1_list(){ + // $data = input('post.'); + // try { + // if(!array_key_exists('token', $data)){ + // return $this->msg(10001); + // } + // if(!array_key_exists('aud_id', $data)){ + // return $this->msg(10001); + // } + // if(!array_key_exists('page_num', $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_num'],'intnum')){ + // return $this->msg(10005,'page_num type error'); + // } - // $page_num = $data['page_num']; + // // $page_num = $data['page_num']; - // dump($page_num); - // dump($card); - // die; - $return_result['totalrows'] = Db::table($this->card_db_name['card_log'])->where(['aud_id'=>$data['aud_id'],'is_del'=>0])->count(); - $return_result['rows'] = []; - $return_result['pageno'] = $data['page_num']; - $return_result['pagesize'] = $this->pagesize; - $return_result['totalpage'] = ceil($return_result['totalrows']/$this->pagesize); + // // dump($page_num); + // // dump($card); + // // die; + // $return_result['totalrows'] = Db::table($this->card_db_name['card_log'])->where(['aud_id'=>$data['aud_id'],'is_del'=>0])->count(); + // $return_result['rows'] = []; + // $return_result['pageno'] = $data['page_num']; + // $return_result['pagesize'] = $this->pagesize; + // $return_result['totalpage'] = ceil($return_result['totalrows']/$this->pagesize); - $card = Db::table($this->card_db_name['card_log'])->where(['aud_id'=>$data['aud_id'],'is_del'=>0])->page($data['page_num'],$this->pagesize)->order('id desc')->select(); - if(count($card)>=1){ - foreach ($card as $key => $value) { - $return_result['rows'][] = [ - 'id'=>$value['id'], - 'acd_id'=>$value['acd_id'], - 'name'=>$value['acd_name'], - 'achievement'=>$value['achievement'], - 'unit'=>$value['unit'], - 'record_time'=>$value['record_time'], - 'kcal_val'=>$value['kcal_val'] - ]; - } - return $this->msg($return_result); - }else{ - return $this->msg($return_result); - } - } 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 exercise_type1_del(){ - $data = input('post.'); - try { - if(!array_key_exists('id', $data)){ - return $this->msg(10001); - } - if(!$this->verify_data_is_ok($data['id'],'intnum')){ - return $this->msg(10005,'aud_id type error'); - } + // $card = Db::table($this->card_db_name['card_log'])->where(['aud_id'=>$data['aud_id'],'is_del'=>0])->page($data['page_num'],$this->pagesize)->order('id desc')->select(); + // if(count($card)>=1){ + // foreach ($card as $key => $value) { + // $return_result['rows'][] = [ + // 'id'=>$value['id'], + // 'acd_id'=>$value['acd_id'], + // 'name'=>$value['acd_name'], + // 'achievement'=>$value['achievement'], + // 'unit'=>$value['unit'], + // 'record_time'=>$value['record_time'], + // 'kcal_val'=>$value['kcal_val'] + // ]; + // } + // return $this->msg($return_result); + // }else{ + // return $this->msg($return_result); + // } + // } 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 exercise_type1_del(){ + // $data = input('post.'); + // try { + // if(!array_key_exists('id', $data)){ + // return $this->msg(10001); + // } + // if(!$this->verify_data_is_ok($data['id'],'intnum')){ + // return $this->msg(10005,'aud_id type error'); + // } - $return_result= Db::table($this->card_db_name['card_log'])->where(['id'=>$data['id']])->update(['is_del'=>1]); + // $return_result= Db::table($this->card_db_name['card_log'])->where(['id'=>$data['id']])->update(['is_del'=>1]); - if($return_result){ + // if($return_result){ - return $this->msg([]); - }else{ - return $this->msg(10002); - } - } 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); - } - } + // return $this->msg([]); + // }else{ + // return $this->msg(10002); + // } + // } 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); + // } + // } @@ -867,10 +878,10 @@ class Card extends Base{ public function card_list_all_action($data){ // 检查角色 - $user_data = Db::table($this->card_db_name['juese'])->where(['id'=>$data['aud_id'],'is_del'=>0])->field('id,card_order')->find(); - if(!$user_data){ - return $this->msg(10003,'未核实到角色信息'); - } + // $user_data = Db::table($this->card_db_name['juese'])->where(['id'=>$data['aud_id'],'is_del'=>0])->field('id,card_order')->find(); + // if(!$user_data){ + // return $this->msg(10003,'未核实到角色信息'); + // } // 获取卡片信息 $card_data = Db::table($this->card_db_name['card'])->where(['is_del'=>0])->field('id,name,content,page_url_report,is_sub_item,background_color,background_pic,key_word')->select(); // $card_data = Db::table($this->card_db_name['card'])->where(['is_del'=>0])->field('id,name,content,page_url_report,is_sub_item,background_color,background_pic,key_word')->cache(10)->select(); @@ -893,12 +904,12 @@ class Card extends Base{ 'chosen_yes'=>[], 'chosen_no'=>[], ]; - if($user_data['card_order'] != ''){ - // 如果有设置过 - $user_data['card_order'] = explode(',',$user_data['card_order']); - }else{ - $user_data['card_order'] = []; - } + // if($user_data['card_order'] != ''){ + // // 如果有设置过 + // $user_data['card_order'] = explode(',',$user_data['card_order']); + // }else{ + // $user_data['card_order'] = []; + // } // dump($user_data['card_order']); // die; // 对照处理用户的卡片信息(新版全选) @@ -1987,7 +1998,82 @@ class Card extends Base{ } return $this->msg($return_data); - } + } + // 通用型接口(一般运动)数据对比 + public function data_compare_exercise_type1_action($data){ + $data2 = [$data['before_id'],$data['after_id']]; + $data3 = implode(',',$data2); + $calculate_arr = []; + $result = Db::query(" + select + acsd.id, + acsd.achievement as achievement_val, + acsd.kcal_val, + acsd.record_time, + REPLACE(CONVERT(varchar(10), acsd.record_time, 23), '-', '-') AS b_time, + aud.nickname, + aud.gender, + aud.birthday, + aud.head_pic + from ".$this->card_db_name['card_log']." as acsd + left join ".$this->card_db_name['juese']." as aud on acsd.aud_id=aud.id + where acsd.id in ($data3) + and acsd.is_del = 0 + "); + + if(!$result || count($result)<2){ + return $this->msg(10004); + } + // 调整顺序 + foreach ($result as $key => $value) { + if($value['id'] == $data2[0]){ + $calculate_arr['before'] = $value; + }else{ + $calculate_arr['after'] = $value; + } + } + $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'] = []; + + $request_result = ['achievement_val'=>['用时','min'],'kcal_val'=>['消耗卡路里','kcal']]; + + foreach ($calculate_arr['before'] as $key => $value) { + if(in_array($key, ['achievement_val','kcal_val'])){ + $before_arr = $value; + $after_arr = $calculate_arr['after'][$key]; + $temporary_arr = [ + 'firstresult'=>[ + 'color'=>'', + 'level'=>'', + 'value'=>$before_arr, + 'title'=>$request_result[$key][0], + 'unit'=>$request_result[$key][1], + 'name'=>$key, + ], + 'secondresult'=>[ + 'color'=>'', + 'level'=>'', + 'value'=>$after_arr, + 'title'=>$request_result[$key][0], + 'unit'=>$request_result[$key][1], + 'name'=>$key, + ], + 'diffval'=>bcsub($after_arr,$before_arr,2) + ]; + array_push($return_data['list'], $temporary_arr); + + } + + } + return $this->msg($return_data); + } + // 历史详情(肺活) public function detailed_record_vitalcapacity_action($data){ diff --git a/application/NewReedaw2/controller/app/Index.php b/application/NewReedaw2/controller/app/Index.php index 40ce085..4826540 100644 --- a/application/NewReedaw2/controller/app/Index.php +++ b/application/NewReedaw2/controller/app/Index.php @@ -217,7 +217,7 @@ class Index extends Base{ 'area_list'=>[], 'identity_list'=>[], 'grade_list'=>[], - 'banner'=>[], + 'banner'=>[],//健康的banner 'activity_level'=>[ ['name'=>'久坐(很少或没有运动)','val'=>'1.2'], ['name'=>'轻度活动(每周1-3天轻度运动)','val'=>'1.375'], @@ -380,6 +380,9 @@ class Index extends Base{ ], ], 'language_arr'=>$this->process_Language(), + 'bannerFoot'=>[],//厨房秤banner + 'app_icon'=>'https://tc.pcxbc.com/new_reedaw/reedaw_icon.png', + 'app_name'=>'Reedaw', ]; // $food_count = ; diff --git a/application/NewReedaw2/controller/app/Kitchenscale.php b/application/NewReedaw2/controller/app/Kitchenscale.php index 9511527..b29d72e 100644 --- a/application/NewReedaw2/controller/app/Kitchenscale.php +++ b/application/NewReedaw2/controller/app/Kitchenscale.php @@ -8,17 +8,17 @@ use app\NewReedaw2\controller\app\Guessyoulike; class Kitchenscale extends Base{ protected $kitchenscale_db_name = [ - 'zhanghao'=>'app_account_number', - 'juese'=>'app_user_data', - 'eat_log'=>'app_user_kcal_log',// + 'zhanghao'=>'app_account_number_multilingual', + 'juese'=>'app_user_data_multilingual', + 'eat_log'=>'app_user_kcal_log_multilingual',// 'tiaoma'=>'app_commodity_barcode',// - 'search_history'=>'app_user_search_history',//搜索历史表 - 'cookbook_label'=>'app_user_cookbook_label',//菜谱标签表 + 'search_history'=>'app_user_search_history_multilingual',//搜索历史表 + // 'cookbook_label'=>'app_user_cookbook_label',//菜谱标签表 'foodlist3'=>'app_z_national_standard_food_type_3',//食材 'foodlist4'=>'app_z_national_standard_food_type_4',//食材营养物质 - 'collect_list'=>'app_user_collect_list',//点赞表 - 'cookbook'=>'app_user_cookbook',//菜谱表 - 'uploadimg'=>'app_user_upload_img',//图片素材表 + // 'collect_list'=>'app_user_collect_list',//点赞表 + // 'cookbook'=>'app_user_cookbook',//菜谱表 + // 'uploadimg'=>'app_user_upload_img',//图片素材表 'nutrition'=>'app_user_cookbook_nutrition',//能量 'vitamin'=>'app_user_cookbook_vitamin',//维生素 'mineral'=>'app_user_cookbook_mineral',//矿物质 @@ -73,7 +73,7 @@ class Kitchenscale extends Base{ // 修改用户信息 public function update_user_msg(){ $data = input('post.'); - // try { + try { if(!array_key_exists('token', $data)){ return $this->msg(10001,'token is miss'); } @@ -96,7 +96,7 @@ class Kitchenscale extends Base{ return $this->msg(10001,'weight is miss'); } if(!array_key_exists('activity_level', $data)){ - return $this->msg(10001,'weight is miss'); + return $this->msg(10001,'activity_level is miss'); } if(!$this->verify_data_is_ok($data['token'],'str')){ return $this->msg(10005,'token type is error'); @@ -124,20 +124,20 @@ class Kitchenscale extends Base{ } return $this->update_user_msg_action($data); // return $return_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'] .= "接口: update_user_msg\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'] .= "接口: update_user_msg\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); + } } ################################################################搜索&菜谱 @@ -350,6 +350,8 @@ class Kitchenscale extends Base{ ################################################################记食器 // 获取记食器板块内容 public function get_countfoot_content(){ + dump(time()); + die; $data = input('post.'); // 尝试捕获异常 try { @@ -871,6 +873,7 @@ class Kitchenscale extends Base{ 'protein'=>['name'=>'蛋白质','icon'=>'https://tc.pcxbc.com/kitchenscale_all/icon_protein.png','color'=>'#FFB169','val'=>0,'unit'=>'g','proportion'=>'0.00','rank_list'=>[['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank1.png','name'=>'','pic_url'=>'','weight'=>''],['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank2.png','name'=>'','pic_url'=>'','weight'=>''],['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank3.png','name'=>'','pic_url'=>'','weight'=>'']]], 'fat'=>['name'=>'脂肪','icon'=>'https://tc.pcxbc.com/kitchenscale_all/icon_fat.png','color'=>'#3CB383','val'=>0,'unit'=>'g','proportion'=>'0.00','rank_list'=>[['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank1.png','name'=>'','pic_url'=>'','weight'=>''],['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank2.png','name'=>'','pic_url'=>'','weight'=>''],['icon'=>'https://tc.pcxbc.com/kitchenscale_all/rank3.png','name'=>'','pic_url'=>'','weight'=>'']]], ], + 'exercise_consume'=>0, 'trace_elements_all_day' => [ [ 'name' => 'VitaminA',