Browse Source

fix:submitTest

Xu·LinPeng 1 month atrás
parent
commit
936e8b0552
1 changed files with 77 additions and 56 deletions
  1. 77 56
      Modules/Admin/Http/Controllers/Api/ApiController.php

+ 77 - 56
Modules/Admin/Http/Controllers/Api/ApiController.php

@@ -1203,20 +1203,28 @@ class ApiController extends BaseController
     {
         $params = $request->all();
         $result['status'] = true;
-        $result['msg']    = ApiEnum::RETURN_SUCCESS;
-//        $result['data'] = [];
-        $zt = $request->query('zt');
-
-        $res = DB::connection('mysql_fwe10')->table('uf_xx_dtk')
-            ->select('id','tmlx','tm','xxa','xxb','xxc','xxd','da','score')
-            ->where('is_delete',0)
-            ->where('sjzt',$params['zt'])
-            ->orderBy('tmlx')
-            ->orderBy('sort')->get();
-
 
-        $result['data'] = $res;
+        $result['data'] = [];
 
+        // 查询是否答过题
+        $var1 = DB::connection('mysql_fwe10')->table('uf_dtqk')
+            ->select('id')
+            ->where('is_delete',0)
+            ->where('sjzt',$params['sjid'])
+            ->where('ryid',$params['gh'])
+            ->get();
+        if(count($var1) == 0){
+            $res = DB::connection('mysql_fwe10')->table('uf_xx_dtk')
+                ->select('id','tmlx','tm','xxa','xxb','xxc','xxd','da','score')
+                ->where('is_delete',0)
+                ->where('sjzt',$params['sjid'])
+                ->orderBy('tmlx')
+                ->orderBy('sort')->get();
+            $result['data'] = $res;
+            $result['msg']    = ApiEnum::RETURN_SUCCESS;
+        }else{
+            $result['msg']    = "已经答过此试卷,请勿重新答题。";
+        }
         return self::successResponse($result);
     }
 
@@ -1225,61 +1233,74 @@ class ApiController extends BaseController
     {
         $params = $request->all();
         $result['status'] = true;
-        $result['msg']    = ApiEnum::RETURN_SUCCESS;
 
         $list = $params['answer'];
+        // 查询是否答过题
+        $var1 = DB::connection('mysql_fwe10')->table('uf_dtqk')
+            ->select('id')
+            ->where('is_delete',0)
+            ->where('sjzt',$params['sjid'])
+            ->where('ryid',$params['gh'])
+            ->get();
+        if(count($var1) == 0){
+            if(count($list) > 0){
+                for($i=0;$i<count($list);$i++){
+                    $id = mt_rand(pow(10, 18), pow(10, 18) + 999999999);
+
+                    if (is_array($list[$i]['value'])) {
+                        $value = implode(',', $list[$i]['value']);
+                    } else {
+                        $value = $list[$i]['value'];
+                    }
 
-        if(count($list) > 0){
-            for($i=0;$i<count($list);$i++){
-                $id = mt_rand(pow(10, 18), pow(10, 18) + 999999999);
+                    $insert = [
+                        'ID' => $id,
+                        'FORM_DATA_ID' => $id,
+                        'DATA_INDEX' => 0.0,
+                        'CREATE_TIME' => date('Y-m-d H:i:s'),
+                        'TENANT_KEY' => 't1zz9w8165',
+                        'IS_DELETE' => 0,
+                        'DELETE_TYPE' => 0,
+                        'FT_STATUS' => 0,
+
+                        'sjzt' => $params['sjid'],
+                        'da'  => $value,
+                        'tmid' => $list[$i]['id'],
+                        'xm'  => $params['xm'],
+                        'gh'  => $params['gh'],
+                        'zqyf' => $list[$i]['right']
+                    ];
 
-                if (is_array($list[$i]['value'])) {
-                    $value = implode(',', $list[$i]['value']);
-                } else {
-                    $value = $list[$i]['value'];
+                    DB::connection('mysql_fwe10')->table('uf_xx_dtjl')->insert($insert);
                 }
+            }
 
-                $insert = [
-                    'ID' => $id,
-                    'FORM_DATA_ID' => $id,
-                    'DATA_INDEX' => 0.0,
-                    'CREATE_TIME' => date('Y-m-d H:i:s'),
-                    'TENANT_KEY' => 't1zz9w8165',
-                    'IS_DELETE' => 0,
-                    'DELETE_TYPE' => 0,
-                    'FT_STATUS' => 0,
+            $id = mt_rand(pow(10, 18), pow(10, 18) + 999999999);
+
+            $insert = [
+                'ID' => $id,
+                'FORM_DATA_ID' => $id,
+                'DATA_INDEX' => 0.0,
+                'CREATE_TIME' => date('Y-m-d H:i:s'),
+                'TENANT_KEY' => 't1zz9w8165',
+                'IS_DELETE' => 0,
+                'DELETE_TYPE' => 0,
+                'FT_STATUS' => 0,
+
+                'sjzt' => $params['sjid'],
+                'xm'  => $params['xm'],
+                'ryid'  => $params['gh'],
+                'df'  =>  $params['score']
+            ];
 
-                    'sjzt' => $params['sjid'],
-                    'da'  => $value,
-                    'tmid' => $list[$i]['id'],
-                    'xm'  => $params['xm'],
-                    'gh'  => $params['gh'],
-                    'zqyf' => $list[$i]['right']
-                ];
+            DB::connection('mysql_fwe10')->table('uf_dtqk')->insert($insert);
 
-                DB::connection('mysql_fwe10')->table('uf_xx_dtjl')->insert($insert);
-            }
+            $result['msg']    = ApiEnum::RETURN_SUCCESS;
+        }else{
+            $result['msg']    = "已经答过此试卷,请勿重新答题。";
         }
 
-        $id = mt_rand(pow(10, 18), pow(10, 18) + 999999999);
-
-        $insert = [
-            'ID' => $id,
-            'FORM_DATA_ID' => $id,
-            'DATA_INDEX' => 0.0,
-            'CREATE_TIME' => date('Y-m-d H:i:s'),
-            'TENANT_KEY' => 't1zz9w8165',
-            'IS_DELETE' => 0,
-            'DELETE_TYPE' => 0,
-            'FT_STATUS' => 0,
-
-            'sjzt' => $params['sjid'],
-            'xm'  => $params['xm'],
-            'ryid'  => $params['gh'],
-            'df'  =>  $params['score']
-        ];
 
-        DB::connection('mysql_fwe10')->table('uf_dtqk')->insert($insert);
 
         return self::successResponse($result);
     }