需求背景

B端物流系统,有许多物流费用项,不同的费用项有不同的计费规则。
当产品涉及到费用计算,就会涉及到计算规则配置,以及规则的有效期(生效日期、失效日期)
关于生效日期、失效日期校验规则,总结如下:

新增

1.生效日期最早可选择的是当前系统日期+1,且默认为当前系统日期+1,支持编辑;失效日期默认为2099-12-31不可编辑。
这样设计的原因:

  • 生效日期默认为当前系统日期+1,为了方便用户,如果生效日期想从明天开始,不用再点开日期选择器去选择。
  • 生效日期最早可选择的日期是当前日期T+1,为什么不能是当前系统日期呢?如果是当前系统日期,如果业务是当天晚上进行设置的,那么当天设置该规则之前的订单,按照什么规则来算?是否要按照当前生效规则进行重算?
  • 失效日期默认为2099-12-31,这个日期是长期有效的日期,一是方便用户,不用选择截止日期;二是避免出现规则失效,订单费用要重算,或者规则日期范围断层的情况。

2.失效日期不能早于生效日期
3.同一条规则,日期范围不能重复。或者说,日期范围一致,同一个规则下,不能有不同的内容。
4.对于同一条规则,当设置新费率的有效期时,选择了起始日期之后,保存时,系统自动更新上一条旧费率的截止日期,旧费率的有效截止日期为新起始日期T-1。上一条旧费率的截止日期显示在日志明细页面。

编辑

1.编辑时,带出原有效期内容。
2.编辑时,生效日期不可编辑,只可改动失效日期。
生效日期不可编辑或许限制的有些死板。
3.限制生效日期不可选择早于当前系统日期。避免选择早于当前系统日期之后,历史订单重算的情况。