Code Duplication    Length = 12-13 lines in 3 locations

src/Eccube/Controller/Admin/Product/CsvImportController.php 3 locations

@@ 309-320 (lines=12) @@
306
                        if ($ProductClasses->count() < 1) {
307
                            // 規格分類1(ID)がセットされていると規格なし商品、規格あり商品を作成
308
                            $ProductClassOrg = $this->createProductClass($row, $Product, $data, $headerByKey);
309
                            if ($this->BaseInfo->isOptionProductDeliveryFee()) {
310
                                if (isset($row[$headerByKey['delivery_fee']]) && StringUtil::isBlank($row[$headerByKey['delivery_fee']])) {
311
                                    $deliveryFee = str_replace(',', '', $row[$headerByKey['delivery_fee']]);
312
                                    $errors = $this->validator->validate($deliveryFee, new GreaterThanOrEqual(['value' => 0]));
313
                                    if ($errors->count() === 0) {
314
                                        $ProductClassOrg->setDeliveryFee($deliveryFee);
315
                                    } else {
316
                                        $message = trans('admin.common.csv_invalid_greater_than_zero', ['%line%' => $line, '%name%' => $headerByKey['delivery_fee']]);
317
                                        $this->addErrors($message);
318
                                    }
319
                                }
320
                            }
321
322
                            if (isset($row[$headerByKey['class_category1']]) && StringUtil::isNotBlank($row[$headerByKey['class_category1']])) {
323
                                if (isset($row[$headerByKey['class_category2']]) && $row[$headerByKey['class_category1']] == $row[$headerByKey['class_category2']]) {
@@ 403-415 (lines=13) @@
400
                                ) {
401
                                    $this->updateProductClass($row, $Product, $pc, $data, $headerByKey);
402
403
                                    if ($this->BaseInfo->isOptionProductDeliveryFee()) {
404
                                        $headerByKey['delivery_fee'] = trans('csvimport.label.delivery_fee');
405
                                        if (isset($row[$headerByKey['delivery_fee']]) && StringUtil::isNotBlank($row[$headerByKey['delivery_fee']])) {
406
                                            $deliveryFee = str_replace(',', '', $row[$headerByKey['delivery_fee']]);
407
                                            $errors = $this->validator->validate($deliveryFee, new GreaterThanOrEqual(['value' => 0]));
408
                                            if ($errors->count() === 0) {
409
                                                $pc->setDeliveryFee($deliveryFee);
410
                                            } else {
411
                                                $message = trans('admin.common.csv_invalid_greater_than_zero', ['%line%' => $line, '%name%' => $headerByKey['delivery_fee']]);
412
                                                $this->addErrors($message);
413
                                            }
414
                                        }
415
                                    }
416
                                    $flag = true;
417
                                    break;
418
                                }
@@ 490-501 (lines=12) @@
487
                                    }
488
                                    $ProductClass = $this->createProductClass($row, $Product, $data, $headerByKey, $ClassCategory1, $ClassCategory2);
489
490
                                    if ($this->BaseInfo->isOptionProductDeliveryFee()) {
491
                                        if (isset($row[$headerByKey['delivery_fee']]) && StringUtil::isNotBlank($row[$headerByKey['delivery_fee']])) {
492
                                            $deliveryFee = str_replace(',', '', $row[$headerByKey['delivery_fee']]);
493
                                            $errors = $this->validator->validate($deliveryFee, new GreaterThanOrEqual(['value' => 0]));
494
                                            if ($errors->count() === 0) {
495
                                                $ProductClass->setDeliveryFee($deliveryFee);
496
                                            } else {
497
                                                $message = trans('admin.common.csv_invalid_greater_than_zero', ['%line%' => $line, '%name%' => $headerByKey['delivery_fee']]);
498
                                                $this->addErrors($message);
499
                                            }
500
                                        }
501
                                    }
502
                                    $Product->addProductClass($ProductClass);
503
                                }
504
                            }