| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | 
							- <?php
 
- namespace app\api\controller;
 
- use app\common\controller\Api;
 
- use think\Db;
 
- /**
 
-  * 社区服务
 
-  */
 
- class Service extends Api
 
- {
 
-     protected $noNeedLogin = ['*'];
 
-     protected $noNeedRight = ['*'];
 
-     //服务类型列表
 
-     public function paper_list(){
 
-         $list = Db::name('service_paper')->where(['status'=>1])->whereNull('deletetime')->order('weigh desc')->select();
 
-         $this->success(1, $list);
 
-     }
 
-     //题目列表
 
-     public function question_list(){
 
-         $paper_id = input('paper_id');
 
-         $list = Db::name('service_question')->where('paper_id',$paper_id)->where(['status'=>1])->whereNull('deletetime')->order('weigh desc, id desc')->select();
 
-         foreach($list as $k=>$v){
 
-             $options = json_decode($v['options_json'],true);
 
-             foreach ($options as $key=>$value){
 
-                 $op = [
 
-                     'key' => $key,
 
-                     'value' => $value
 
-                 ];
 
-                 $list[$k]['options'][] = $op;
 
-             }
 
-             unset($list[$k]['options_json']);
 
-         }
 
-         $this->success(1, $list);
 
-     }
 
-     //提交
 
-     public function submit(){
 
-         $paper_id = input('paper_id');
 
-         $answer_json = input('answer','','trim');
 
-         $list = Db::name('service_question')->where('paper_id',$paper_id)->where(['status'=>1])->whereNull('deletetime')->order('weigh desc, id desc')->select();
 
-         $question_ids = array_column($list, 'id');
 
-         $answer = json_decode($answer_json,true);
 
-         if(count($list) != count($answer)){
 
-             $this->error();
 
-         }
 
-         if(array_column($answer,'id') != $question_ids){
 
-             $this->error();
 
-         }
 
-         $data = [
 
-             'user_id' => $this->auth->id,
 
-             'paper_id' => $paper_id,
 
-             'question_ids' => implode(',',$question_ids),
 
-             'user_answers' => $answer_json,
 
-             'createtime' => time(),
 
-             'updatetime' => time(),
 
-         ];
 
-         $grade_id = Db::name('service_grade')->insert($data);
 
-         $this->success('提交成功',$grade_id);
 
-     }
 
- }
 
 
  |