评估2个日期之间的差异,以实现转换

时间:2013-07-08 11:10:04

标签: jira

是否可以评估工作流表单上指定日期与系统日期之间的持续时间?我想做什么,为了显示(如果可能的话)如果自上述指定日期起1天发生短消息,禁止将状态转换为已关闭重新开启......

非常感谢,

克里斯托夫

3 个答案:

答案 0 :(得分:0)

我认为Script Runner有一个验证器可以做这样的事情,但我找不到它。然后你可以用Script Runner编写一个post函数。否则它会回到创建自定义验证器,如我的书Practical JIRA Plugins(O'Reilly)中所述

答案 1 :(得分:0)

您还可以使用ScriptRunner plugin以及重新打开转换的验证程序部分中的以下脚本:

Date now = new Date()
Date cfDate = new Date(cfValues['YourCustomField'].getTime())
new Date(now.getYear(), now.getMonth(), now.getDate()).compareTo(cfDate) <= 0

YourCustomField替换为自定义字段的名称。这将确保转换将检查当前日期是否超出自定义字段中设置的日期,如果是,则阻止它。

答案 2 :(得分:0)

首先,谢谢你的回答。
它可以在日期相似时允许转换,但我的目的是由我负责人修改的。如果日期相似或者它们之间的持续时间仅为1天或更短,他希望允许过渡。

示例:

系统日期为09/07/2013(巴黎)

我的日期(年/月/年格式)转换允许为什么
07/07/2013我的日期是系统日期之前的日期

08/07/2013我的日期是系统日期之前的日期

09/07/2013是的,我的日期和系统日期等于

10/07/2013是的,只有1天发生在2个日期之间

11/07/2013 2个日期之间不发生2天

这是我为此编写的代码,但它不起作用(可能是Java语法错误?):

现在日期=新日期()
日期cfDate =新日期(cfValues ['Datedeclôtureéelledela demande']。getTime())
new Boolean(((now.getTime() - cfDate)/ 86400000)&lt; = 1)&amp;&amp; (now.getTime()&gt; = cfDate))

对不起我的英语。我是法国人,我努力提高自己的英语水平。

非常感谢。