问题描述:
每周事件设置(weekly)有问题例如:用户选择下周一(weekly)23:00-23:30保存产生一个event ,当再次另一事件下周一(weekly)23:40-00:30,机器显示与之前设置的节目冲突的问题
修改方法:
修改计算每周事件的事件的算法,如下:
static MS_BOOL _BK_GetWeeklyMin(MS_S8 s8SWeekDay1, MS_S8 s8EWeekDay1, MS_S8 s8SWeekDay2, MS_S8 s8EWeekDay2)
{
if (s8SWeekDay1 != s8EWeekDay1)
{
if (s8SWeekDay2 != s8EWeekDay2)
{
if (s8SWeekDay1 != s8SWeekDay2)
{
if (s8SWeekDay1 == s8EWeekDay2)
{
s_u16EMin2 += 24*60;
s_u16SMin1 += 24*60;
s_u16EMin1 += 2*24*60;
return TRUE;
}
if (s8EWeekDay1 == s8SWeekDay2)
{
s_u16SMin2 +=24*60;
s_u16EMin1 +=24*60;
s_u16EMin2 +=2*24*60;
return TRUE;
}
return FALSE;
}
return TRUE;
}
if (s8SWeekDay1 == s8SWeekDay2)
{
s_u16EMin1 += 24 * 60;
return TRUE;
}
if (s8EWeekDay1 == s8SWeekDay2)
{
s_u16EMin1 +=24*60;
s_u16SMin2 +=24*60;;
s_u16EMin2 +=24*60;
return TRUE;
}
return FALSE;
}
if (s8SWeekDay2 != s8EWeekDay2)
{
if (s8SWeekDay1 == s8SWeekDay2)
{
s_u16EMin2 += 24 * 60;
return TRUE;
}
if (s8SWeekDay1 == s8EWeekDay2)
{
s_u16EMin2 += 24*60;
s_u16SMin1 +=24*60;
s_u16EMin1 +=24*60;
return TRUE;
}
return FALSE;
}
return s8SWeekDay1 == s8SWeekDay2;
}
|