Code Duplication    Length = 38-40 lines in 2 locations

src/Eccube/Controller/Admin/Order/OrderController.php 1 location

@@ 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();

src/Eccube/Controller/Admin/Product/ProductController.php 1 location

@@ 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();