【问题标题】:Frameworks to manage dates (effective date and expiry dates)管理日期的框架(生效日期和到期日期)
【发布时间】:2010-04-05 10:41:42
【问题描述】:

我们有一个对象,它可以有一个生效日期和到期日期。(例如,我想在一段时间内维持商品的价格)

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

是否有任何框架可以管理对象以使对象保持一致,即有效期没有重叠?

例如

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. XBOX x3 = new XBOX(150$, '2010-01-01',null );

提前致谢。

【问题讨论】:

    标签: date frameworks


    【解决方案1】:

    我不知道有什么框架可以为你处理这个问题。如果您自己构建它,我建议您只存储每个产品的价格和开始日期列表。因此,对于您上面的示例,我将存储:

    价格开始日期 400 2007-01-01 200 2009-01,01

    那么您就不必担心日期跨度重叠或重叠,因为数据结构不支持它。

    【讨论】:

    • 我同意这个模型,但你也应该说查询会更困难。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    相关资源
    最近更新 更多