Добрый день/вечер/утро.
Мне необходимо сделать выборку из таблицы сотрудников, которые привязаны к определенной дате (ДД. ММ) и отправить почтовую рассылку другим сотрудникам, которые должны быть в курсе наступившей даты у сотрудников из первой выборке, с указанием ФИО этих сотрудников.
Работает все без укоризненно с одной деталью - отправка происходит только на первую найденную почту. Но адресов в действительности много.
Что я сделала не правильно и как это исправить?
List<String> listofChoosens;
List<String> listUsersAffected;
List<String> usertoSend;
List<String> fio;
public void sendMails(String day, String month) throws Exception {
listofChoosens = choosenOneRepository.getCelebrantIds(day, month);// 1 шаг. Получить список всех сотрудников с определенной датой.
System.out.println("Список первой выборки " + listofChoosens);
for (int i=0; i<listofChoosens.size(); i++) {
listUsersAffected = choosenOneRepository.select_affected_users(listofChoosens.get(i)); //2 Получить список связанных сотрудников с теми, кто отобран на шаге 1
System.out.println("Список второй выборки " + listUsersAffected);
}
for (int j=0; j<listUsersAffected.size(); j++){
usertoSend = contactsRepository.selects_email(listUsersAffected.get(j));// 3 получить почты сотрудников с шага 2
System.out.println("мыло " + usertoSend);
sendMail(usertoSend.get(j), "fio.get(j)");
}
for (int z=0; z<usertoSend.size(); z++){ // 4 получить имена сотрудников с шага 1
fio = userRepository.selects_fio(listUsersAffected.get(z));
sendMail(usertoSend.get(z), fio.get(z)); // 5 отправить рассылку на адреса, полученные на шаге 3, с указанием имен полученных на шаге 4
System.out.println("ФИО " + "fio");
}
}
public void sendMail(String mailAdress, String fio) throws Exception {
mailSender.run(mailAdress, fio);
}