| 问题描述: 每周事件设置(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;
 }
 
 |