在多个字段上按对象分组Java 8

我将有一个Employee列表,其中将包含3个属性-departmentId,employeeId,employeeGroup。

我想按部门编号和员工编号进行分组。这个想法是发送员工所属部门的组名。以下是3种可能的情况:

案例1:同一部门,不同员工,不同组。

["Dept001", 100, "Admin"]
["Dept001", 101, "Contrator"]

案例2:同一部门,同一员工,不同组

["Dept001", 100, "Admin"]
["Dept001", 100, "Contrator"]

案例3:差异部门,差异员工,同一组。

["Dept001", 100, "Admin"]
["Dept002", 101, "Admin"]

我在下面尝试过:

Map<String, Set<Employee>> map = new TreeMap<>();

map = myList.stream().collect(Collectors.groupingBy(Employee::getDepartmentId, 
Collectors.toSet()));