Un case expresión solo puede devolver un único valor, por lo que necesita dos case expresiones Además, use un solo case expresión para cada uno en lugar de anidar dos dentro de otro:
SELECT * FROM Classes
GROUP BY
CASE
WHEN (1) THEN
Department_Code
WHEN (2) THEN
Department_Code
ELSE
Class_ID
END,
CASE
WHEN (2) THEN
Course_Code
ELSE
1
END