diff --git a/application/admin/controller/Base.php b/application/admin/controller/Base.php index 475c473..75ceb31 100644 --- a/application/admin/controller/Base.php +++ b/application/admin/controller/Base.php @@ -191,16 +191,18 @@ class Base extends Controller{ return is_numeric($value) && $value >= 0; } - - - public function msg($data,$str=''){ + public function msg($data,$str='',$result = []){ if(is_array($data)){ - return json(['code'=>0,'msg'=>'操作成功','data'=>$data]); + if($str != ''){ + return json(['code'=>0,'msg'=>$str,'data'=>$data]); + }else{ + return json(['code'=>0,'msg'=>'操作成功','data'=>$data]); + } }else{ if($str != ''){ - return json(['code'=>$data,'msg'=>$str]); + return json(['code'=>$data,'msg'=>$str,'data'=>$result]); } - return json(['code'=>$data,'msg'=>$this->return_data_all[$data]]); + return json(['code'=>$data,'msg'=>$this->return_data_all[$data],'data'=>$result]); } } diff --git a/application/admin/controller/Editortext.php b/application/admin/controller/Editortext.php index 4f9b230..953f9b1 100644 --- a/application/admin/controller/Editortext.php +++ b/application/admin/controller/Editortext.php @@ -8,7 +8,7 @@ use app\bj\controller\Common; use think\Log; use \think\Validate; -class Editortext extends Controller{ +class Editortext extends Base{ protected $page_num = 10; protected $file_max_pic = 1024*1024*5;//xxxMB public function index($page = 1){ @@ -78,25 +78,54 @@ class Editortext extends Controller{ if(!array_key_exists('id', $data)){ return $this->msg(10001); } - $result = Db::table('admin_editor_text_content')->where(['id'=>$data['id']])->setInc('reading'); - $result = Db::table('admin_editor_text_content')->where(['id'=>$data['id']])->find(); + // 查看文章是否存在 + $article_data = Db::table('admin_editor_text_content')->where(['id'=>$data['id']])->find(); + if(!$article_data){ + return $this->msg(10004); + } + $result = $article_data; + // 处理是否有过点赞 if(array_key_exists('token', $data)){ $result['token'] = $data['token']; - $is_like = Db::table('admin_editor_text_like_up_log')->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->find(); + // 启动事务处理用户已读记录&文章阅读数 + Db::startTrans(); + try{ + Db::table('admin_editor_text_content')->where(['id'=>$data['id']])->setInc('reading'); + // 查看文章是否有被观看过 + $is_like = Db::table('admin_editor_text_like_up_log')->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->find(); + if (!$is_like) { + // 如果不存在,则插入新记录 + $save_data = ['token'=>$result['token'],'aetc_id'=>$data['id'],'create_time'=>date('Y-m-d H:i:s')]; + Db::name('admin_editor_text_like_up_log')->insert($save_data); + }else{ + Db::table('admin_editor_text_like_up_log')->where(['id'=>$is_like['id']])->setInc('reading'); + } + // 提交事务 + Db::commit(); + } catch (\Exception $e) { + // 回滚事务 + Db::rollback(); + } if($is_like){ - if($is_like['is_del'] == 0){ + if($is_like['is_like'] == 0){ + // 用户没点赞 $result['user_like'] = 0; }else{ + // 用户点过点赞 $result['user_like'] = 1; } }else{ + // 用户没点过赞 $result['user_like'] = 2; } }else{ + // 没有用户信息提示要登录 + Db::table('admin_editor_text_content')->where(['id'=>$data['id']])->setInc('reading'); $result['user_like'] = 3; $result['token'] = ''; } - + // dump($result); + // die; $this->assign([ 'result' => $result ]); @@ -286,8 +315,5 @@ class Editortext extends Controller{ ################################################################other################################################################ ################################################################other################################################################ - public function msg($code,$msg='',$data=[]){ - return json(['code'=>$code,'msg'=>$msg,'data'=>$data]); - } } \ No newline at end of file diff --git a/application/admin/view/editortext/add_content.html b/application/admin/view/editortext/add_content.html index 2331a05..cce8aa1 100644 --- a/application/admin/view/editortext/add_content.html +++ b/application/admin/view/editortext/add_content.html @@ -92,6 +92,7 @@ + diff --git a/application/admin/view/editortext/model_content.html b/application/admin/view/editortext/model_content.html index d199561..5554281 100644 --- a/application/admin/view/editortext/model_content.html +++ b/application/admin/view/editortext/model_content.html @@ -167,7 +167,7 @@ var i_like_num = parseInt("{$result.i_like}"); // 根据 user_like 的值设置初始类 var isLikeElement = document.getElementById('is_like_a'); - if (user_like == 0) { + if (user_like == 1) { isLikeElement.classList.add('heart_full'); } else { isLikeElement.classList.add('heart_empty'); @@ -193,12 +193,12 @@ c_load() //请求成功时处理 if(req.code == 0){ - if(req.data.user_like == 0){ + if(req.data.user_like == 1){ i_like_num = i_like_num + 1; isLikeElement.classList.remove('heart_empty'); isLikeElement.classList.add('heart_full'); document.querySelector('.is_like_num').innerHTML = i_like_num; - }else if(req.data.user_like == 1){ + }else if(req.data.user_like == 0){ i_like_num = i_like_num - 1; isLikeElement.classList.remove('heart_full'); isLikeElement.classList.add('heart_empty'); diff --git a/application/app/controller/Msginformation.php b/application/app/controller/Msginformation.php index 4fea149..88bb9d6 100644 --- a/application/app/controller/Msginformation.php +++ b/application/app/controller/Msginformation.php @@ -206,7 +206,7 @@ class Msginformation extends Base{ ".$this->page_num." ROWS ONLY "); $return_result['content_data'] = $content_result; - $user_like = Db::table($this->msginformation_use_db_name['2'])->where(['token'=>$data['token'],'is_del'=>0])->column('aetc_id'); + $user_like = Db::table($this->msginformation_use_db_name['2'])->where(['token'=>$data['token'],'is_like'=>0])->column('aetc_id'); foreach ($return_result['content_data'] as $key => $value) { if(array_key_exists($value['id'], $user_like)){ diff --git a/application/app/view/download/demo2.html b/application/app/view/download/demo2.html index 2281ebf..a6c1c48 100644 --- a/application/app/view/download/demo2.html +++ b/application/app/view/download/demo2.html @@ -179,12 +179,12 @@ $(this).hide() }) - if(isWeixin() && !isIOS()){ - $('.ts').show() - }else{ - // console.log('当前不在微信环境中'); - // $('.download').addClass('bouncing-button-container') - } + // if(isWeixin() && !isIOS()){ + // $('.ts').show() + // }else{ + // // console.log('当前不在微信环境中'); + // // $('.download').addClass('bouncing-button-container') + // } function download(){ if (isIOS()) { diff --git a/application/route.php b/application/route.php index b1a374e..26bbeab 100644 --- a/application/route.php +++ b/application/route.php @@ -21,6 +21,13 @@ Route::any('/testedition/download', 'testapp/download/demo'); Route::any('/ceshi', 'app/download/ceshi'); Route::any('/get_class', 'admin/demo/get_class_xuesheng'); +// // ################################################################二维码入口################################################################ +// // ################################################################二维码入口################################################################ +// 配合小白快乐成长&宠物小白使用 +Route::any('/ordinary_code', 'code/qrcode/ordinary_code'); +// 配合reedaw&宠物小白使用 +Route::any('/bluetooth_code', 'code/qrcode/bluetooth_code'); + // Route::any('/CityList.js', 'tsf/CityList.js'); @@ -331,6 +338,10 @@ Route::any('/testedition/get_sector_content_msg', 'testapp/Msginformation/get_se // 点赞 Route::any('/user_like_it', 'app/Msginformation/user_like_it'); Route::any('/testedition/user_like_it', 'testapp/Msginformation/user_like_it'); +// 获取公告文章信息列表 +Route::any('/get_recommend_information', 'app/Msginformation/get_recommend_information'); +Route::any('/testedition/get_recommend_information', 'testapp/Msginformation/get_recommend_information'); + diff --git a/application/testapp/controller/Index.php b/application/testapp/controller/Index.php index 173165f..9ab40d6 100644 --- a/application/testapp/controller/Index.php +++ b/application/testapp/controller/Index.php @@ -98,10 +98,6 @@ class Index extends Base{ $this->record_api_log($data, $logContent, null); return $this->msg(99999); } - - - - } // 创建用户 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']){ @@ -574,6 +570,7 @@ class Index extends Base{ return $this->msg(99999); } } + ################################获取账号下信息操作################################ // 获取账号下首页卡片的基础数据 @@ -722,6 +719,7 @@ class Index extends Base{ + ################################################################other################################################################ ################################################################other################################################################ ################################################################other################################################################ diff --git a/application/testapp/controller/Msginformation.php b/application/testapp/controller/Msginformation.php index 89e18f9..d4935e6 100644 --- a/application/testapp/controller/Msginformation.php +++ b/application/testapp/controller/Msginformation.php @@ -118,6 +118,36 @@ class Msginformation extends Base{ } } + // 获取公告文章信息列表 + public function get_recommend_information($data=['token'=>'6441bf7dabea7b3360a30240d3b19fc5']){ + 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); + } + if(!$this->verify_data_is_ok($data['token'],'str')){ + return $this->msg(10005); + } + $return_result = $this->get_recommend_information_action($data); + $this->record_api_log($data, null, $return_result); + return $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); + } + } ################################################################业务################################################################ ################################################################get_sector_label_msg @@ -223,16 +253,16 @@ class Msginformation extends Base{ if($user_like_data){ // 如果找到有点赞记录 - if($user_like_data['is_del'] == 0){ + if($user_like_data['is_like'] == 1){ // 如果已经点了 // 启动事务 Db::startTrans(); try{ Db::table($this->msginformation_use_db_name['1'])->where(['id'=>$data['id']])->setDec('i_like'); - Db::table($this->msginformation_use_db_name['2'])->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->update(['is_del'=>1,'update_time'=>date('Y-m-d H:i:s')]); + Db::table($this->msginformation_use_db_name['2'])->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->update(['is_like'=>0,'update_time'=>date('Y-m-d H:i:s')]); // 提交事务 Db::commit(); - return $this->msg(['user_like'=>1]); + return $this->msg(['user_like'=>0]); } catch (\Exception $e) { // 回滚事务 Db::rollback(); @@ -244,10 +274,10 @@ class Msginformation extends Base{ Db::startTrans(); try{ Db::table($this->msginformation_use_db_name['1'])->where(['id'=>$data['id']])->setInc('i_like'); - Db::table($this->msginformation_use_db_name['2'])->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->update(['is_del'=>0,'update_time'=>date('Y-m-d H:i:s')]); + Db::table($this->msginformation_use_db_name['2'])->where(['aetc_id'=>$data['id'],'token'=>$data['token']])->update(['is_like'=>1,'update_time'=>date('Y-m-d H:i:s')]); // 提交事务 Db::commit(); - return $this->msg(['user_like'=>0]); + return $this->msg(['user_like'=>1]); } catch (\Exception $e) { // 回滚事务 Db::rollback(); @@ -263,12 +293,13 @@ class Msginformation extends Base{ Db::table($this->msginformation_use_db_name['2'])->insert([ 'aetc_id'=>$data['id'], 'token'=>$data['token'], + 'is_like'=>1, 'create_time'=>date('Y-m-d H:i:s'), 'update_time'=>date('Y-m-d H:i:s') ]); // 提交事务 Db::commit(); - return $this->msg(['user_like'=>0]); + return $this->msg(['user_like'=>1]); } catch (\Exception $e) { // 回滚事务 Db::rollback(); @@ -277,6 +308,44 @@ class Msginformation extends Base{ } } + + + ################################################################get_recommend_information + public function get_recommend_information_action($data){ + $pop_arr = []; + $list_arr = []; + $recommend_data = Db::table($this->msginformation_use_db_name['1'])->where(['type'=>'6','is_del'=>0])->field('id,title,cover_image,pop_image')->select(); + $recommend_data2 = []; + foreach ($recommend_data as $key => $value) { + $recommend_data2[$value['id']] = $value; + } + $user_read_data = Db::table($this->msginformation_use_db_name['2'])->where(['token'=>$data['token']])->field('id,aetc_id,create_time')->select(); + foreach ($user_read_data as $key => $value) { + if(array_key_exists($value['aetc_id'],$recommend_data2)){ + unset($recommend_data2[$value['aetc_id']]); + } + } + if(count($recommend_data2) > 0){ + foreach ($recommend_data2 as $key => $value) { + if($value['pop_image'] != null){ + array_push($pop_arr,['title'=>$value['title'],'jump_url'=>"https://tc.pcxbc.com/editortext/model_content?id=".$value['id'].'&token='.$data['token'],'pop_image'=>"https://tc.pcxbc.com/".$value['pop_image']]); + }else{ + array_push($list_arr,['title'=>$value['title'],'jump_url'=>"https://tc.pcxbc.com/editortext/model_content?id=".$value['id'].'&token='.$data['token']]); + } + } + // dump($pop_arr); + // dump($list_arr); + return $this->msg([ + 'pop_list'=>count($pop_arr) > 0 ? $pop_arr[0] : [], + 'roll_list'=>count($list_arr) > 0 ? $list_arr : [] + ]); + }else{ + return $this->msg([ + 'pop_list'=>[], + 'roll_list'=>[] + ]); + } + } diff --git a/application/testapp/controller/Sportstesting.php b/application/testapp/controller/Sportstesting.php index 5515aa1..04d6173 100644 --- a/application/testapp/controller/Sportstesting.php +++ b/application/testapp/controller/Sportstesting.php @@ -82,7 +82,7 @@ class Sportstesting extends Base{ } // 获取地区类型列表 - public function sportstesting_get_region_list($data = ['parameter_data'=>'河北,石家庄市','gender'=>'0']){ + public function sportstesting_get_region_list($data = ['parameter_data'=>'辽宁,沈阳市','gender'=>'1']){ try { // 你的业务逻辑 if(count(input('post.')) > 0){ @@ -368,7 +368,8 @@ class Sportstesting extends Base{ $result['list'] = []; $result['total_score'] = 0; $data = Db::table($this->sportstesting_use_db_name['1'])->where($db_condition)->select(); - + // dump($data); + // die; if(count($data) > 0){ if(count($data) > 1){ // 查到不止一条规则 @@ -377,7 +378,7 @@ class Sportstesting extends Base{ $data = json_decode($data[0]['content'],true); $result = $this->handle_default_rule_list($data,$gender); - + // dump($result); // die; return $this->msg($result); }else{ @@ -630,14 +631,17 @@ class Sportstesting extends Base{ }else{ $temporary_arr = $data[2]; } - - + // dump($temporary_arr); + // return $temporary_arr; // die; $result = []; foreach ($temporary_arr as $key => $value) { + $num = array_push($result,['name'=>$key,'key'=>$key,'list'=>[]]); + // dump($value); foreach ($value as $s_c_k => $s_c_v) { if($s_c_v['choose_num'] == 0){ + // 如果是必选项 $num2 = array_push($result[$num-1]['list'],[ 'name'=>$s_c_k, 'key'=>$s_c_k, @@ -657,7 +661,28 @@ class Sportstesting extends Base{ ]); } }else{ - $num2 = array_push($result[$num-1]['list'],['name'=>$s_c_k,'key'=>$s_c_k,'is_choice'=>$s_c_v['choose_num'],'list'=>[]]); + // 如果不是必选项 + $num2 = array_push($result[$num-1]['list'],[ + 'name'=>$s_c_k."(".count($s_c_v['list'])."选".$s_c_v['choose_num'].")", + 'key'=>$s_c_k, + 'is_choice'=>$s_c_v['choose_num'], + 'list'=>[] + ]); + $choice_state_num = $s_c_v['choose_num']; + foreach ($s_c_v['list'] as $x_m_k => $x_m_v) { + array_push($result[$num-1]['list'][$num2-1]['list'],[ + 'name'=>$x_m_k, + 'proportion'=>$x_m_v['proportion'], + 'value'=>$x_m_v['value'], + 'proportion_value'=>null, + 'unit'=>$x_m_v['unit_data'], + 'type'=>$x_m_v['type'], + 'describe'=>$x_m_v['describe'], + 'total_score'=>$x_m_v['score'], + 'choice_state'=>$choice_state_num > 0?1:0, + ]); + $choice_state_num = $choice_state_num-1; + } } } }