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

Opened 10 years ago

Last modified 10 years ago

商品種別によってカートを分ける

Reported by: nanasess Owned by: nanasess
Priority: Milestone: EC-CUBE2.11.0
Component: フロント Version: 2.5-dev
Keywords: Cc:
修正済み:

Description (last modified by nanasess) (diff)

ダウンロード商品や, 定期購入など, 購入フローが変わる商品に対応しやすくするため, カートの中身を商品種別ごとに分割する

また, 配送/支払関連のテーブルを以下のように変更する

  • 配送業者情報(dtb_deliv) は, 商品種別(mtb_product_type) に紐づく
  • 支払方法情報(dtb_payment) は, 商品規格(dtb_products_class) に紐づく

Attachments

受注関連.pdf Download (136.8 KB) - added by nanasess 10 years ago.
受注関連のER図を追加

Change History

comment:1 Changed 10 years ago by nanasess

  • Owner changed from somebody to nanasess
  • Status changed from new to assigned

comment:2 follow-ups: ↓ 3 ↓ 5 Changed 10 years ago by nanasess

r18830 で暫定対応しました.

  • dtb_products_class.down ではなく, dtb_products.product_type を作成し, 使用する
  • SC_Helper_DB::sfTotalCart() など, 内部で Page クラスのフィールドを操作している関数をリファクタリングし, 扱いやすくする
  • カート確認画面や購入確認画面の表示を修正

など, 要対応です.

comment:3 in reply to: ↑ 2 ; follow-up: ↓ 4 Changed 10 years ago by Seasoft

nanasess への返信

r18830 で暫定対応しました.

初期サンプルの商品をカートインすると、システムエラーで落ちるようです。

FATAL Error: /home/eccube/ec25d/data/class/pages/cart/LC_Page_Cart.php:144 Call to undefined method SC_CartSession::getKeys()

comment:4 in reply to: ↑ 3 Changed 10 years ago by nanasess

Seasoft への返信

初期サンプルの商品をカートインすると、システムエラーで落ちるようです。

すみません. マージ漏れがありましたので, r18833 で修正しました.

comment:5 in reply to: ↑ 2 ; follow-ups: ↓ 6 ↓ 7 ↓ 8 Changed 10 years ago by Seasoft

nanasess への返信

  • 本件の影響か確信は無いのですが、カート画面で数量が表示・変更できないようです。(r18836 で動作確認)
  • r18836 に本件絡みの懸念がある、実装誤り(?)をコメントに記述しました。

comment:6 in reply to: ↑ 5 Changed 10 years ago by Seasoft

加えまして、「現在のカゴの中」ブロックでは、数量が増加される (金額は増加しない) 現象を伴うようです。

comment:7 in reply to: ↑ 5 Changed 10 years ago by nanasess

Seasoft への返信

ありがとうございます. SC_Helper_DB::sfTotalCart() が VIEW に依存しまくっているので改修中です.

いただいた不具合も, まとめて修正できると思います.

comment:8 in reply to: ↑ 5 Changed 10 years ago by nanasess

Seasoft への返信

  • 本件の影響か確信は無いのですが、カート画面で数量が表示・変更できないようです。(r18836 で動作確認)
  • r18836 に本件絡みの懸念がある、実装誤り(?)をコメントに記述しました。

r18852 で対応しました.

SC_Helper_DB::sfTotalCart() などの処理を SC_CartSession で実装し, VIEW への依存を, いくらか解消しました.

また, SC_CartSession::getCartList() で商品情報も取得するようにしました. これにより, SC_Helper_DB::chkCartDown() などは, 再度商品DBへアクセスすることなく実装可能と思われます.

SC_Helper_DB::sfTotalConfirm() も, カート内集計ですので, SC_CartSession への移動を検討中です.

comment:9 Changed 10 years ago by nanasess

r18882 で, 「実商品・ダウンロード」を「商品種別」に変更しました

comment:10 Changed 10 years ago by nanasess

r18916 AMUAMU様

Changed 10 years ago by nanasess

受注関連のER図を追加

comment:11 Changed 10 years ago by nanasess

  • Description modified (diff)

r19671 で配送/支払関連のリレーションを修正しました. プログラムについては追って対応します.

attachment:受注関連.pdf Download に変更後の ER図をアップしました.

開発コミュ関連スレッド  http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=6489&forum=5&post_id=33949#forumpost33949

comment:12 Changed 10 years ago by nanasess

r19686

  • dtb_delivfee.fee_id を deliv_id ごとの連番に変更
  • 配送業者設定で商品種別を選択できるよう修正

comment:13 Changed 10 years ago by nanasess

r19688

  • 商品種別に応じて配送方法を取得するよう変更
  • 商品規格に応じて支払方法を取得するよう変更

comment:14 Changed 10 years ago by nanasess

r19695

  • 商品登録時に支払方法を設定するよう修正

comment:15 follow-up: ↓ 16 Changed 10 years ago by Seasoft

フロント機能 PCサイト「現在のカゴの中」画面で foreach で複数回ループすると、form の name, id が重複して JavaScript? が正常に動作しません。

comment:16 in reply to: ↑ 15 ; follow-up: ↓ 18 Changed 10 years ago by nanasess

Seasoft への返信

フロント機能 PCサイト「現在のカゴの中」画面で foreach で複数回ループすると、form の name, id が重複して JavaScript? が正常に動作しません。

なかなか対応できなくてすみません. 認識しておりますので, 2, 3 日中に修正します.

comment:17 Changed 10 years ago by yomoro

r19789 にてスマートフォン側のカートページのデザイン修正を行いました。

comment:18 in reply to: ↑ 16 Changed 10 years ago by nanasess

nanasess への返信

フロント機能 PCサイト「現在のカゴの中」画面で foreach で複数回ループすると、form の name, id が重複して JavaScript? が正常に動作しません。

なかなか対応できなくてすみません. 認識しておりますので, 2, 3 日中に修正します.

r19815 で修正しました

comment:19 Changed 10 years ago by yomoro

  • Version changed from 2.4.4 to 2.5-dev

nanasess様!有り難う御座います!スマートフォン側でも無事に商品毎のカートのきり分けが完了しました! 引き続き何卒宜しくお願い申し上げます。

comment:20 Changed 10 years ago by yomoro

上記 r19816 にて対応

comment:21 Changed 10 years ago by nanasess

  • Status changed from assigned to closed
  • Resolution set to 修正済

配送/支払関連の仕様変更については, 別のチケットを発行する方向で, こちらは一旦 close します

Note: See TracTickets for help on using tickets.