3 日や 5 週間 (フィールド タイプが 1 つだけの期間) などの期間を指定DateTime
すると、その期間の最も近い単位に丸めたい (つまり、「5 日」の 5 は無視する)。例:
例 1:
- 期間: 3日間。
- DateTime:水曜日 4:26 AM UTC (2013-05-15T04:26:00Z)
- 丸められた DateTime:水曜日の午前 0 時 (UTC) (2013-05-15T00:00:00Z)
例 2:
- 期間: 5週間。
- DateTime:水曜日 4:26 AM UTC (2013-05-15T04:26:00Z)
- 丸められた DateTime:月曜日の午前 0 時 (UTC) (2013-05-13T00:00:00Z)
私の最初のアイデアは、Period
のDurationFieldType getFieldTypes()
メソッドを使用し、 a 内の一致するすべてのフィールドDateTime
(最大フィールドの下) に対して、それらをゼロに設定することでした。DateTimeFieldType
ただし、 a から sを取得するDateTime
方法と、それらを a と比較する方法がわかりませんDurationFieldType
。
if else
大げさなアプローチはしないほうがいいと思います。