我有一个场景,我必须更新记录记录,如果记录存在于数据库中,并且有效和过期日期分割逻辑。
例如,以下记录已在数据库中提供。
Item tax effectiveStartDate effectiveEndDate
1 5% 17-04-2017 31-12-2047
现在我想用给定的有效开始日期和税率来更新记录。
例如,我已经给出了两个税率6%的日期,然后我需要更新记录(如果它存在)。以下是输入:
effective start date: 17-04-2017;
effective end date: 31-12-2047`;
item : 1
tax : 6 %
现在记录已经存在,现在我想要的是,我必须调整生效日期和到期日期,20-05-2017和31-12-2019。输出应该如下:
Item tax effectiveStartDate effectiveEndDate
1 5% 17-04-2017 19-05-2017
1 6% 20-05-2017 31-12-2047
如果我再给出一些其他日期,应该像上面那样进行调整。在我的POC中,我正在使用带有我正在使用的JDBC模板的spring MVC。有人可以帮我解释这个逻辑吗?
答案 0 :(得分:1)
据我所知,如果您获得第1项的其他税值(10%f.e。),则必须更新数据库中的所有条目,不是吗?
如果这是问题所在,请尝试将所有这些内容放入List并执行以下操作:
//get all from DB
for(YourObject obj : List){
if(obj.effectiveFinalDate<newObject.effectiveStartDate){
obj.effectiveFinalDate = newObject.effectiveStartDate;
}
if(obj.effectiveStartDate>newObject.effectiveFinalDate){
obj.effectiveStartDate = newObject.effectiveFinalDate;
}
}
//persist all
我完全不确定你想要什么,但我猜它会与此相似
编辑:如果您想将日期设置为或多或少,请查看文档,这取决于您使用的对象作为日期