validate()) return [ 'code' => 1, 'msg' => $this->getErrorSummary(false)[0] ]; try { $user = $this->user; $setting = QAndASetting::find()->where(['store_id' => get_store_id()])->one(); if ($setting && $setting->q_integral > 0) { if ($user->integral < $setting->q_integral) { throw new Exception('积分不足, 请先充值后再提问!'); } } try { $daan = DeepSeekAiTools::send($setting->key, $this->question); if ($daan['code'] != 0) { throw new Exception($daan['msg']); } } catch (\Throwable $e) { return [ 'code' => 0, 'data' => [ 'text' => '请求失败,请检查配置是否正确', 'time' => date("Y-m-d H:i:s"), ] ]; } $time = time(); $answer = $daan['data']; $q = new QAndAQa(); $q->store_id = get_store_id(); $q->user_id = $user->id; $q->question = $this->question; $q->answer = $answer; $q->created_at = $time; $q->answer_time = $time; $q->use_integral = $setting ? $setting->q_integral : 0; if ($q->save()) { return [ 'code' => 0, 'data' => [ 'text' => $answer, 'time' => date("Y-m-d H:i:s", $q->answer_time), ] ]; } else { throw new Exception($q->getErrorSummary(false)[0]); } } catch (\Exception $e) { return [ 'code' => 0, 'data' => [ 'text' => $e->getMessage(), 'time' => date("Y-m-d H:i:s"), ], ]; } } }