Monday, 20 May 2013

ios TimeSlot Logic

ios TimeSlot Logic

I can't figure this one out i need to block out time periods during a day for a time entry application. yintime is the new time entry and youttime is the out time. So a,b,c,d,e,f are all checks to see if the in out time violates any other time entry.
for each previous time entry
BOOL a = false;
    BOOL b = false;
    BOOL c = false;
    BOOL d = false;
    BOOL e = false;
    BOOL f = false;

    //b
    if ([[yintime earlierDate:x.indate] isEqualToDate:x.indate])
    {
        a = true;
    }
    if ([[youttime laterDate:x.outdate] isEqualToDate:x.outdate] || [youttime isEqualToDate:x.outdate])
    {
        b = true;
    }
    if ([[youttime laterDate:x.indate] isEqualToDate:x.indate])
    {
        c = true;
    }
    if ([[yintime earlierDate:x.indate] isEqualToDate:yintime] || [youttime isEqualToDate:x.indate])
    {
        d = true;
    }
    if ([[yintime laterDate:x.indate] isEqualToDate:x.indate])
    {
        e = true;
    }
    if ([[youttime earlierDate:x.outdate] isEqualToDate:youttime])
    {
        f = true;
    }

    if(a && b)
    {
        isInvalid = true;
    }else if(c && d)
    {
        isInvalid = true;
    }else if(e && f)
    {
        isInvalid = true;
    }

No comments:

Post a Comment