max(start1, start2)<min(end1, end2)就相交了
处理两个事件是否有重合的时间
for d in declined_list: # 循环 事件列表a
limit_start = d.start # 事件A开始时间戳
limit_end = d.end # 时间A结束时间戳
for n in normal_list: # 循环事件列表b
start = n.start # 事件B开始时间时间戳
end = n.end # 事件B结束时间时间戳
if min(end, limit_end) - max(start, limit_start) > 5 * 60:
d.updated_status = 'declined'
d.save()
break
网友评论