@Override
 public void deleteNode(int noteId) throws ServiceEntityNotFoundException {
   try {
     noteDao.deleteNote(noteId);
   } catch (DaoEntityNotFoundException e) {
     throw new ServiceEntityNotFoundException(e);
   }
 }
 @Override
 public void saveNote(NoteDto noteDto, int laboratoryId)
     throws ServiceEntityAlreadyExistsException {
   Note note = notePopulator.populate(noteDto, laboratoryId);
   try {
     noteDao.saveNote(note);
   } catch (DaoEntityAlreadyExistsException e) {
     throw new ServiceEntityAlreadyExistsException(e);
   }
 }
 @Override
 public void deleteLaboratory(int id) throws ServiceEntityNotFoundException {
   try {
     gradeDao.deleteGradesByLaboratory(id);
     attendanceDao.deleteAttendancesByLaboratory(id);
     documentDao.deleteDocumentsByLaboratory(id);
     laboratoryDao.deleteLaboratoryById(id);
     noteDao.deleteNotesByLaboratory(id);
   } catch (DaoEntityNotFoundException e) {
     LOGGER.debug("DaoEntityNotFoundException");
     throw new ServiceEntityNotFoundException(e);
   }
 }
  @Override
  public List<NoteDto> getNotesByLaboratory(int laboratoryId) {
    List<Note> notes = noteDao.getNotesByLaboratory(laboratoryId);

    return modelMapper.map(notes, new TypeToken<List<NoteDto>>() {}.getType());
  }