У меня есть объект сотрудника, определяемый следующим образом:
Employee class contains 3 attributes :
String employeID
//payCodeType can only be T/Y/N/W/M/F
String payCodeType
String serial
Список содержит повторяющиеся значения следующим образом:
employeID - emp01
payCodeType - M
serial 1
employeID - emp01
payCodeType - M
serial 2
employeID - emp01
payCodeType - F
serial 3
employeID - emp02
payCodeType - F
serial 1
employeID - emp02
payCodeType - F
serial 2
employeID - emp02
payCodeType - F
serial 3
employeID - emp02
payCodeType - F
serial 4
employeID - emp02
payCodeType - F
serial 5
employeID - emp03
payCodeType - T
serial 3
employeID - emp04
payCodeType - T
serial 1
employeID - emp04
payCodeType - T
serial 2
employeID - emp04
payCodeType - T
serial 3
employeID - emp05
payCodeType - F
serial 1
employeID - emp05
payCodeType - F
serial 1
...
В основном мне нужно отобразить сообщение об ошибке при наличии дублирующихся данных и действует следующее правило:
- Ни один из кодов типа оплаты не может иметь более одного вхождения сотрудника с одинаковым идентификатором employee, payCodeType и серийным номером
- Один и тот жеID employeeID не может иметь более один payCodeType - M - в приведенном выше примере emp01 неверно, он имеет 2
- Один и тот же employeeID не может иметь более 4 вхождений для payCodeType -F с другим серийным идентификатором - в приведенном выше примере emp02 он имеет 5
- Один и тот же EmployeeID не может иметь более 2 payCodeType - T с другим серийным идентификатором - в приведенном выше примере emp04 имеет 3
Любая идея, как я могу добиться этого в Java 8, пожалуйста?