面向ERP需求的Grails域类设计

面向ERP需求的Grails域类设计,grails,Grails,我有两个域类订单和库存。出售股票时,我在子表StockOrder中创建一个条目,其中包含有关订单(订单id)、股票(库存id)和noOfStockSold的信息 在我目前的设计中,我将库存订单编码在库存表附近。你可以在下面看到 Class Stock { String stockName BigDecimal quantity List stockOrderList static hasMany = [stockOrderList: StockOrder] }

我有两个域类订单和库存。出售股票时,我在子表StockOrder中创建一个条目,其中包含有关订单(订单id)、股票(库存id)和noOfStockSold的信息

在我目前的设计中,我将库存订单编码在库存表附近。你可以在下面看到

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]
}
  • 从ERP的角度来看,我做得对吗。如何将订单与已售出的股票联系起来
  • 如果我也通过静态belongsTo=[Stock,Order]将StockOrder与Order联系起来,可以吗
  • 是否有更好的方法或任何改进

  • 首先,我将阅读以下内容:


    基本上,您可以使用
    belongsTo
    hasMany
    来描述双向关系。这允许您在需要时级联删除对象。我可以想象,在ERP系统中,您不需要级联功能,因为如果您删除
    库存
    ,您可能不想删除所有相关的
    库存订单
    。我可能会保留关系中的
    有许多方面,并删除
    以下部分,因为您已经将
    股票订单
    股票
    关联,并且
    订单
    同意您的意见并提出了更改建议。