|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
namespace App\Services;
|
|
|
|
|
|
+use App\OracleDocOrderDeliveryInfo;
|
|
|
use App\OracleDOCOrderHeader;
|
|
|
|
|
|
class DeliveryService
|
|
|
@@ -14,15 +15,20 @@ class DeliveryService
|
|
|
$orderHeaders = OracleDOCOrderHeader::query()->selectRaw('orderno')->whereIn('WaveNo',$batchCodes)->get()->toArray();
|
|
|
$orderCodes = array_unique(array_merge($orderCodes,array_column($orderHeaders,'orderno')));
|
|
|
}
|
|
|
+ if ($orderCodes) {
|
|
|
+ $deliveryInfo = OracleDocOrderDeliveryInfo::query()->selectRaw('trackingNo')->whereIn('orderno',$orderCodes)->get()->toArray();
|
|
|
+ $logisticNumbers = array_unique(array_merge($logisticNumbers,array_column($deliveryInfo,'trackingno')));
|
|
|
+ }
|
|
|
+
|
|
|
+ $OracleDocOrderDeliveryInfos = OracleDocOrderDeliveryInfo::query()->with('docOrderHeader')->whereIn('trackingNo',$logisticNumbers)->get();
|
|
|
|
|
|
- $tbParams = app(TBDeliveryService::class)->getDeliveryInfo($orderCodes,$logisticNumbers);
|
|
|
- $pddParams = app(PDDDeliveryService::class)->getDeliveryInfo($orderCodes,$logisticNumbers);
|
|
|
- $sfParams = app(SFDeliveryService::class)->getDeliveryInfo($orderCodes,$logisticNumbers);
|
|
|
- $jdParams = app(JDDeliveryService::class)->getDeliveryInfo($orderCodes,$logisticNumbers);
|
|
|
- $sfQhdParams = app(SFQHDDeliveryService::class)->getDeliveryInfo($orderCodes,$logisticNumbers);
|
|
|
+ $tbParams = app(TBDeliveryService::class)->getDeliveryInfo($OracleDocOrderDeliveryInfos);
|
|
|
+ $pddParams = app(PDDDeliveryService::class)->getDeliveryInfo($OracleDocOrderDeliveryInfos);
|
|
|
+ $sfParams = app(SFDeliveryService::class)->getDeliveryInfo($OracleDocOrderDeliveryInfos);
|
|
|
+ $jdParams = app(JDDeliveryService::class)->getDeliveryInfo($logisticNumbers);
|
|
|
+ $sfQhdParams = app(SFQHDDeliveryService::class)->getDeliveryInfo($logisticNumbers);
|
|
|
|
|
|
- $params = array_merge($tbParams,$pddParams,$sfParams,$jdParams,$sfQhdParams);
|
|
|
- return $params;
|
|
|
+ return array_merge($tbParams,$pddParams,$sfParams,$jdParams,$sfQhdParams);
|
|
|
}
|
|
|
|
|
|
public function conversionPrintData($printStr): array
|
|
|
@@ -34,7 +40,6 @@ class DeliveryService
|
|
|
elseif (strstr($no, 'W')) $batchesCodes[] = $no;
|
|
|
else $logisticNumbers[] = $no;
|
|
|
}
|
|
|
-
|
|
|
return [$batchesCodes ?? [], $orderCodes ?? [], $logisticNumbers ?? []];
|
|
|
}
|
|
|
|