2010-04-05 119 views
0

我们能够有一个有效日期和失效日期的对象。(例。我想保持一个商品的价格一段时间)框架来管理日期(生效日期和失效日期)

业务规则 -
生效日期始终是有效日期(日期戳),但过期日期可以为空,以指示对象始终处于活动状态。此外,生效日期和到期日期可以设置为一些有效的日期。

是否有任何框架管理对象,使对象是一致的,即没有有效期限的重叠?

Ex。

class XBOX{ 
double price; 
    Date effectiveDate; 
    Date expiryDate; 
} 

XBOX x1 = new XBOX(400$, '2007-01-01','2008-12-31'); 
XBOX x2 = new XBOX(200$, '2009-01-01',null); 

假设我们得到一个新的速度从“2010-01-01”和新的XBOX对象必须创建(坚持)。

是否有框架/模式可以执行以下操作,以便XBOX一致。

  1. x2.setExpiryDate('2009-12-31')
  2. ​​

在此先感谢。

回答

0

我不知道任何框架,将为您处理这个。如果您自己构建它,我建议您只存储每个产品的价格和开始日期。所以,你上面的例子,我会保存:

 
price start_date 
400 2007-01-01 
200 2009-01,01 

然后,你将不必担心重叠或下叠datespans由于数据结构不支持它。

+0

我同意模型,但你也应该说查询会更困难。 – 2012-12-07 10:21:25

+0

@Pierre de LESPINAY,你的意思是更有趣,对吗? – 2012-12-07 16:03:26

+0

好吧,让我们说:) – 2012-12-07 16:21:09