New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

カート周りの再設計 #2613

Closed
kiy0taka opened this Issue Nov 7, 2017 · 2 comments

Comments

Projects
None yet
4 participants
@kiy0taka
Contributor

kiy0taka commented Nov 7, 2017

概要(Overview)

同じ商品規格でも異なる明細にできるようにする

  • 標準の実装では現状通り、商品規格ごとに明細をわける
  • カスタマイズによって明細の分け方を変更できるようにする
    • 例) 商品規格 + 商品オプションで明細を分ける
  • 参考: #2486

支払方法が異なる商品をカートに入れられるようにする

例) 以下のような、配送方法A/B、商品A/Bがそれぞれあるとき

  • 配送方法
    • 配送方法A: 商品種別A/クレジットカード
    • 配送方法B: 商品種別A/代引き
  • 商品
    • 商品A: 商品種別A
    • 商品B: 商品種別B

現状は、商品Aをカートに先に入れると、商品Bをカートに入れることができない

  • 2系と同じように支払方法が異なる商品はカートを分けるようにする
  • 標準の実装では販売種別ごとにカートが分かれるようにする
    • 商品種別という名前は実態を表していないので、販売種別に名称を変更する
    • カスタマイズによってカートの分割方法を変更できるようにする
  • 販売種別/配送方法/支払方法で矛盾が生じる設定はできないようにする
    • 例) 同じ販売種別の配送方法は、必ず共通する支払方法を持つようにする
  • 受注/決済はカートごとに分けられる

実装案

次のような2つのインターフェイスを追加して、カスタマイズできるようにする

  • CartItemComparator
    • 明細の分け方を実装するインターフェイス
  • CartItemAllocator
    • カートの振り分け方法を実装するインターフェイス

シーケンス図

シーケンス図

@nanasess

This comment has been minimized.

Contributor

nanasess commented Mar 15, 2018

関連 #1348

@okazy

This comment has been minimized.

Contributor

okazy commented Oct 3, 2018

対応済み

@okazy okazy closed this Oct 3, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment