Explorar o código

学习计划自动进入考试模块

赵启卫 %!s(int64=2) %!d(string=hai) anos
pai
achega
f961122290

+ 25 - 1
application/wap/controller/Studyplan.php

xqd xqd xqd xqd
@@ -19,6 +19,8 @@ use app\admin\model\study\PlanItems;
 use app\wap\model\special\Special as SpecialModel;
 use app\wap\model\special\SpecialWatch as SpecialWatch;
 use app\wap\model\special\SpecialTask;
+use app\admin\model\questions\Relation;
+use app\wap\model\topic\ExaminationRecord;
 use app\wap\model\special\SpecialSource;
 use app\wap\model\store\StoreOrder;
 use service\JsonService;
@@ -202,7 +204,7 @@ class Studyplan extends AuthController{
                 ->order($order)
                 ->select();
             foreach($specialWatchList as $v){
-                $tasklist[$v['special_id']][$v['source_id']] = $v->toArray();
+                $tasklist[$v['special_id']][] = $v->toArray();
             }
         }
         
@@ -212,6 +214,7 @@ class Studyplan extends AuthController{
         $viewing_time= 0;
         foreach ($itemsList as $v) {
             foreach ($v as $v1) {
+                //判断课程是否学习完成
                 if ($tasklist[$v1['id']] && is_array($tasklist[$v1['id']])) {
                     foreach ($tasklist[$v1['id']] as $v2) {
                         if ($v2['percentage'] < 100) {
@@ -222,7 +225,28 @@ class Studyplan extends AuthController{
                         }
                     }
                 }
+                if ($nowspid) break;
+                //判断是否有考试
+                $join = [
+                    ['ExaminationRecord er', 'er.test_id = r.relation_id and er.uid = ' . $this->uid, 'left'],
+                ];
+                $examlist = Relation::alias('r')->where('r.relationship_id', $v1['id'])->where('r.relationship', 2)
+                ->field('r.relation_id as test_id, er.score')->join($join)->select();
+                if ($examlist) {
+                    foreach ($examlist as $item) {
+                        if ($item['score'] < 60) {
+                            $this->redirect('wap/special/question_index', ['id' => $item['test_id'], 'planid' => $id, ]);
+                        }
+                    }
+                }
+                
             }
+            if ($nowspid) break;
+        }
+        if (!$nowspid) {
+            $nowspid = $items[0]['id'];
+            print_r($tasklist);
+            $nowtaskid = $tasklist[$nowspid][0]['source_id'];
         }
         //id=206&specialId=37&viewing_time=0
         $this->redirect('wap/special/task_info', ['id' => $nowtaskid, 'specialId' => $nowspid, 'viewing_time' => $viewing_time, 'planid' => $id, ]);

+ 1 - 0
application/wap/model/store/StoreOrder.php

xqd
@@ -1523,6 +1523,7 @@ class StoreOrder extends ModelBasic
             'total_price' => $total_price,
             'pay_price' => $total_price,
             'pay_type' => $payType,
+            'type' => 3,
             'combination_id' => $combination_id,
             'is_gift' => $pay_type == 1 ? 1 : 0,
             'pink_time' => 0,