@@ 241-278 (lines=38) @@ | ||
238 | ||
239 | // データ行の出力. |
|
240 | $app['eccube.service.csv.export']->setExportQueryBuilder($qb); |
|
241 | $app['eccube.service.csv.export']->exportData(function ($entity, $csvService) use ($app, $request) { |
|
242 | ||
243 | $Csvs = $csvService->getCsvs(); |
|
244 | ||
245 | $Order = $entity; |
|
246 | $OrderDetails = $Order->getOrderDetails(); |
|
247 | ||
248 | foreach ($OrderDetails as $OrderDetail) { |
|
249 | $ExportCsvRow = new \Eccube\Entity\ExportCsvRow(); |
|
250 | ||
251 | // CSV出力項目と合致するデータを取得. |
|
252 | foreach ($Csvs as $Csv) { |
|
253 | // 受注データを検索. |
|
254 | $ExportCsvRow->setData($csvService->getData($Csv, $Order)); |
|
255 | if ($ExportCsvRow->isDataNull()) { |
|
256 | // 受注データにない場合は, 受注明細を検索. |
|
257 | $ExportCsvRow->setData($csvService->getData($Csv, $OrderDetail)); |
|
258 | } |
|
259 | ||
260 | $event = new EventArgs( |
|
261 | array( |
|
262 | 'csvService' => $csvService, |
|
263 | 'Csv' => $Csv, |
|
264 | 'OrderDetail' => $OrderDetail, |
|
265 | 'ExportCsvRow' => $ExportCsvRow, |
|
266 | ), |
|
267 | $request |
|
268 | ); |
|
269 | $app['eccube.event.dispatcher']->dispatch(EccubeEvents::ADMIN_ORDER_CSV_EXPORT_ORDER, $event); |
|
270 | ||
271 | $ExportCsvRow->pushData(); |
|
272 | } |
|
273 | ||
274 | //$row[] = number_format(memory_get_usage(true)); |
|
275 | // 出力. |
|
276 | $csvService->fputcsv($ExportCsvRow->getRow()); |
|
277 | } |
|
278 | }); |
|
279 | }); |
|
280 | ||
281 | $now = new \DateTime(); |
@@ 797-836 (lines=40) @@ | ||
794 | // データ行の出力. |
|
795 | $app['eccube.service.csv.export']->setExportQueryBuilder($qb); |
|
796 | ||
797 | $app['eccube.service.csv.export']->exportData(function ($entity, CsvExportService $csvService) use ($app, $request) { |
|
798 | $Csvs = $csvService->getCsvs(); |
|
799 | ||
800 | /** @var $Product \Eccube\Entity\Product */ |
|
801 | $Product = $entity; |
|
802 | ||
803 | /** @var $ProductClassess \Eccube\Entity\ProductClass[] */ |
|
804 | $ProductClassess = $Product->getProductClasses(); |
|
805 | ||
806 | foreach ($ProductClassess as $ProductClass) { |
|
807 | $ExportCsvRow = new \Eccube\Entity\ExportCsvRow(); |
|
808 | ||
809 | // CSV出力項目と合致するデータを取得. |
|
810 | foreach ($Csvs as $Csv) { |
|
811 | // 商品データを検索. |
|
812 | $ExportCsvRow->setData($csvService->getData($Csv, $Product)); |
|
813 | if ($ExportCsvRow->isDataNull()) { |
|
814 | // 商品規格情報を検索. |
|
815 | $ExportCsvRow->setData($csvService->getData($Csv, $ProductClass)); |
|
816 | } |
|
817 | ||
818 | $event = new EventArgs( |
|
819 | array( |
|
820 | 'csvService' => $csvService, |
|
821 | 'Csv' => $Csv, |
|
822 | 'ProductClass' => $ProductClass, |
|
823 | 'ExportCsvRow' => $ExportCsvRow, |
|
824 | ), |
|
825 | $request |
|
826 | ); |
|
827 | $app['eccube.event.dispatcher']->dispatch(EccubeEvents::ADMIN_PRODUCT_CSV_EXPORT, $event); |
|
828 | ||
829 | $ExportCsvRow->pushData(); |
|
830 | } |
|
831 | ||
832 | // $row[] = number_format(memory_get_usage(true)); |
|
833 | // 出力. |
|
834 | $csvService->fputcsv($ExportCsvRow->getRow()); |
|
835 | } |
|
836 | }); |
|
837 | }); |
|
838 | ||
839 | $now = new \DateTime(); |