バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 納品書の単価を税込み表示にしたい

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ogn
投稿日時: 2022/5/27 14:16
対応状況: 解決済
半人前
登録日: 2021/12/22
居住地:
投稿: 12
Re: 納品書の単価を税込み表示にしたい
ご回答ありがとうございます。

「■試したこと2②」ではなく「■試したこと2①」のファイル(eccube\app\Customize\Service\OrderPdfService.php)にご回答頂いた内容を追記したところ上手くいきました。
ありがとうございました。
yt1969
投稿日時: 2022/5/27 11:39
対応状況: −−−
一人前
登録日: 2018/3/3
居住地:
投稿: 91
Re: 納品書の単価を税込み表示にしたい
コンストラクタのところでTaxRuleServiceクラスなんて知らねって落ちてるんなら
■試したこと2 ①(訂正 ご指摘の通り誤記でした)
use Eccube\Service\TaxRuleService;
追記じゃないですかね。
ogn
投稿日時: 2022/5/27 10:52
対応状況: −−−
半人前
登録日: 2021/12/22
居住地:
投稿: 12
納品書の単価を税込み表示にしたい
▼テンプレート
[EC-CUBE] 4.1.0
[PHP] 7.3.32
[データベース] PostgreSQL 14.2
[WEBサーバ] Apache
[ブラウザ] Google Chrome

納品書の単価を税抜きから税込みに変更するには
src\Eccube\Service\OrderPdfService.php の

// 税込金額(単価)
$arrOrder[$i][2] = $this->eccubeExtension->getPriceFilter($OrderItem->getPrice());

の部分を

$arrOrder[$i][2] = $this->eccubeExtension->getPriceFilter($OrderItem->getPriceIncTax());

に変更すれば実装できると思うのですが、できればコアファイルを触らずに、Customizeディレクトリで実装したいのですが、やり方をご教授願えませんでしょうか。


■試したこと1

src\Eccube\Service\OrderPdfService.php を
app\Customize\Service\OrderPdfService.php にコピーしファイルを以下の様に修正

<?php
// namespace Eccube\Service;
namespace Customize\Service;
...
class OrderPdfService extends TcpdfFpdi
{
    ...
    protected function renderOrderDetailData(Shipping $Shipping)
    {
        ...
        foreach ($Shipping->getOrderItems() as $OrderItem) {
            ...
            // 税込金額(単価)
            // $arrOrder[$i][2] = $this->eccubeExtension->getPriceFilter($OrderItem->getPrice());
      $arrOrder[$i][2] = $this->eccubeExtension->getPriceFilter($OrderItem->getPriceIncTax());
            ...
        }
        ...
    }
    ...
}



app\Customize\Resource\config\services.yaml を作成

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



■試したこと2

試したこと1の①と同じ


src\Eccube\Controller\Admin\Order\OrderController.php を
app\Customize\Controller\Admin\Order\OrderController.php にコピーしファイルを以下の様に修正

<?php
// namespace Eccube\Controller\Admin\Order;
namespace Customize\Controller\Admin\Order;
...
// use Eccube\Service\OrderPdfService;
use Customize\Service\OrderPdfService;
...



◆結果
どちらの方法でも納品書を出力する画面の「作成」を押すとシステムエラーになります。


当方、php・symfonyは不慣れな為、お力添えいただけると幸いです。
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2315
5
umebius
2085
6
yuh
1841
7
h_tanaka
1752
8
red
1574
9
mcontact
1460
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.