检查日期是否重叠
Check that the dates are not overlapping
检查日期是否重叠。
我正在为员工休假管理创建一个网站,其中一名员工想要申请休假并且休假不能重叠。
编程语言:laravel 6、jQuery
(StartA <= EndB) 和 (EndA >= StartB)
证明:
让 ConditionA 表示 DateRange A 完全在 DateRange B 之后
_ |---- 日期范围 A ------|
|---日期范围B ------| _
(如果 StartA > EndB,则为真)
设ConditionB表示DateRange A完全在DateRange B之前
|---- 日期范围 A ------ | _
_ |---日期范围B -----|
(如果 EndA < StartB 则为真)
如果 A 和 B 都不为真则存在重叠 -
(如果一个范围既不完全在另一个范围之后,
也不完全在另一个之前,那么它们必须重叠。)
现在 De Morgan's laws 之一说:
不是(A 或 B)<=> 不是 A 也不是 B
转换为:(StartA <= EndB) 和 (EndA >= StartB)
检查日期是否重叠。 我正在为员工休假管理创建一个网站,其中一名员工想要申请休假并且休假不能重叠。 编程语言:laravel 6、jQuery
(StartA <= EndB) 和 (EndA >= StartB)
证明: 让 ConditionA 表示 DateRange A 完全在 DateRange B 之后 _ |---- 日期范围 A ------| |---日期范围B ------| _ (如果 StartA > EndB,则为真)
设ConditionB表示DateRange A完全在DateRange B之前 |---- 日期范围 A ------ | _ _ |---日期范围B -----| (如果 EndA < StartB 则为真)
如果 A 和 B 都不为真则存在重叠 - (如果一个范围既不完全在另一个范围之后, 也不完全在另一个之前,那么它们必须重叠。)
现在 De Morgan's laws 之一说:
不是(A 或 B)<=> 不是 A 也不是 B
转换为:(StartA <= EndB) 和 (EndA >= StartB)