diff --git a/application/route.php b/application/route.php index e359842..ca7327a 100644 --- a/application/route.php +++ b/application/route.php @@ -152,9 +152,12 @@ Route::any('/testedition/get_card_all_list', 'testapp/index/get_card_all_list'); Route::any('/save_user_card_order', 'app/index/save_user_card_order'); Route::any('/testedition/save_user_card_order', 'testapp/index/save_user_card_order'); // 获取年级列表 -// Route::any('/get_grade_identity_list', 'app/index/get_grade_identity_list'); Route::any('/get_grade_list', 'app/index/get_grade_list'); Route::any('/testedition/get_grade_list', 'testapp/index/get_grade_list'); +// 修改用户所属区域 +Route::any('/update_user_address', 'app/index/update_user_address'); +Route::any('/testedition/update_user_address', 'testapp/index/update_user_address'); + // ################################身体数据卡片接口################################ diff --git a/application/testapp/controller/Base.php b/application/testapp/controller/Base.php index 951c7de..6a851da 100644 --- a/application/testapp/controller/Base.php +++ b/application/testapp/controller/Base.php @@ -14,7 +14,10 @@ class Base extends Controller{ '1'=>'test_app_data_log', '2'=>'test_app_card_data', '3'=>'test_app_user_data', - '4'=>'test_pc_vitalcapacity_standard']; + '4'=>'test_pc_vitalcapacity_standard', + '5'=>'test_admin_estimate' + ]; + protected $ceshiyong_token = ['57bd45e3a963b372ea2d873e4bd8d1f8','e0966788d02cc93290d9d674921d9715']; protected $base_call_method = ['内部']; protected $token_time = 2592000;//30天的秒数 @@ -71,6 +74,7 @@ class Base extends Controller{ ]); } + // 检查变量是否是一个只有数字的一维数组 public function is_num_array($array = [1,2,3],$type=1) { if (!is_array($array)) { diff --git a/application/testapp/controller/Index.php b/application/testapp/controller/Index.php index 39dfcb6..6a8bf44 100644 --- a/application/testapp/controller/Index.php +++ b/application/testapp/controller/Index.php @@ -18,6 +18,7 @@ class Index extends Base{ '7'=>'test_app_account_number', '8'=>'test_app_card_data_sub_item', '9'=>'test_app_card_data_sub_item_data', + '10'=>'test_admin_estimate' ]; // protected $card_key = ['2'=>'body','6'=>'skip','8'=>'vitalcapacity']; protected $default_card = ['2','6','8']; @@ -34,7 +35,8 @@ class Index extends Base{ 'bmi'=>['BMI','','test_pc_bmistand2'], 'average'=>['肺活量','ml','test_pc_vitalcapacity_standard'] ]; - + protected $identity_list = ['P0'=>'陌生人','P1'=>'爸爸','P2'=>'妈妈','P3'=>'大宝','P4'=>'二宝','P5'=>'三宝','P6'=>'四宝','P7'=>'爷爷','P8'=>'奶奶']; + // protected $nickname_data2 = ['爸爸','妈妈','大宝','二宝','爷爷','奶奶','外公','外婆']; protected $grade_list = [ ['id'=>'nothing','name'=>'无'], ['id'=>'grade_s_1','name'=>'小学一年级'], @@ -103,7 +105,7 @@ class Index extends Base{ } // 创建用户 - public function create_user_data($data = ['aan_id'=>1,'height'=>'152.3','weight'=>'35.4','nickname'=>'钮祜禄测试1','birthday'=>'2019-04-20','gender'=>1,'grade'=>'grade_s_3','token'=>'57bd45e3a963b372ea2d873e4bd8d1f8']){ + public function create_user_data($data = ['aan_id'=>1,'height'=>'152.3','weight'=>'35.4','nickname'=>'钮祜禄测试1','birthday'=>'2019-04-20','gender'=>1,'grade'=>'grade_s_3','identity_id'=>'P3','identity_name'=>'大宝','address'=>'河南,郑州','token'=>'57bd45e3a963b372ea2d873e4bd8d1f8']){ try { // 你的业务逻辑 @@ -144,7 +146,7 @@ class Index extends Base{ } // 修改用户 - public function update_user_data($data = ['id'=>66,'nickname'=>'王小二','birthday'=>'2019-01-01','gender'=>1,'grade'=>'二年级','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){ + public function update_user_data($data = ['id'=>66,'nickname'=>'王小二','birthday'=>'2019-01-01','gender'=>1,'grade'=>'二年级','identity_id'=>'P3','identity_name'=>'大宝','address'=>'河南,郑州','token'=>'0dafb98a10995c98b5a33b7d59d986ca']){ try { // 你的业务逻辑 @@ -484,15 +486,80 @@ class Index extends Base{ } // 获取年级key列表 - public function get_grade_list(){ - $data = input('post.'); - if(!array_key_exists('token', $data)){ - return $this->msg(10001); - } - + public function get_grade_list($data=['token'=>'0dafb98a10995c98b5a33b7d59d986ca']){ + try { + if(count(input('post.')) > 0){ + $data = input('post.'); + } + if(!array_key_exists('token', $data)){ + $this->record_api_log($data, null, ['code'=>10001,'msg'=>'',[]]); + return $this->msg(10001); + } + $address_data = Db::table($this->base_use_db_name['5'])->where(['type' => '2'])->cache(3600)->field('id,content,city,area')->find(); + $return_data['area_list'] = json_decode($address_data['content'],true); + $return_data['identity_list'] = $this->identity_list; + $return_data['grade_list'] = $this->grade_list; + $this->record_api_log($data, null, ['code'=>0,'msg'=>'success',[]]); + return $this->msg($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'] .= "代码: " . $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($this->grade_list); - + // 修改用户所属区域 + public function update_user_address($data=['aud_id'=>'1','address_data'=>'上海']){ + try { + if(count(input('post.')) > 0){ + $data = input('post.'); + } + if(!array_key_exists('aud_id', $data) || !array_key_exists('address_data', $data)){ + $this->record_api_log($data, null, ['code'=>10001,'msg'=>'',[]]); + return $this->msg(10001); + } + $user_data = Db::table($this->base_use_db_name['2'])->where(['id' => $data['aud_id']])->count(); + if($user_data<=0){ + $this->record_api_log($data, null, ['code'=>10003,'msg'=>'',[]]); + return $this->msg(10003); + } + + $address_result = Db::table($this->base_use_db_name['10'])->where(['province' => $data['address_data']])->cache(3600)->field('id,recommend_cards')->find(); + if(!$address_result){ + $this->record_api_log($data, null, ['code'=>10003,'msg'=>'',[]]); + return $this->msg(10003); + } + $user_result = Db::table($this->base_use_db_name['2'])->where(['id' => $data['aud_id']])->update(['card_order'=>$address_result['recommend_cards']]); + + if($user_result){ + $this->record_api_log($data, null, ['code'=>0,'msg'=>'success',[]]); + return $this->msg([]); + }else{ + $this->record_api_log($data, null, ['code'=>10002,'msg'=>'',[]]); + 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,'接口错误'); + } } ################################获取账号下信息操作################################ @@ -704,7 +771,9 @@ class Index extends Base{ 'grade' => 'require', 'height' => 'require|number', 'weight' => 'require|number', - // 'identity' => 'require|number', + 'identity_id' => 'require', + 'identity_name' => 'require', + 'address' => 'require', ]; $msg = [ 'aan_id.require' => '账号信息缺失', @@ -714,7 +783,9 @@ class Index extends Base{ 'grade.require' => '年级缺失', 'height.require' => '身高缺失', 'weight.require' => '体重缺失', - // 'identity.require' => '身份缺失', + 'identity_id.require' => '身份缺失', + 'identity_name.require' => '身份缺失', + 'address.require' => '区域缺失', 'aan_id.number' => '账号信息格式错误', 'nickname.chsAlphaNum' => '昵称只能是只能是汉字、字母', @@ -740,7 +811,9 @@ class Index extends Base{ $parameter['height'] = $data['height']; $parameter['weight'] = $data['weight']; $parameter['head_pic'] = $data['gender'] == 2?'http://tc.pcxbc.com/tsf/2.png':'http://tc.pcxbc.com/tsf/1.png'; - // $parameter['identity_data'] = $data['identity']; + $parameter['identity_id'] = $data['identity_id']; + $parameter['identity_name'] = $data['identity_name']; + $parameter['address'] = $data['address']; $parameter['create_time'] = date('Y-m-d H:i:s'); $parameter['last_update_time'] = date('Y-m-d H:i:s'); @@ -752,7 +825,17 @@ class Index extends Base{ if($result>0){ return '该成员已存在'; } - + if(!array_key_exists($parameter['identity_id'],$this->identity_list)){ + return '身份信息错误'; + }else{ + if($parameter['identity_id'] != 'P0'){ + $parameter['identity_name'] = $this->identity_list[$data['identity_id']]; + $result = Db::table($this->index_use_db_name['2'])->where(['identity_id'=>$parameter['identity_id'],'aan_id'=>$parameter['aan_id'],'is_del'=>0])->count(); + if($result>0){ + return '该身份已存在'; + } + } + } return $parameter; } public function verify_parameters2($data,$type){ @@ -765,7 +848,9 @@ class Index extends Base{ 'grade' => 'require', 'height' => 'require|number', 'weight' => 'require|number', - // 'identity' => 'require|number', + 'identity_id' => 'require', + 'identity_name' => 'require', + 'address' => 'require', ]; $msg = [ 'id.require' => '用户信息缺失', @@ -775,7 +860,9 @@ class Index extends Base{ 'grade.require' => '年级缺失', 'height.require' => '身高缺失', 'weight.require' => '体重缺失', - // 'identity.require' => '身份缺失', + 'identity_id.require' => '身份缺失', + 'identity_name.require' => '身份缺失', + 'address.require' => '区域缺失', 'id.number' => '用户信息格式错误', 'nickname.chsAlphaNum' => '昵称只能是只能是汉字、字母、数字', @@ -800,8 +887,23 @@ class Index extends Base{ $parameter['gender'] = $data['gender']; $parameter['grade'] = $data['grade']; $parameter['head_pic'] = $data['gender'] == 2?'http://tc.pcxbc.com/tsf/2.png':'http://tc.pcxbc.com/tsf/1.png'; + $parameter['identity_id'] = $data['identity_id']; + $parameter['identity_name'] = $data['identity_name']; + $parameter['address'] = $data['address']; // $parameter['identity_data'] = $data['identity']; $parameter['last_update_time'] = date('Y-m-d H:i:s'); + + if(!array_key_exists($parameter['identity_id'],$this->identity_list)){ + return '身份信息错误'; + }else{ + if($parameter['identity_id'] != 'P0'){ + $parameter['identity_name'] = $this->identity_list[$data['identity_id']]; + $result = Db::table($this->index_use_db_name['2'])->where(['identity_id'=>$parameter['identity_id'],'aan_id'=>$parameter['aan_id'],'is_del'=>0])->count(); + if($result>0){ + return '该身份已存在'; + } + } + } return $parameter; }