export const isCrossWithOther = (props:isCrossWithOtherProps) => (v: any, cb:Function) => {
const{ required=true, index, form, filed, type } = props
if (!v?.startTime && !v?.endTime) {
if (required) {
return cb(`必填`);
} else {
cb(null)
}
}
if(v?.startTime && v?.endTime && filed){
const filedValues = form?.getFieldValue(filed) as {date?: DateItem}[]
const startCurrent = time2Minutes(v?.startTime,type)
const endCurrent = time2Minutes(v?.endTime,type)
filedValues.forEach((arrItem,idx) => {
if(arrItem?.date?.startTime && arrItem?.date?.endTime && idx !== index){
const start = time2Minutes(arrItem?.date?.startTime,type)
const end = time2Minutes(arrItem?.date?.endTime,type)
if(Math.max(start, startCurrent) <= Math.min(end, endCurrent)){
cb(`所选时间段存在冲突,请检查`);
}
}
})
}
}