每年年底根据国务院办公厅节假日安排通知,组成以下表结构,生成表数据。
CREATE TABLE `法定节假日安排表` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`年度` int(11) NULL DEFAULT NULL,
`节日` varchar(255),
`开始日期` datetime(0) NULL DEFAULT NULL,
`结束日期` datetime(0) NULL DEFAULT NULL,
`调休上班1` datetime(0) NULL DEFAULT NULL,
`调休上班2` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
)
判断某个日期是否为工作日或节假日,以下采用伪代码
if([法定节假日安排表]的开始日期-结束日期之间)
return 节假日
else if ([法定节假日安排表]的调休上班1和调休上班2)
return 工作日
else if(星期序号在1-5)
return 工作日
else return 节假日