Ticket #581 (closed 改善提案: 修正済)

Opened 11 years ago

Last modified 10 years ago

price02 の入力必須を徹底

Reported by: Seasoft Owned by: Seasoft
Priority: Milestone: EC-CUBE2.11.0
Component: 管理画面 Version: 2.5-dev
Keywords: Cc:
修正済み:

Description (last modified by Seasoft) (diff)

price02 は管理機能「商品管理 - 商品登録」で入力必須となっているが、DB 上は NULL 可となっている。DB 制約として、入力必須とする。

これにより、冗長な処理を簡素化できる。

SC_Helper_DB#sfTotalCart

                // 価格の登録
                if ($arrData['price02'] != "") {
                    $objCartSess->setProductValue($arrCart['id'], 'price', $arrData['price02']);
                    $objPage->arrProductsClass[$cnt]['uniq_price'] = $arrData['price02'];
                } else {
                    $objCartSess->setProductValue($arrCart['id'], 'price', $arrData['price01']);
                    $objPage->arrProductsClass[$cnt]['uniq_price'] = $arrData['price01'];
                }

cart/index.tpl

                        <!--{if $arrProductsClass[cnt].price02 != ""}-->
                            <!--{$arrProductsClass[cnt].price02|sfPreTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円
                        <!--{else}-->
                            <!--{$arrProductsClass[cnt].price01|sfPreTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円
                        <!--{/if}-->

Change History

comment:1 Changed 11 years ago by Seasoft

別の方向性として、price01 を必須として、price02 を任意とする方法もありますが、当初記載のロジックの方が簡素な実装になると思い、そのように提案します。

賛否や意見などについて、コメントいただけると幸いです。

comment:2 Changed 11 years ago by Seasoft

  • Description modified (diff)

テンプレートにも冗長な部分を見つけたので説明に追記します。

comment:3 Changed 11 years ago by Seasoft

  • Milestone set to EC-CUBE2.5.0

comment:4 Changed 10 years ago by Seasoft

  • Owner changed from somebody to Seasoft
  • Status changed from new to assigned
  • Version changed from コミュニティ (eccube-comu) to 2.5-dev
  • Milestone changed from EC-CUBE2.5.0beta to EC-CUBE2.5.0

comment:5 Changed 10 years ago by Seasoft

  • Status changed from assigned to closed
  • Resolution set to 修正済
Note: See TracTickets for help on using tickets.