validate([ 'case_codes' => 'required|array|min:1', 'case_codes.*' => 'required|string|max:255', ]); $caseCodes = array_values(array_unique(array_filter(array_map('trim', $request->input('case_codes'))))); if (empty($caseCodes)) { return response()->json([ 'success' => false, 'message' => '请提供有效的 case_id 列表' ], 400); } $existingCaseCodes = []; foreach (array_chunk($caseCodes, 1000) as $chunk) { $results = DB::connection('agentslave') ->table('case_extras') ->where('source', 'ob') ->where('field', 'OB Case ID') ->whereIn('case_code', $chunk) ->pluck('case_code') ->all(); $existingCaseCodes = array_merge($existingCaseCodes, $results); } $existingCaseCodes = array_values(array_unique(array_map('strval', $existingCaseCodes))); return response()->json([ 'success' => true, 'data' => [ 'existing_case_codes' => $existingCaseCodes, ], ]); } catch (ValidationException $e) { return response()->json([ 'success' => false, 'message' => '请求参数验证失败', 'errors' => $e->errors(), ], 422); } catch (\Exception $e) { return response()->json([ 'success' => false, 'message' => '查询 case_extras 失败: ' . $e->getMessage(), ], 500); } } }