我最近在流口水中遇到了以下情况。我想知道如何为此进行规则设计。
Class Emp{
beingDate:Date
endDate:Date
}
根据给定日期确定员工年收入的规则:
- 对于 2003 年 3 月 5 日之前的日期,每小时费率为 3.5 美元,年乘数为 2100
- 对于 2003 年 3 月 5 日之后的日期,每小时费率每年都在变化(给定数据),年度乘数为 2092。
可能存在开始日期在 2003 年 3 月 5 日之前而结束日期在 2003 年 3 月 5 日之后的情况。
为这种情况设计规则的最佳方法是什么。
更新:为更清晰添加了一个例如如果对象是
empObj={
beginDate=10/8/2001,
endDate=5/10/2005
}
该规则应给出以下总和:
- 3.5 *(2001 年从 2001 年 10 月 8 日开始的天数)/(2001 年的总天数)* 2100
- 3.5 * 2100 ==> 这是 2002 年的
- 3.5 *(2003 年 3 月 5 日之前 2003 年的天数)/(2003 年的总天数)* 2100
- (2003 年每小时费率)*(2003 年 3 月 5 日之后的天数)/(2003 年的总天数)* 2092 ==> 注意年乘数的变化。
- (2004 小时费率) * 2092
- (2005 年小时费率)*(2005 年 5 月 10 日之前的 2005 年天数)/(2005 年总天数)* 2092