has('printStr')) return ['success' => false, 'message' => '为空']; $results = app(DeliveryService::class)->getDelivery($request['printStr']); $ip = $request->getClientIp(); $terminalQuery = Terminal::query()->select('id')->where('ip', $ip); $terminalPrinterQuery = TerminalPrinter::query()->select('id')->whereIn('terminal_id',$terminalQuery); $terminalPrinterLogistics = TerminalPrinterLogistic::query()->with('terminalPrinter','logistic')->whereIn('terminal_printer_id',$terminalPrinterQuery)->get(); foreach ($terminalPrinterLogistics as &$item) { $logisticCode = $item['logistic']['code']; $terminalPrinterName = $item['terminalPrinter']['printer_name']; $data[$logisticCode] = $terminalPrinterName; } foreach ($results as &$result){ $result['printerName'] = $data[$result['logistic_code']] ?? ''; } return ['success' => true, 'data' => $results]; } public function uploadPrintDataApi(Request $request, DeliveryService $service): array { if (is_string($request['printData'])) $request['printData'] = json_decode($request['printData']); $item = $service->customProcessing($request['printData']); return ['success' => true, 'data' => $item]; } }