あるECサイトでは、自前で在庫管理している商品もあれば、提携先の代理店を担っているものもあります。 注文時に行う処理は提携先によってまちまちであり、これらをうまいこと扱いたいのです。
ECサイトでは、自前で在庫管理している商品もあれば、提携先の代理店を担っているものもある。 提携先の注文は、自テーブルにINSERTした後、提携先のAPIをコールし、注文処理を行います。
現在のビジネスルール
- 自社発送先の注文 Orderを保存して終了
- 提携先A社への注文 Orderを保存したら、注文内容をemailでA社に送る。
- 提携先B社への注文 Orderを保存したら、注文内容をB社のAPIを経由して送る。
今後、提携先が増減することも考慮に入れて、設計を考えてみましょう
発注処理を実装してください。
public interface OrderService {
public void save(Order order);
}