2012-01-31 5 views
0

私は2つのドメインクラスを注文と在庫に持っています。株式が売却されると、注文(order_id)と在庫(stock_id)とnoOfStockSoldに関する情報を含む子テーブルStockOrderにエントリを作成しています。GrailsドメインクラスのERP要件の設計

現在のデザインでは、StockOrderをStockテーブルの近くにコーディングしました。あなたはこれを以下で見ることができます。

Class Stock { 
    String stockName 
    BigDecimal quantity 
    List stockOrderList 
    static hasMany = [stockOrderList: StockOrder] 
} 

class StockOrder { 
    Stock stock 
    Order order 
    BigDecimal noOfStockSold 
    static belongsTo = [Stock] 
} 

class Order { 

    List saleLineItemList 
    static hasMany = [saleLineItemList: SaleLineitem] 
} 
  1. 私はERPのprespectiveからに正しく行っています。どのように売り注文を売りに関連付けるか?
  2. StockOrderをOrderに結び付けても静的なbelongsTo = [Stock、Order]を実行してもOKですか
  3. 改善や改良はありますか?

答えて

2

私はこれらを読むことから始めます:

http://grails.org/doc/2.0.x/ref/Domain%20Classes/belongsTo.html http://grails.org/doc/2.0.x/ref/Domain%20Classes/hasMany.html

基本的には双方向の関係を記述するためにbelongsTohasManyを使用しています。これにより、必要に応じてオブジェクトをカスケードすることができます。 Stockを削除した場合、関連するすべてのStockOrderを削除したくない可能性があるため、ERPシステムでカスケード機能を使用したくないと思います。既にStockOrderStockOrderに関連付けているので、私はおそらくhasManyの関係を維持してbelongsToを削除するでしょう。

+0

あなたと同意し、変更を加えました。 –

関連する問題