Buenas tardes Beto, creo que lo único que deberías cambiar es esto
Es decir, si tiene todos los registros entonces no se considera como falta, si tiene null en alguno de los registros (entradas o salidas) se suma medio día.
Si hay alguna consideración adicional que tengas que hacer sería cuestión de que anides otro case
Saludos
Leo.