ドメインモデルでサマリー帳票を作成の補足

前回の話はサマリー帳票を取り扱うときにデータ指向の処理をどのように取り扱うかを目的に説明しました。このため、あまりモデルの導出がテクニカルでなく、最終のモデルがパッと発見的にでてきているようなストーリになってしまったので最終的なモデルをどのようにして導出するか補足しておきます。

まずは、ベース(コアモデル)のドメインモデルに在庫サマリーを単純に追加。



前回はこの在庫サマリーをDataMapperでインスタンス化するシナリオだったが、ここでは先にロールクラスを導入して在庫サマリーが直接コアモデルに依存しないようにします。ロールクラスはエンティティごとに機械的に挿入して在庫サマリーから利用する機能を定義します。



あとは、このロールクラスがコアモデルのエンティティを参照するのではなく、集約した検索結果(商品_総在庫数・入庫予定_予定数・出庫予定_予定数)を参照するようにします。

なお、前回、在庫IN在庫サマリーとしていた点は、在庫をエンティティ扱いせずに商品エンティティ経由でアクセスするように想定し商品IN在庫サマリーを導入したため削除しています。