dongxiaoqin 1 год назад
Родитель
Сommit
b00ebefd4b

+ 1 - 1
app/workerapi/controller/MasterWorkerController.php

@@ -164,6 +164,6 @@ class MasterWorkerController extends BaseApiController
     {
         $params = (new MasterWokerValidate())->post()->goCheck('question');
         $result = MasterWorkerLogic::getQuestion($params);
-        return $this->data($result);
+        return json(['code' => 1, 'data' => $result['list'],'text'=> $result['text'], 'msg' => 'success']);
     }
 }

+ 17 - 7
app/workerapi/logic/MasterWorkerLogic.php

@@ -292,14 +292,15 @@ class MasterWorkerLogic extends  BaseLogic
     {
         if ($params['type'] == 1 || $params['type'] == 2) {
 
-            $cagegory = trim($params['category']);
-            $cagegory = str_replace(',', ',', $cagegory);
-            $cagegory = explode(',', $cagegory);
-            $cagegory = array_slice($cagegory, 0, 5);
+            $category = trim($params['category']);
+            $category = str_replace(',', ',', $category);
+            $category = explode(',', $category);
+            $category = array_slice($category, 0, 5);
             $list = MasterWorkerQuestion::where('type',$params['type'])
-                        ->whereRaw('FIND_IN_SET(' . $cagegory . ', category)')
+                        ->whereIn('category', $category)
                         ->where('type',$params['type'])
                         ->limit(100)
+                        ->select()
                         ->toArray();
             // 按 category 分组
             $grouped = [];
@@ -324,9 +325,18 @@ class MasterWorkerLogic extends  BaseLogic
                         $randomItems[] = $items[$key];
                     }
                 }
-                $result[$category] = $randomItems;
+                $result = array_merge($result,$randomItems);
             }
-            return array_values($result);
+            $text = '';
+            $i = 0;
+            foreach($result as $item) {
+                $i++;
+                $text .= $i.'.'.$item['title']."\r\n"."  ". str_replace(",","\r\n",$item['options'])."\r\n\r\n";
+            }
+            return [
+                'list' => array_values($result),
+                'text' => $text
+            ];
         } 
         return false;
     }