实体也可以做加减?
业务:一笔订单,有种商品,且该笔订单已发货。如果顾客不满意,可退货。而且业务上允许对一笔订单进行多次退货。假设该订单有十种商品,每种数量为“1”,那么就可以退十次。
数据库设计:销售订单和退货订单存一起,退货订单有一字段指向原订单。
如果顾客要退货,原订单的行项目要跟它已经产生的退货单的行项目进行"减"操作。才能知道此时还有哪些商品可退。
“订单”是个实体,不是“值对象”。但好像有这种要求:
可退货行项目 = 原单行项目 - 所以已退货行项目
[该贴被admin于2009-07-21 16:21修改过]