如图为场景需求:如何实现每次新增时,新增数据中的入住年月(不能为空)和腾退年月(可为空)的时间段不能与表格中其他纪录的时间段有交叉和重复?(表格中的数据存放在一个数组中)
这个其实你还可以进一步细化条件(约束),特别是隐含的。比如:
约定新增的起始日期为startDate,腾退日期为endDate,endDate>startDate
chkDate
,其以子项chkDate[i][0]
排序,升序排列的数组,初始状态是chkDate=[[cDate,]]
,表示从当前日期开始的有效时间(结束时间未定的),如果chkDate=[]
表明没有有效时间段段可能了。chkDate!=[]
,就轮训chkDate,在此基础上确定一个startDate,注意这个变量需要在chkDate中看。