バージョン選択

フォーラム

メニュー

オンライン状況

54 人のユーザが現在オンラインです。 (40 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 54
もっと...

サイト内検索

質問 > 管理機能 > 納品書のカスタマイズ

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yu1124
投稿日時: 2023/9/10 0:18
対応状況: 解決済
半人前
登録日: 2022/8/3
居住地:
投稿: 17
納品書のカスタマイズ
▼テンプレート
[EC-CUBE] ECCUBE 4.1
[レンタルサーバ]
[現象]
納品書の項目を追加したいので
下記ファイルを編集したいのですが、
こちらはコアファイルを編集するしかないでしょうか。

/src/Eccube/Service/OrderPdfService.php

Customizeフォルダに入れて編集する方法があれば
教えてください。

[試したこと]

/app/Customize/Resource/config/services.yaml

下記コード追加

services:
  Customize\Service\OrderPdfService:
    public: false
    autowire: true
    decorates: Eccube\Service\OrderPdfService


/app/Customize/Service/OrderPdfService

下記コード追加 (登録番号を追加しました。)

<?php

/*
 * This file is part of EC-CUBE
 *
 * Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
 *
 * http://www.ec-cube.co.jp/
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Customize\Service;

class OrderPdfService extends \Eccube\Service\OrderPdfService
{
	/**
     * PDFに店舗情報を設定する
     * ショップ名、ロゴ画像以外はdtb_helpに登録されたデータを使用する.
     */
    protected function renderShopData()
    {
        // 基準座標を設定する
        $this->setBasePosition();

        // ショップ名
        $this->lfText(125, 60, $this->baseInfoRepository->getShopName(), 8, 'B');

        // 都道府県+所在地
        $text = $this->baseInfoRepository->getPref().$this->baseInfoRepository->getAddr01();
        $this->lfText(125, 65, $text, 8);
        $this->lfText(125, 69, $this->baseInfoRepository->getAddr02(), 8);

        // 電話番号
        $text = 'TEL: '.$this->baseInfoRepository->getPhoneNumber();
        $this->lfText(125, 72, $text, 8); //TEL・FAX

        // メールアドレス
        if (strlen($this->baseInfoRepository->getEmail01()) > 0) {
            $text = 'Email: '.$this->baseInfoRepository->getEmail01();
            $this->lfText(125, 75, $text, 8); // Email
        }
		
		// 事業者登録番号
		$text = '登録番号: '.$this->baseInfoRepository->getbangou();
		$this->lfText(125, 78, $text, 8);

        // user_dataにlogo.pngが配置されている場合は優先的に読み込む
        $logoFile = $this->eccubeConfig->get('eccube_html_dir').'/user_data/assets/pdf/logo.png';

        if (!file_exists($logoFile)) {
            $logoFile = $this->eccubeConfig->get('eccube_html_admin_dir').'/assets/pdf/logo.png';
        }

        $this->Image($logoFile, 124, 46, 40);
    }
   
}


エラー内容

Notice: Undefined property: Customize\Service\OrderPdfService::$eccubeConfig


eccubeConfigを使用している部分を消せば治りましたが
そうすると、ロゴが読み込めなくなってしまいました。



yu1124
投稿日時: 2023/9/11 9:47
対応状況: −−−
半人前
登録日: 2022/8/3
居住地:
投稿: 17
Re: 納品書のカスタマイズ
自己解決しました。

/app/Customize/Service/OrderPdfService

<?php

/*
 * This file is part of EC-CUBE
 *
 * Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
 *
 * http://www.ec-cube.co.jp/
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Customize\Service;

class OrderPdfService extends \Eccube\Service\OrderPdfService
{
	
    protected function renderShopData()
    {
     
		// 事業者登録番号
		$text = '登録番号: '.$this->baseInfoRepository->getbangou();
		$this->lfText(125, 90, $text, 8);
		
		return parent::renderShopData();

    }

}
KAJI
投稿日時: 2023/9/11 16:01
対応状況: −−−
一人前
登録日: 2008/1/24
居住地:
投稿: 121
Re: 納品書のカスタマイズ
イーシーキューブの梶原です。

自己解決されたとのこと、良かったです。

また、解決された内容を記載していただいてる点、コミュニティの他の方々の参考になりますのでとてもありがたいです。

引き続き、よろしくお願いします!
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は93,700名です
総投稿数は111,076件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2318
5
umebius
2085
6
yuh
1857
7
h_tanaka
1756
8
red
1574
9
mcontact
1466
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.